git://www.github.com/dbs-leipzig/gradoop.git
git clone http://www.github.com/dbs-leipzig/gradoop
$ svn co --depth empty http://www.github.com/dbs-leipzig/gradoop
Checked out revision 1.
$ cd repo
$ svn up trunk
模型通过逻辑图和逻辑图的集合,提供了扩展广泛的属性图模型的图形数据模型,并进一步提供了可以应用于单一逻辑图集合的运算符。 这些操作符的组合允许图形分析工作流的灵活的声明性定义。 Gelly,ML和表) 。
Gradoop正在进行工作,这意味着api可能会改变。 它目前被用作概念实现的证明,并且远远不能满足生产准备。
进一步信息( 文章和会谈)在扩展属性图模型( EPGM ) 中,数据库由多个属性图组成,这些属性图被称为逻辑图。 这些图描述了应用顶点和边的特定子集,换句话说,一个顶点或者边可以包含在多个逻辑图中。 此外,不仅顶点和边而且逻辑图具有类型标签,而且具有不同的属性。
数据模型元素( 。逻辑图形,顶点和边) 具有唯一标识符,单个标签( 比如 。 用户) 和多个 key-value 属性( 比如 。 of = Alice ) 。没有任何架构,即每个元素都有任意数量的属性,即使它们具有相同的标签。
EPGM为单个逻辑图以及逻辑图集合提供了操作符;操作符还可以返回单个图形或者图形集合。 下表包含了一个概述( GC = 图 Collection,G = 逻辑图) 。
位逻辑图运算符( 一个图形作为输入): 操作员输出输出描述实现聚合 | G | 以聚合函数作为新属性的图形的图形 | 是的 |
匹配 | GC | 给定图 Pattern 匹配的图 | 是的 |
变换 | G | 带转换( 图形,顶点,边) 数据的图 | 是的 |
分组 | G | 输入图的结构压缩 | 是的 |
子图 | G | 满足给定顶点和边谓词的子图 | 是的 |
组合图 | G | 两个输入图中的顶点和边的图形 | 是的 |
重叠 | G | 两个输入图中存在顶点和边的图 | 是的 |
排除 | G | 仅存在于第一个图形中的顶点和边的图形 | 是的 |
相等 | {true, false} | 比较图的标识或者所包含元素的相等性 | 是的 |
VertexFusion | G | 第二个图被融合到第一个图形中的单个顶点 | 是的 |
匹配 | GC | 给定图 Pattern 匹配的图 | 是的 |
选择 | GC | 基于它的附加数据的筛选图( 例如 。 标签,属性) | 是的 |
Distinct | GC | 没有重复图形的集合 | 是的 |
SortBy | GC | 集合按给定属性键的值排序 | 不是 |
限制 | GC | 输入集合中的第一个任意元素 | 是的 |
并集 | GC | 来自输入集合的所有图形 | 是的 |
虚线 | GC | 只有两个集合中存在的图形 | 是的 |
差异 | GC | 仅存在于第一个集合中的图形 | 是的 |
相等 | {true, false} | 根据所包含元素的标识或者相等性比较集合 | 是的 |
应用 | GC | GC | 对集合中的每个图应用一元运算符( 比如 。聚合) | 是的 |
缩小 | GC | G | 使用二元运算符( 比如 ) 将 Collection 缩减为单个图形。 合并) | 是的 |
通话 | gc/g | gc/g | 在图形或者图形集合中应用外部算法 | 是的 |
稳定:
<dependency>
<groupId>org.gradoop</groupId>
<artifactId>gradoop-flink</artifactId>
<version>0.3.2</version>
</dependency>
每日构建( 需要附加知识库)的最新版本:
<repositories>
<repository>
<id>oss.sonatype.org-snapshot</id>
<url>http://oss.sonatype.org/content/repositories/snapshots</url>
<releases><enabled>false</enabled></releases>
<snapshots><enabled>true</enabled></snapshots>
</repository>
</repositories>
<dependency>
<groupId>org.gradoop</groupId>
<artifactId>gradoop-flink</artifactId>
<version>0.3.3-SNAPSHOT</version>
</dependency>
Gradoop需要 Java 8
将Gradoop克隆到本地文件系统中
生成和执行测试
cd gradoop
mvn clean安装
用于读取和写入来自Apache的图形集合的输入和输出格式。
这里模块包含EPGM运算符的引用实现。 模块还包含通用图算法( 比如 )的实现。 适用于EPGM模型的标签传播,频繁子图挖掘。
包含显示Gradoop用例的示例管道。
用于维护整个项目的代码样式。