我试图将有向图保存到数据库中以便进一步处理和查询.neo4j似乎符合我的需求.但是,我似乎没有找到关于以下内容的好教程:
我希望能够手动和自动(即使用程序)执行它们.官方手册一直在谈论像Maven,Index,REST API等等,基本上我现在根本不关心的事情.
那么关于neo4j的任何好的动手教程?或者您认为对于有简单需求的初学者(即商店图和查询图)有用的任何其他图形数据库?
在SQL中:
Delete From Person Where ID = 1;
在Cypher中,按ID删除节点的脚本是什么?
(已编辑:ID = Neo4j的内部节点ID)
我是新来的图形数据库现场,寻找到的Neo4j和学习暗号,我们试图图形数据库建模,这是一个相当简单的,我们得到了用户,我们得到了电影,用户可以查看完成 的电影,RATE 电影,创建播放列表和播放列表可以HAVE 电影.
问题是关于超级节点性能问题.我将从我正在阅读的一本非常好的书中引用一些东西 - 由Rik Van Bruggen学习Neo4j,所以这里是:
然后在数据集中出现一个非常有趣的问题,其中图的某些部分都连接到同一节点.此节点(也称为密集节点或超级节点)成为图遍历的真正问题,因为图数据库管理系统必须评估与该节点的所有连接关系,以确定下一步将在图遍历.
书中提出的这个问题的解决方案是让一个Meta节点与它有100个连接,第101个连接链接到一个链接到前一个Meta节点的新Meta节点.

我看过官方Neo4j博客的一篇博文,说明他们将在未来解决这个问题(博客文章是从2013年1月开始) - http://neo4j.com/blog/2013-whats-coming-next-在-的Neo4j /
他们更确切地说:
我们围绕"更大数据"计划的另一个项目是添加一些特定的优化来处理密集连接节点上的遍历,这些节点具有非常大(数百万)的关系.(这个问题有时被称为"超级节点"问题.)
您对此问题有何看法?我们应该使用Meta节点扇出模式还是使用每个教程似乎都使用的基本关系?还有其他建议吗?
刚刚遇到了FlockDB图数据库.github/flockDB的详细信息.Twitter声称它使用FlockDB进行以下操作:
Twitter在大型机器集群上运行FlockDB.我们使用它来存储社交图表(谁跟随谁,谁阻止谁)和Twitter上的二级索引.
乍一看,设置和尝试它看起来并不直接.有没有人已经使用它/设置这个?如果是,请回答以下一般问题.
注意:我正在评估FlockDB和其他图形数据库主要用于学习它们.也许,我会为此构建一个应用程序.
MongoDB(基于文档),HBase(基于列)和Neo4j(对象图)的优缺点是什么?
我特别想知道每个用例的一些典型用例.
也许任何Slideshare或Scribd值得介绍?
我创建了一个标记为User的新节点
CREATE (n:User)
Run Code Online (Sandbox Code Playgroud)
我想为我的用户节点添加一个名称属性我尝试过
MATCH (n { label: 'User' })
SET n.surname = 'Taylor'
RETURN n
Run Code Online (Sandbox Code Playgroud)
但似乎没有影响.
如何向已创建的节点添加属性.
非常感谢你.
我已经和Titan图形服务器玩了一段时间了.我的感觉是,尽管有大量文档,但缺乏从头开始入门教程.
我的最终目标是让一个巨人在cassandra上运行并使用StartTheShift/thunderdome进行查询.
我见过几种启动泰坦的方法:
从这个链接,我能够通过以下步骤运行titan服务器:
titan-all-0.3.0/libs到rexster-server-2.3.0/ext/titan编辑rexster-server-2.3.0/rexster.xml和添加(在a之间):
<graph>
<graph-name>geograph</graph-name>
<graph-type>com.thinkaurelius.titan.tinkerpop.rexster.TitanGraphConfiguration</graph-type>
<graph-read-only>false</graph-read-only>
<graph-location>/Users/vallette/projects/DATA/gdb</graph-location>
<properties>
<storage.backend>local</storage.backend>
<storage.directory>/Users/vallette/projects/DATA/gdb</storage.directory>
<buffer-size>100</buffer-size>
</properties>
<extensions>
<allows>
<allow>tp:gremlin</allow>
</allows>
</extensions>
</graph>
Run Code Online (Sandbox Code Playgroud)对于berkeleydb或:
<graph>
<graph-name>geograph</graph-name>
<graph-type>com.thinkaurelius.titan.tinkerpop.rexster.TitanGraphConfiguration</graph-type>
<graph-location></graph-location>
<graph-read-only>false</graph-read-only>
<properties>
<storage.backend>cassandra</storage.backend>
<storage.hostname>77.77.77.77</storage.hostname>
</properties>
<extensions>
<allows>
<allow>tp:gremlin</allow>
</allows>
</extensions>
</graph>
Run Code Online (Sandbox Code Playgroud)
对于cassandra db.
./bin/rexster.sh -s -c rexster.xmlbin/rexster-console.shg = rexster.getGraph("geograph")这种方法的问题是你通过rexster而不是gremlin连接,所以你没有自动完成.优点是您可以命名您的数据库(此处为地理位置).
./bin/titan.sh config/titan-server-rexster.xml config/titan-server-cassandra.properties创建一个名为cassandra.localwith …
有三个商店(语义数据库),还有通用图形数据库.
两者都基于通过关系将一个"项目"链接到另一个"项目"的类似概念.Triplestores支持RDF并由SPARQL查询,但是这些附加组件也可以(并且)在通用图形数据库的顶部实现.
什么是使您更喜欢语义db/triplestore到neo4j这样的通用图数据库的根本区别?
graph-databases ×10
neo4j ×6
cypher ×3
nosql ×2
triplestore ×2
database ×1
flockdb ×1
graph ×1
gremlin ×1
hbase ×1
mongodb ×1
node-neo4j ×1
performance ×1
postgresql ×1
rexster ×1
semantics ×1
titan ×1