实现基本的图数据库引擎

时间:2016-02-27 19:03:58

标签: graph-databases

我需要实现一个简单的图形数据库引擎,我应该考虑哪些事情?首先,我在使用哪种数据结构之间感到困惑,我的意思是图形表示(如邻接矩阵或邻接列表)或实际图形本身?我需要这个可扩展。 以后如何将图形作为文件存储在硬盘中?在以图像形式存储图形数据之后,我还需要一种方法来选择性地仅将某些文件加载​​到图形中,因为我无法将所有内容一次性加载到RAM中。抱歉模糊,但我需要有人指出我正确的方向。还请建议我可以使用的语言,我可以在这个项目中使用python吗?谢谢。

1 个答案:

答案 0 :(得分:2)

根据您的需要,您将实现与数据库的不同接口,即。邻接矩阵或图表本身。

您可以使用键{/值存储,例如bsddbleveldbwiredtiger(首选),而不是使用基于文件的数据库。如果您使用有线网格,这将处理经常访问的文件缓存,提供ACID语义和索引。

在键/值存储上创建的存储层可以有多个布局。这取决于您需要的最终界面。

要开始使用键/值存储开发自定义数据库,我建议您阅读有关leveldb和bsddb的问题。

如下所示: