西宁网站建设,微博营销方案,网络系统定级备案,seo网络推广招聘原创/朱季谦 若你还没接触过图数据库#xff0c;可能看到这个概念时#xff0c;会比较蒙蔽。
图是什么#xff1f;图数据库又是什么#xff1f;
首先#xff0c;在数据结构中#xff0c;图是一种由顶点#xff08;vertex#xff09;集合及顶点间关系集合组成的一种非…原创/朱季谦 若你还没接触过图数据库可能看到这个概念时会比较蒙蔽。
图是什么图数据库又是什么
首先在数据结构中图是一种由顶点vertex集合及顶点间关系集合组成的一种非线性数据结构。
而图数据库则是以图这种具有点边结构来增、删、改、查之类操作的NoSQL数据库它特别擅长处理大数据之间的关联。
常见的图数据库有Neo4j,JanuasGraph,Tigergraph等其中Gremlin是一种操作图数据库的图语言它是Apache ThinkerPop框架下的图遍历语言。 那么HugeGraph又是什么呢
根据官网上的介绍HugeGraph是一款易用、高效、通用的开源图数据库系统Graph Database实现了Apache TinkerPop3框架及完全兼容Gremlin查询语言支持百亿以上的顶点和边快速导入并提供毫秒级的关联关系查询能力OLTP并可与Hadoop、Spark等大数据平台集成以进行离线分析OLAP。
HugeGraph是百度自主研发的图数据库在2018年8月开始对外开源我们之前做一款图库产品时技术选型就是选了HugeGraph总体感觉这个技术比较前沿也比较厉害。
HugeGraph有以下特点 顶点、边支持基本增删改查操作支持有向图支持两顶点间同一类型多条边支持超级点。 属性支持属性图、支持多值属性、支持多样化的属性类型、支持顶点属性追加与合并。 元数据支持丰富的Schema校验如属性是否可空可选支持Schema动态修改。 索引支持二级索引、范围索引、全文索引支持联合索引。 事务遵循Tinkerpop事务规范支持Read Committed级别事务。 多顶点ID策略支持主键ID、支持自动生成ID、支持用户自定义字符串ID、支持用户自定义数字ID。 大规模数据支持批量插入顶点/边、支持超级顶点、支持流式分页获取、支持Shard并行获取。 优化的图接口最短路径Shortest Path、K步连通子图K-neighbor、K步到达邻接点K-out等。 其它支持图变量Graph Variables、兼容性上已通过Apache Tinkerpop官方测试用例90%兼容测试。 说了这么多那么图库技术有什么用呢
主要可以用在知识图谱、金融反欺诈、社交关系网络、推荐、用户分析、搜索等等以及其他。 学习Gremilin的第一步当然是从安装环境开始下面我就把之前的安装教程分享出来
网盘下载核心安装包HugeGraph Server包和图形界面HugeGraph Studio包截图是目前最新版本。 网盘下载地址
链接百度网盘 请输入提取码 提取码pqpy
利用HugeGraph学习Gremlin主要只用安装以上两个包它们的功能分别是
核心HugeGraph-Server: HugeGraph-Server是HugeGraph项目的核心部分包含Core、Backend、API等子模块—— Core图引擎实现向下连接Backend模块向上支持API模块 Backend实现将图数据存储到后端支持的后端包括Memory、Cassandra、ScyllaDB、RocksDB、HBase及MySQL用户根据实际情况选择一种即可 API内置REST Server向用户提供RESTful API同时完全兼容Gremlin查询。
可视化界面hugegraph-studio基于Web的可视化环境提供图操作界面、图数据展示与分析。 一.先安装HugeGraph Server。
1.把压缩包放在你选择放的文件夹里进行解压
tar -zxvf hugegraph-0.10.4.tar.gz 解压完成后进入到已解压的文件目录里执行vim conf/rest-server.properties进入到编辑状态将restserver.url改成http://0.0.0.0:8080代表本机以及其他机器都可以访问修改完成后wq保存退出。 2.配置文件修改完后需对后端做初始化操作执行指令
bin/init-store.sh
执行成功会打印以下信息 初始化完成后自动生成一个corksdb-data的文件这个文件禁止删除它是与数据存储相关的文件HugeGraph其实可以与Hbase等第三方组件集成可在conf目录下的hugegraph.properties文件中进行配置。 3.接下来就可以启动HugeGraph Server服务了执行指令
bin/start-hugegraph.sh
执行成功后会打印以下信息 最后输入jps若出现HugeGraph Server的进程则证明已经安装启动成功。 二.接下来就开始安装启动图形化HugeGraph Studio
1.解压HugeGraph Studio压缩包
tar -zxvf hugegraph-studio-0.10.0.tar.gz
解压完成后进入已解压的文件目录里执行指令vim conf/hugegraph-studio.properties进行配置文件编辑状态
其中studio.server.port填8088studio.server.host填0.0.0.0可令本机与本机之外的机器访问graph.server.host填的是HugeGraph Server所在机器的地址IP,其安装在虚拟机192.168.200.128机器上graphGraph Server.port对应的是HugeGraph Server配置设置的8080端口只需修改设置下图截图ip与端口即可。 2.安装完成后即可执行指令bin/hugegraph-studio.sh进行启动操作成功启动后显示打印以下信息 在浏览器测试运行下输入13若能显示[4]即已经完整启动完成可在以下Studio界面玩Gremlin图数据库语言了。 过程遇到的问题
刚开始我参考网上一些教程把HugeGraph Studio的配置文件中graph.server.host改成0.0.0.0。 发现可以出现图形化界面但是在操作运行时报了“Failed to connect HugeGraphServer.com.baidu.hugeGraph.rest.ClientException:Failed to do request的错误后经检查发现这里不能填对应HugeGraph Server配置文件里设置的0.0.0.0而需要填HugeGraph Server所在的机器Ip,例如其所在虚拟机Ip这样才能正常运行。 图数据库是一项很前沿的技术欢迎小伙伴关注我我会把学习笔记做成专栏记录下来。