随着Web3技术的快速发展,传统的数据库在处理大规模可变数据时面临挑战。
原文作者:Sami Kassab
原文来源:Twitter@Old_Samster
编译:MarsBit,MK
数据库对于管理大量的可变数据至关重要,然而在Web3应用堆栈中,它们却被忽视。最近,出现了许多分布式数据库来满足存储结构化和动态数据的需求,填补了市场的空白。
文件存储网络设计用来存储不可变和无结构的数据,包括像文本、图片和视频文件这样的项目。它们并不适用于需要频繁更新的数据存储,而且缺乏内置的查询能力使得数据检索变得困难。
你可以在智能合约中将动态数据存储在链上,但由于扩展成本的原因,这并不可行。因为每一次新的写入或更新操作都会需要一个链上交易,燃气费用会迅速累积。
Web3的开发者们尝试利用智能合约和分布式存储网络来存储动态数据,但这些选项被证明是低效和不实用的,导致开发者们不得不依赖于中心化的解决方案。
这导致了分布式数据库的出现,它们解锁了数据的可组合性、互操作性和所有权。它们还允许Web3原生的访问控制,以便使用钱包、DIDs等定义特定数据库的读写权限,从而实现协作。
每个分布式数据库(ddb)项目都采用了不同的方法,接受了不同的权衡,并专注于特定的市场细分。
那么一些用例是什么呢:
在我看来,最突出的数据库是那些建立在Arweave上的。它们利用了Arweave的存储基础的共识范例,其中计算不在链上进行,这使得可以在Arweave上以智能合约的形式开发可扩展的分布式数据库。