Why I don't use SurrealDB, Fauna, Firebase or other databases like them

preview_player
Показать описание
In this video, I explain some of the reasons why I don't use Firebase and Fauna and probably won't use SurrealDB either when it launches. It's about pricing model, client access, and backup.
Рекомендации по теме
Комментарии
Автор

SurrealDB is an open source project. You are not paying for any read/write operations, just setting up a server with a database and authentication layer. Because of open source, you can change in it what ever you want!

mises
Автор

all of that concerns generalize to cloud services at large. I personally wouldn't use cloud services unless I need to - meaning, they provide some functionality I can't easily implement myself. For example, if you can't easily self host something similar, if the service provides very complex or proprietary functions, or if they're able to auto scale in ways that are too complex to bother with. People are way too eager these days to "cloud all the things" - a lot of the time, that means untestable code, extremely complex and low-value unit tests, tests that are coupled to live services, and so on. A lot of people don't seem to realize the kind of pain they're putting themselves through. Wasting several days setting up a mess of keys, so you can run a dev environment and a slow, messy, test suite (which often doesn't even prove much, if anything) has become all too normal and acceptable.

all that said, you didn't put me off from looking into SurrealDB. You can self host this. And you will most likely run some sort of DBMS, so that problem is almost universally present. You can run Surreal with an in-memory driver for integration tests, which is something that really appeals to me. In recent years, I've preferred Postgres, but I'm looking at Surreal as a possible future replacement, and it looks promising from what I've seen so far. 🙂

RasmusSchultz
Автор

It's a good reason for self hosting in general. If your backend was connecting to a foreign hosted database and you had a front end bug asking the backend to do the exact same thing you would have the same problem. There are a lot more chances of mitigation in such a setup but it is still a what if those mitigators don't come into play. What if I'm not caching or caching is broken. What if I didn't put in global rate limiting, or it broke somehow?

JasonMitchellofcompsci
Автор

love your videos! you always have opinions i learn from

irlshrek
Автор

Yep, same reason I don't use Firebase too. Plus I like having more control over the backend

zzzyyyxxx
Автор

What caught my attention is that I think the same way, but I'm having trouble choosing which bank to choose? to develop an initially small Saas, but how can every app grow? I even like mongoDB, CassandraDB what to choose?

alexon
Автор

Interesting point about backups. I was planning a project that would use SurrealDB and Storj for backups, but if SurrealDB doesn’t do backups, that’s gonna be interesting. That said, since you can tell SurrealDB which directory to put its data in, maybe you can store backups from that? 🤔

Holobrine
Автор

These are all good points. Do you have some favorites or contenders to be favorites you would suggest?

xorlop
Автор

personally i want something that is 1) row based cost 2) reloadable rather than attaching your credit card 3) no provision cost on idle 4) hard limiters for cost "not alerts" or better yet account based limiters for my users so i know who caused a huge calls 5) SQL based with capable nosql the db has to be opensource tech.

qrjftvx
Автор

SurrealDB Does not fit this category. Sure you can connect to the DB directly from the browser but you can also cannect from the backend and self host (the same) surrealdb. SurrealDB also can run on FoundationDB or TiKV, this way you can setup a continuous backup.

Sel
Автор

Have you heard about pocketbase ? I would love to have your opinion on it :)

yorgohoebeke
Автор

3 yrs ago. I maintained a backend and see that. Jesus Christ. i quit my job. the only thing helpful is FCM.

guidyouguy
Автор

appwrite running local on docker is awesome

drjones
Автор

Now move your scenario to AWS, and translate it into money. I think what happened to you was hazing, and lack of unit testing.

shido