-
Notifications
You must be signed in to change notification settings - Fork 44
How is this different from Dat ecosystem? #74
Comments
First, you need to compare IPFS vs Dat — as OrbitDB is built on top of IPFS via IPFS-log. There are a few discussions scattered around the web on the topic: datproject.org/faq#dat-vs For my use-cases - IPFS makes more sense because of the interoperability guarantees provided by libp2p as explained here. |
I am not really interested in that comparison, but addressing my question of how orbitdb for example is different from HyperDb will include some part of that comparison also. |
This is a good question! @haadcode, I suspect you might be able to help the most, here? |
I think @mistakia's answer is a good one as one first needs to consider the underlying storage and transport systems (IPFS vs. Dat) as that's more the defining factor for data formats, hash formats, transport protocols, storage APIs, etc. and those will have the biggest effect on "costs and benefits" and "when should one use the Dat toolkit, and when should something like orbit be used", I believe. I'm not best equipped to make a full comparison but, from OrbitDB's perspective, what IPFS has that (afaik) Dat doesn't is functionality (and concept) for storing "objects". That is, storing any data in addition to storing files. This is actually imho something many don't see at first due to the "FileSystem" in IPFS, but IPFS works as a general data storage and transport system and files are only one notion of data. As for hyperdb and OrbitDB: first, I'm big fan of the work @mafintosh is doing in the Dat/hyper* ecosystem! Not having looked throughly into hyperdb and based on a quick look around, I believe the biggest difference between the two is that OrbitDB has the concept of "Stores" enabling multiple data models (any, really) whereas hyperdb is focused to be a key-value database. I believe the underlying data structures are similar, an append-only log, but the semantics and implementation are prolly slightly different. Would love to hear more comparisons and comments and build the knowledge here as well as in the Dat community so users can make an educated decision! Perhaps @noffle @mafintosh and others can add more detail from hyperdb/dat perspective? 🙏 |
Likewise. The fact that one critically relies on CRDTs (which I am not very familiar with), while the other does not, would to my mind suggest that there have to be some pretty substantial differences in tradeoffs. |
@bedeho Closing this for now and I'd like to refer you to the new OrbitDB Field Manual, which aims to answer these sort of questions with the depth and breadth they deserve. If something there is unclear or if you have more questions, please open an issue! |
This is a bit of a different question than the Guide is currently able to answer - although we should probably include it in there! For now, reopening this as relevant to some of our users. |
Moving to Field Manual to discuss further |
The Dat project also has secure logs, key value stores and databases built on top of single and multi author append only logs, distributed over efficient p2p protocol that only does diffs.
The text was updated successfully, but these errors were encountered: