HugeGraph 0.2 Release Notes
0.2版实现了图数据库基本功能,提供如下功能:
元数据(Schema)
顶点类型(Vertex Label)
- 创建顶点类型
- 删除顶点类型
- 查询顶点类型
- 增加顶点类型的属性
边类型(Edge Label)
- 创建边类型
- 删除边类型
- 查询边类型
- 增加边类型的属性
属性(Property Key)
- 创建属性
- 删除属性
- 查询属性
索引(Index Label)
- 创建索引
- 删除索引
- 查询索引
元数据检查
- 元数据依赖的其它元数据检查(如Vertex Label依赖Property Key)
- 数据依赖的元数据检查(如Vertex依赖Vertex Label)
图数据
顶点(Vertex)
- 增加顶点
- 删除顶点
- 增加顶点属性
- 删除顶点属性(必须为非索引列)
- 批量插入顶点
- 查询
- 批量查询
顶点ID策略
- 用户指定ID(字符串)
- 用户指定某些属性组合作为ID(拼接为可见字符串)
- 自动生成ID
边(Edge)
- 增加边
- 增加多条同类型边到指定的两个节点(SortKey)
- 删除边
- 增加边属性
- 删除边属性(必须为非索引列)
- 批量插入边
- 查询
- 批量查询
顶点/边属性
属性类型支持
- text
- boolean
- byte、blob
- int、long
- float、double
- timestamp
- uuid
支持单值属性
支持多值属性:List、Set(注意:非嵌套属性)
事务
- 原子性级别保证(依赖后端)
- 自动提交事务
- 手动提交事务
- 并行事务
索引
索引类型
- 二级索引
- 范围索引(数字类型)
索引操作
- 为指定类型的顶点/边创建单列索引(不支持List或Set列创建索引)
- 为指定类型的顶点/边创建复合索引(不支持List或Set列创建索引,复合索引为前缀索引)
- 删除指定类型顶点/边的索引(部分或全部索引均可)
- 重建指定类型顶点/边的索引(部分或全部索引均可)
查询/遍历
- 列出所有元数据、图数据(支持Limit,不支持分页)
- 根据ID查询元数据、图数据
- 根据指定属性的值查询图数据
- 根据指定属性的值范围查询图数据(属性必须为数字类型)
- 根据指定顶点/边类型、指定属性的值查询顶点/边
- 根据指定顶点/边类型、指定属性的值范围查询顶点(属性必须为数字类型)
- 根据顶点类型(Vertex Label)查询顶点
- 根据边类型(Edge Label)查询边
根据顶点查询边
- 查询顶点的所有边
- 查询顶点的指定方向边(出边、入边)
- 查询顶点的指定方向、指定类型边
- 查询两个顶点的同类型边中的某条边(SortKey)
标准Gremlin遍历
缓存
可缓存内容
- 元数据缓存
- 顶点缓存
缓存特性
- LRU策略
- 高性能并发访问
- 支持超时过期机制
接口(Restful API)
- 版本号接口
- 图实例接口
- 元数据接口
- 图数据接口
- Gremlin接口
更多细节详见API文档
后端支持
支持Cassandra后端
- 持久化
- CQL3
- 集群
支持Memory后端(仅用于测试)
- 非持久化
- 部分特性无法支持(如:更新边属性、根据边类型查询边)
其它
支持配置项
- 后端存储类型
- 序列化方式
- 缓存参数
支持多图实例
- 静态方式(增加多个图配置文件)
版本检查
- 内部依赖包匹配版本检查
- API匹配版本检查