Database 灵活的方式/数据库保存大量数据
我有一个非常大的SQLite数据库(~10MB)。目前,我在localhost上使用带有自定义PHP接口的数据库,但我也在寻找不同的存储和接口。内部数据不会经常更改,因此读取数据具有优先权 我对当前的设置不是很满意,因为数据库模式是“自定义”的,我不想在将来更改它(因为也许我会找到一种“更好的方法”)。我认为这是不标准的,这可能会困扰我的未来 我的问题是:存储非常灵活的数据的好方法是什么?我正在寻找一种标准的数据存储,我只需要填充一次。SQLite仍然是最佳选择吗 此数据库中的内容: 我将大致描述一下结构如何Database 灵活的方式/数据库保存大量数据,database,sqlite,database-design,data-structures,Database,Sqlite,Database Design,Data Structures,我有一个非常大的SQLite数据库(~10MB)。目前,我在localhost上使用带有自定义PHP接口的数据库,但我也在寻找不同的存储和接口。内部数据不会经常更改,因此读取数据具有优先权 我对当前的设置不是很满意,因为数据库模式是“自定义”的,我不想在将来更改它(因为也许我会找到一种“更好的方法”)。我认为这是不标准的,这可能会困扰我的未来 我的问题是:存储非常灵活的数据的好方法是什么?我正在寻找一种标准的数据存储,我只需要填充一次。SQLite仍然是最佳选择吗 此数据库中的内容: 我将大致描
- 表A充满了问题李>
- 表B充满了答案。每个问题都有不同的答案李>
- 来自C的表格中充满了关于问题Y的答案X的数据。每个答案都有许多不同的可用元数据李>
- 快速查询李>
- 通过*NIX的可移植性,无需安装大量软件李>
- 不太复杂的查询,我仍然需要一些连接李>
- 不必每两个月更改一次模式
- 频繁更新(我每年或多或少更新数据库一次)
我曾想过使用文件和文件夹,但我不确定这是否是最好的方法。您的问题可以很好地建模为图形问题。像Orient DB或Neo4j这样基于图形的数据库呢?在图的一部分中可以有两个节点:一个用于回答问题(如a),一个用于回答答案(如B),连接它们的边可以有表c数据或元数据。每个答案节点可以有来自多个问题节点的多个传入边,并且一个问题可以有多个答案。您不需要任何模式,我提到的数据库是NoSQL数据库。搜索将是非常快的,因为即使他们可以与Lucene搜索引擎集成进行全文搜索,我相信,因为你有问答,所以你将需要全文搜索 以下是一个例子:
键值存储?Redis-看看这个。试试或者其他任何文档存储。在我看来,它就像一个基本的1::N模型。没有涉及问题或答案的版本?没有斑点?没有问题的类别/标签?没有答案的评级/排名?