Orbit-DB 分布式前端数据库

 ✒️ @halomaster 📅 28 Jul 2022, 16:11 GMT⋮ 【前端开发】 

https://github.com/orbitdb/orbit-db orbit-db是一种分散式Web的点对点数据库,一种无服务器,分布式,对等P2P数据库。OrbitDB使用IPFS作为其数据存储,IPFS Pubsub使用IPFS自动同步数据库。它是一个最终一致的数据库,它使用CRDT进行无冲突的数据库合并,使OrbitDB成为分散式应用程序(dApps)和离线优先Web应用程序的绝佳选择。


[1] @halomaster • 28 Jul 2022, 16:13 GMT 
执行下面的命令可以启动Orbit-DB的Console ``` bash git clone https://github.com/orbitdb/orbit-db-control-center.git cd orbit-db-control-center/ npm i && npm start ```


[2] @halomaster • 29 Jul 2022, 00:26 GMT 
https://github.com/orbitdb/orbit-db/blob/main/GUIDE.md


[3] @halomaster • 29 Jul 2022, 00:27 GMT 
OrbitDB是一个对等数据库,这意味着每个对等点都有自己的特定数据库实例。在对等点之间自动复制数据库,从而在任何对等点更新时获得数据库的最新视图。也就是说,数据库被拉到客户端。 这意味着每个应用程序都包含他们正在使用的完整数据库。这反过来又改变了与客户端-服务器模型相比的数据建模,在客户端-服务器模型中,所有条目通常都有一个大数据库:在OrbitDB中,数据应该根据该数据的访问权限进行存储、“分区”或“分片”。例如,在类似Twitter的应用程序中,推文不会保存在数百万用户同时写入的全局“推文”数据库中,而是每个用户都有自己的推文数据库。为了跟踪用户,对等点会订阅用户的提要,即复制他们的提要数据库。 OrbitDB支持多种数据模型(请参阅下面的更多详细信息),因此开发人员有多种方式来构建数据。结合点对点范式,数据建模是构建可扩展的去中心化应用程序的重要因素。


[4] @halomaster • 29 Jul 2022, 00:33 GMT 
https://github.com/orbitdb/orbit-db-control-center 值得深入研究。


[5] @halomaster • 29 Jul 2022, 01:57 GMT 
主要的 `OrbitDB` 数据库类型: `日志`:具有可遍历历史记录的`不可变日志`。对于“最后N个”用例或作为消息队列很有用; `feed`:具有可遍历历史的`可变日志`。可以添加和删除条目。对于“购物车”类型的用例很有用,例如,作为博客消息或“推文”的流; `keyvalue`:键值数据库,例如您喜欢的键值数据库; `docs`:面向文档的数据库,其中可以通过特定键存储JSON格式的文档并建立索引。它对于建立搜索索引或控制文档和数据的版本很有用; `计数器`:一个有用的数据库,用于与日志/提要数据分开对事件进行计数。


[6] @halomaster • 31 Jul 2022, 09:43 GMT 
https://github.com/orbitdb/orbit-web


1 of 1 pages  6 replies