我正在编写一个小型独立 Lua 工具,它使用树中的几个键/值对作为数据存储。我的原型使用 Lua 表,它们非常适合我的任务。然而,表条目不断变化和增长。对我来说,这似乎是将所有数据存储在数据库中的一个很好的理由。
许多较小的工具依赖于 SQLite 数据库,但我认为如果要存储中小型 Lua 表,必须有更好的(键值)解决方案。我读过关于用 SQL 存储树的文章,但乍一看这看起来很复杂。
是否有用于在数据库中存储和检索 Lua 表的KISS解决方案,可能与查询语言一起使用?
数据库仍然很小,应该是持久的,不需要处理并行查询。性能也没有问题,该工具仅供单用户使用。我更喜欢基于磁盘/文件的数据库。理想情况下,数据库的更新(查询/脚本)应受版本控制。
首先,我将 (G)dbm 视为可能的候选对象(参见此处),但我不知道一种简单且“可编写脚本”的方式来修改和创建新条目(就像使用 SQL 语句所做的那样)。
我想避免使用像 MongoDB 这样的成熟/基于服务器的解决方案或像 Neo4j 这样的 Graph DB,它们对于我手头的任务来说太过分了。