#database #index #json #record #indexed #time #append

indexed_json

像数据库一样索引JSON文件

7个版本

0.3.1 2023年8月4日
0.2.3 2023年7月31日
0.1.1 2023年7月26日

#1915 in 数据结构

每月33次下载

MIT 许可证

62KB
1.5K SLoC

Indexed Json

使用此模块,您可以将serde可序列化类型存储在简单的换行符分隔的JSON格式文本文件中,并在这些记录中索引字段,以便快速查询和检索匹配的记录,这类似于关系数据库。

主要用例是记录重要书籍和记录,这些记录需要以简单且易于访问的格式存储,以便外部工具处理,并通过简单工具在线备份。将此类记录作为JSON文本写入简单文本文件几乎是您能获得的最高互操作性和容错性。同时,此库将为您记录中的任意字段集建立索引,因此可以对数据集执行查询,就像它在数据库中一样。索引可以自由删除,如果它损坏了,可以简单地重新构建,核心数据永远不会受到影响。

这并不是一个完整的数据库,因为它不支持有效地修改记录。如果您想更改现有记录,可以这样做,您甚至可以打开文件在emacs中编辑它。然而在这种情况下,整个索引将无效,并需要重建,这可能需要一些时间。因此,这应该被视为一个只写数据库,因为只有追加是有效实现的(对于我们的用例来说这完全合适)。

依赖关系

~10–18MB
~217K SLoC