3

抱歉,如果这个问题看起来有点复杂,但我认为这都是相关的,所以我想尝试一下子得到答案。基本上我有一个分层图*,它有各种数据集,它们只连接到下一组数据(所以 set1 的顶点与 set2 有边,依此类推,但 set1 没有任何东西连接到 set3 或除了 set2 之外的任何东西.这可能是相关的不确定)。通常,您可以将我的数据视为一个庞大的家谱(每个集合我添加大约十亿个节点),我会不断加载每个新集合的新一代(家庭创建新家庭并且没有边缘向后退)。

我有一个 Hbase/hadoop 系统正在运行,我知道如何使用 java 添加列和值,但我不知道该怎么做:

  1. 以图形类型格式将数据添加到 hbase(因为它是 hbase,我想以一种可以添加大量数据并且它会扩展的方式加载它......不像其他将图形限制为系统大小的数据库) . 我知道如何添加数据,但不明白如何以可扩展的图形方式添加数据。
  2. 加载图表后,我想知道如何对其应用某种分析。Pagerank 很受欢迎,所以我想我会这么说,但几乎所有基于处理图形的东西。

我想问这个问题的简化方法是我如何专门将一个图表放入 hbase,一旦它在那里,我该如何分析它?有教程吗?互联网上有很多 hbase 信息(我阅读了 hbase 书),但我找不到任何特定于图表的信息。我找到了 giraph,但我认为它不能连接到 hbase(还)。看到 hadoop/hbase 是 mapreduce/bigtables 的版本,我怀疑有一种方法可以处理图表,我只是没有运气找到任何东西。

*分层图是具有不同顶点集的级别的有向图,如下所示:http ://en.wikipedia.org/wiki/Layered_graph_drawing

4

2 回答 2

0

我认为这个关于 SO 的问题可能会有所帮助:

https://stackoverflow.com/questions/9865738/is-it-possible-to-store-graphs-hbase-if-so-how-do-you-model-the-database-to-sup/9867563#9867563

我对这个问题的回答的这一部分可能有用。

使用 HBase/Accumulo 作为 Giraph 的输入最近(2012 年 3 月 7 日)作为对 Giraph 的新功能请求提交:HBase/Accumulo 输入和输出格式(GIRAPH-153)

于 2012-04-10T04:51:15.840 回答
0

我们这样使用giraph,它只存储每个顶点的最小数据,然后用giraph运行图算法,然后我们用pig将结果与丰富的数据组装在一起,对于page rank算法,每个顶点只需要存储顶点id,排名,因此它可以扩展到近十亿的水平。

于 2012-04-17T05:53:33.627 回答