4 ms·
ES is an eventually consistent data store meaning that it makes no guarantees about data availability when you put stuff in there. That alone should be a deal b
by vikingcaffiene 7y ago
ES is an eventually consistent data store meaning that it makes no guarantees about data availability when you put stuff in there. That alone should be a deal breaker for you.
If you use ES for what it's designed to be and make it a projection of your underlying durable data store, you can do things like rebuild your index or change your schema without fear of data loss.
Its a document store, not a database. MongoDB is too but they try to hide it by bolting on all the stuff traditional relational DB's have like ACID and transactions so you wont realize what a poor choice it is as a database when compared to say, Postgres.
- aprdm 7y agoThat's not entirely true, it has its guarantees and ways of work is just not the same as more traditional SQL dbs and that's ok for tons of applications.
- vikingcaffiene 7y agoAre you referring to the real time flag? My understanding is that that is per shard and if you try to pull from another shard that hasn't updated its index, you'd get stale data. Maybe you are referring to something else or I am wrong about that? It doesn't change the larger point that using ES as your primary database is not playing to its strengths. You're better served using a transactional data store and building your indexes from that.
- Thaxll 7y agoYou don't know what you're talking about, Mongo is as durable as PG.
- AYBABTME 7y agoGiven the history of both software, that is quite a bold rebuttal to make without providing any substance to back it.