HugeGraph 发布 0.11.2 版本
HugeGraph 0.11.2 版本增加/完善功能 80+,修复 bug 30+,该版本在功能、性能、安全性和稳定性方面都有较大提升。值得一提的是,本次发版同时发布了可视化图管理平台HugeGraph-Hubble!
新增功能主要包括:
支持 RESTful API 中基于属性的范围查询顶点/边
支持顶点和边的 TTL
支持用户认证和细粒度权限控制
支持共同邻居,Jaccard 相似度,全部短路径,带权短路径,单源短路径,多点短路径和模板路径等10+ OLTP算法
支持堆外缓存
支持基于 Raft 的分布式一致性协议
支持集群的异步任务调度功能
性能方面提升:
支持聚合运算的性能优化
支持插件化查询加速机制 RamTable
为 RocksDB 后端增加 compaction 配置项
使用 disableTableAsync 加速 HBase 后端的数据清除
使用 IntObjectMap 优化元数据缓存效率
在压缩和解压缩异步任务的结果时,使用 LZ4 替代 Gzip
安全方面提升:
支持 HTTPS 协议
支持 HBase 启用 Kerberos 认证
稳定性方面提升:
支持限制查询请求速率的功能
启动 HugeGraphServer 出现异常时快速失败
修复RocksDB 后端执行 g.V().hasLabel().count() 时的 OOM 问题
修复保存执行失败的异步任务时无法取消的问题
HugeGraph 0.11 Release Notes
API & Client
功能更新
支持梭形相似度算法
支持创建 Schema 时,记录创建的时间
支持 RESTful API 中基于属性的范围查询顶点/边
支持顶点和边的 TTL
统一 RESTful API Server 和 Gremlin Server 的日期格式为字符串
支持共同邻居,Jaccard 相似度,全部短路径,带权短路径和单源短路径5种遍历算法
支持用户认证和细粒度权限控制
支持遍历 API 的顶点计数功能
支持 HTTPS 协议
支持创建索引时控制是否重建索引
支持定制的 kout/kneighbor,多点短路径,相似 Jaccard 点和模板路径5种遍历算法
内部修改
启动 HugeGraphServer 出现异常时快速失败
定义 LOADING 模式来加速导入
Core
功能更新
支持多属性顶点/边的分页查询
支持聚合运算的性能优化
支持堆外缓存
支持属性权限管理
支持 MySQL 和 Memory 后端分片,并改进 HBase 分片方法
支持基于 Raft 的分布式一致性协议
支持元数据拷贝功能
支持集群的异步任务调度功能
支持发生 OOM 时打印堆信息功能
支持 Raft 状态机更新缓存
支持 Raft 节点管理功能
支持限制查询请求速率的功能
支持顶点/边的属性默认值功能
支持插件化查询加速机制 RamTable
支持索引重建失败时设置为 INVALID 状态
支持 HBase 启用 Kerberos 认证
BUG修复
修复配置权限时 start-hugegraph.sh 的超时问题
修复在 studio 执行 gremlin 时的 MySQL 连接失败问题
修复 HBase 后端 truncate 时出现的 TableNotFoundException
修复限速配置项值未检查的问题
修复索引(Unique Index)的返回的异常信息不准确问题
修复 RocksDB 后端执行 g.V().hasLabel().count() 时 OOM 问题
修复 traverseByLabel() 分页设置错误问题
修复根据 ID 和 SortKeys 更新边属性时误创建边的问题
修复部分存储后端的覆盖写问题
修复保存执行失败的异步任务时无法取消的问题
修复 MySQL 后端在 SSL 模式下无法打开数据库的问题
修复索引查询时 offset 问题
修复 Gremlin 中路径泄露的安全问题
修复 reconnectIfNeeded() 方法的 NPE 问题
修复 PostgreSQL 的 JDBC_URL 配置没有"/"前缀的问题
修复 RocksDB 内存统计问题
修复环路检测的两点成环无法检测的问题
修复梭形算法计算结束后没有清理计数的问题
修复 gremlin-console 无法工作的问题
修复限制数目的按条件过滤邻接边问题
修复 MySQL 执行 SQL 时的 auto-commit 问题
修复通过两个索引查询时的超过 80w 限制的问题
修复范围索引检查规则错误
修复删除残留索引的错误
修复当前线程为 task-worker 时关闭事务卡住的问题
修复短路径查询出现 NoSuchElementException 的问题
修复异步任务有时提交两次的问题
修复值很小的 date 反序列化的问题
修复遍历算法未检查起点/终点是否存在的问题
修复 bin/start-hugegraph.sh 参数解析错误问题
修复 gremlin-console 运行时的 log4j 错误信息的问题
内部修改
延迟检查非空属性
为存储后端增加查看集群节点信息的功能
为 RocksDB 后端增加 compaction 配置项
增加 vertex.check_adjacent_vertex_exist 配置项
检查主键属性不允许为空
增加图名字的合法性检查
增加对非预期的 SysProp 的查询
使用 disableTableAsync 加速 HBase 后端的数据清除
允许 Gremlin 环境触发系统异步任务
编码字符类型索引中的类型 ID
安全模块允许 Cassandra 在执行 CQL 时按需创建线程
将 GremlinServer 的默认通道设置为 WsAndHttpChannelizer
将 Direction 和遍历算法的类导出到 Gremlin 环境
增加顶点属性缓存限制
优化列表属性的读
增加缓存的 L1 和 L2 配置
优化 EdgeId.asString() 方法
优化当顶点没有属性时跳过后端存储查询
创建名字相同但属性不同的元数据时抛出 ExistedException
查询顶点和边后按需关闭事务
当图关闭时清空缓存
关闭图时加锁避免竞争问题
优化顶点和边的删除效率,当提供 Label+ID 删除时免去查询
使用 IntObjectMap 优化元数据缓存效率
使用单个 Raft 节点管理目前的三个 store
在重建索引时提前释放索引删除的锁
在压缩和解压缩异步任务的结果时,使用 LZ4 替代 Gzip
实现 RocksDB 删除 CF 操作的排他性来避免竞争
修改 CSV reporter 的输出目录,并默认设置为不输出
其它
cherry-pick 0.10.4 版本的 bug 修复代码
Jackson 升级到 2.10.2 版本
Thanks 信息中增加对 Titan 的感谢
适配 TinkerPop 测试
修改允许输出的日志低等级为 TRACE
增加 IDEA 的格式配置文件
修复 Travis CI 太多错误信息的问题
Loader
功能更新
支持读取 Hadoop 配置文件
支持指定 Date 属性的时区
支持从 ORC 压缩文件导入数据
支持单条边插入时设置是否检查顶点
支持从 Snappy-raw 压缩文件导入数据
支持导入映射文件 2.0 版本
增加一个将 utf8-bom 转换为 utf8 的命令行工具
支持导入任务开始前清理元数据信息的功能
支持 id 列作为属性存储
支持导入任务配置 username
支持从 Parquet 文件导入数据
支持指定读取文件的大行数
支持 HTTPS 协议
支持时间戳作为日期格式
BUG修复
修复行的 retainAll() 方法没有修改 names 和 values 数组
修复 JSON 文件重新加载时的 NPE 问题
内部修改
只打印一次插入错误信息以避免过多的错误信息
拆分批量插入和单条插入的线程
CSV 的解析器改为 SimpleFlatMapper
编码主键中的数字和日期字段
确保主键列合法或者存在映射
跳过主键属性全部为空的顶点
在导入任务开始前设置为 LOADING 模式,并在导入完成后恢复原来模式
改进停止导入任务的实现
Tools
功能更新
支持 Memory 后端的备份功能
支持 HTTPS 协议
支持 migrate 子命令配置用户名和密码
支持备份顶点和边时指定类型和过滤属性信息
BUG修复
修复 dump 命令的 NPE 问题
内部修改
在 backup/dump 之前清除分片文件
改进 HugeGraph-tools 的报错信息
改进 migrate 子命令,删除掉不支持的子配置
来自:https://mp.weixin.qq.com/s/CsQKpbX_HI2D2JyC2RIlgg
相关文章