我在考虑为我的Windows桌面应用程序使用/实现一种嵌入式键值(或文档)存储。我希望能够存储各种类型的数据(GPS轨迹就是一个例子),当然也能够查询这些数据。由于数据量太大,在同一时间内无法全部加载到内存中。
我考虑使用sqlite作为键值存储的存储引擎,类似于.NET编写的y-serial。我还阅读了有关FriendFeed使用MySQL存储无模式数据的文章,这是如何将RDBMS用于非关系型数据的好指针。由于其简单性、可移植性和库大小,sqlite似乎是一个不错的选择。
我的问题是是否有其他选项可供使用嵌入式非关系型存储?它不需要分发,也不必支持事务,但必须可以从.NET访问,并且应具有较小的下载大小。
更新:我找到了一篇名为“SQLite作为键值数据库”的文章,其中比较了sqlite和Berkeley DB,后者是一个嵌入式键值存储库。