2012-02-29 52 views
3

我正在使用图形和jung似乎在我的测试环境(其几千个节点)中工作良好,但真正的数据每天会创建数百万个节点(其有向图,所以我们可能能够每天用节点来说明节点,所以我们不必下载整个图)。我们将每个月增加十亿个节点,并计划将hbase/hadoop作为后端,但不知道如何让jung(或任何图形库)连接到它。有没有办法将jung连接到数据库的保存/写入?

有没有办法让jung使用数据库读/写,所以我可以有一些类型的持久存储,我可以有选择地从下载?你有

+0

在一些Jung示例中,它们将顶点和边都存储在HashMap中。也许,你可以用HashMap替换一个数据库对象? – ecle 2012-02-29 12:20:02

+0

我对Java有点新东西..我该怎么做? – 2012-03-01 00:44:35

+0

您可以创建一个由数据库支持或从数据库加载的Graph实现。您需要阅读如何从支持存储(如果您想更改图形并使这些更改持续存在)加载数据(可能还需要);这超出了JUNG本身的范围。 – 2012-03-05 00:02:06

回答

3

一种选择是使用blueprints

蓝图是一个属性图模型接口。它提供了 实现,测试套件和支持扩展。图 实现蓝图接口 的数据库和框架自动支持支持蓝图的应用程序。同样, 启用蓝图的应用程序可以插入并播放不同的 支持蓝图的图形后端。

蓝图提供了许多数据库后端的接口,如Neo4j,它们有一个名为GraphJung的JUNG interface implementation

GraphJung的好处是,被写入 跟一个JUNG edu.uci.ics.jung.graph.Graph任何应用程序现在, 间接地,跟一个蓝图com.tinkerpop.blueprints。 pgm.Graph。 令人兴奋的应用程序包括使用JUNG可视化和 算法包(请参阅JUNG JavaDoc)在任何支持蓝图的 图形数据库/框架中使用。

我觉得这听起来像是可以帮助您将JUNG图形连接到启用蓝图的后端(Neo4j,OrientDB等)的东西。

相关问题