My hope is that when you create a stream, other nodes unrelated to you can consume data from it, and possibly write to it in some way, but I haven’t quite understood Ceramic well enough to know how that works yet despite reading a fair bit of the documentation.
Any pointers/clarification much appreciated. Thanks!
Yes, this is one of the core values of using Ceramic/ComposeDB, is that data is shareable between nodes and applications. With composeDB, all data written belongs to a given data model. Other nodes can index the same data model and then be able to read and write data into that data model, and all nodes on the network that have that model indexed will be able to discover the data.
For individual streams (which correspond to singular JSON ModelInstanceDocuments that belong to a Model), each stream has a DID that is the controller - only the end user who controls that DID can write into that Stream, but they can do so using any node or application on the network.
When a new node indexes a model that has already been indexed in another node, will the content already created from that other node’s tables be synchronized into the new node’s tables?
Because I’ve been testing it, and only the new content that is created appears in the new node and the content before the new node indexes the model no, I don’t know if that takes a while or doesn’t happen automatically.
Currently only new data will be picked up by the indexer, but historical data sync is one of the major features that the team is working on right now. The plan is to have historical data sync ready before the mainnet launch of ComposeDB Beta next month.
That sound good! One question @avi@spencer. When a new document is added, eg a comment, with a relationship to another document, eg a post. creates a relationship where the comments appear in the comments field of the post document. Is there a way to break this relationship and unlink the comment given to a post? In other words it would be remove a comment from post
Yes, I am using that same example. I mean when creating a new comment it gets indexed into the comments field of a post given its StreamID, at this point is it possible to unlink a comment and not be indexed to the post it belonged to?
No this not currently supported. There may be more node-specific indexing primitives added over time to support such use-cases, but fundamentally the index acts as a cache to the data of the network.
Yes if the comment model has the post relation as optional then the relation could be removed by the author of the comment, but the use-case would be better served by completely removing the contents of the comment I think, as the comment is probably meaningless without the post relation?