图数据库游记

图数据库游记

起因

似乎一直都想有这样一种工具,能够将所学到的知识和生活中的数据都表示和存储在计算机里面,并且能够在合适的时候调出来进行对比并且连接不同的领域发现数据之间的潜在联系.图数据库也是几年前听说过的,当时还以为是这个图指的是位图bitmap,实则指graph,最近有一点时间,就开始查找各种资料.

经过

nosql开始我找了一些排名之类的数据,然后找到一些nosql数据库开始玩,没有找到方便windows 下载的,于是选择装再虚拟机上.第一个找到的是redis,看了它的get startedtutorial部分,发现这个东西不是我想的那样,然后又去看其它的数据库才发现,redis被称为键\-值数据库所以想json这种东西都只能序列化之后再存进去.然后我开始查找图数据库,找到有orientdb,挺喜欢它的名字,这个东西挺复杂,并且是用的类似SQL的查找语言,SQL是我认为的冗余度很高的一种语言,虽然有个match语句,然后它的文档不太好,一些东西也很奇怪,比如edgelink的概念我就一直搞不懂.还有一条命令CREATE LINK这个命令,一直没看懂什么意思,看了好久才发现,这个东西是在做rdbmsorientdb的迁移时用到的,而且这个命令似乎还有bug.其实它的server也有bug,我"CTRL-C"之后它就卡住了.不过这个东西是一个多模型的数据库,除了Graph也支持Document存储,也就是可以存JSON格式半结构化的数据,可以递归.大约玩了一天半的orientdb之后某一天的晚上看到有人说(非原话)

orientdb没人维护了,在被sap收购之后,主要开发这去搞arcadedb了,neo4j比较流行,用的人比较多.

然后开始玩neo4j,开始玩了之后发现,这个数据库有配套的书,找到之后翻了翻,这书的前几章满溢着对图数据库的赞美之词,然后我发现这个cypher查询语言真的挺好,简洁不费手,明了不费眼.然后neo4j的帮助和文档比orientdb的要友好的多.有那么短短的一段时间我真的感觉neo4j真的好棒,直到…,我发现这个玩意community版本不能创建新的数据库,不能重命名,那是我真的觉得很xxxx,还有一个问题是,它的browser的data information部分的labels relationship types 和 property keys的我已经删除所有数据(match(n) detach delete n)之后不会消失.这真的能逼死强迫症.看到那里有一长串的垃圾数据,还不能清除掉,我真的觉得可笑和恶心.还有一个诡异的地方(虽然我知道计算机是"绝对的",不会有这种玄学问题),一段时间后labels 和relationship types 可以在引用它的节点和边的数量自动归0之后自动消失,但是property keys还是保存原样,另外不像orientdb,它不支持文档的存储,不支持嵌套.于是我又尝试了arcadedb,因为在某处看到它支持cypher,确实它比orientdb要好多了,但是发现只是部分支持cypher,并且似乎没有看到javascript的接口,只有java和各种图数据查询语言,以及一些http之类的接口,并且,正当我快结束实验的时候,运行一些简单的命令竟然卡住了.

结果

果然只有依靠自己了,不过自己是靠不上的,所以,暂时不去尝试新的图数据库了.但是可以学学cypher之类的东西.

测试

我把open beer导入到neo4j里了,导入信息如下.

Added 7467 labels, created 7467 nodes, set 40933 properties, created 14908 relationships, completed after 203209 ms.

其中

match(n:Beer) return count(n)
5901
match(n:Style) return count(n)
141

尝试在两个数据库的浏览器接口里运行命令

	match(n:Beer),(s:Style) return n
`
`arcadedb` 的结果 `Returned 500 records in 51535ms`, `neo4j`不主动报告结果,大概是4分钟的样子(用chrome网络请求显示的时间计算的),看来在我的笔记本上arcadedb要快4倍以上.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值