
图数据库
华山拎壶冲
不积跬步,无以至千里。。。
面试必备:https://www.jianshu.com/u/c3be0f69940b
展开
-
janusGraph学习资料
官方文档https://docs.janusgraph.org/latest/index-admin.html中文文档(不全)详见http://www.k6k4.com/chapter/show/aafjjfjfv1534955013868图数据库专题:http://www.k6k4.com/blog/list/6/5 https:/...原创 2019-01-23 18:03:54 · 790 阅读 · 0 评论 -
Gremlin -- 常用查询用法
原文:https://blog.youkuaiyun.com/优快云___LYY/article/details/84771820一:gremlin查询过程gremlin的查询是流式查询,一步一步的进行下去,当然这里的“一步”可能是一个方法(g.V().has())也可能是多个方法组成的一步(g.V().order().by(desc,‘age’))。下面看一个案例g.V().has('co...转载 2019-04-04 11:38:52 · 8280 阅读 · 0 评论 -
【JanusGraph】第十一章:使用索引提升性能
JanusGraph支持2种类型的索引用以提升查询处理速度,分别是图索引(graph indexes)和中心节点索引(vertex-centric indexes)。大多数图查询都是从它们的属性标识的顶点或边的列表开始遍历的。图索引使在大图中进行全局检索的时候变得非常高效。中心顶点索引可以提升实际图遍历的性能,特别是顶点具有大量入边的时候。11.1图索引11.1. Graph Index图索...转载 2019-03-08 11:30:53 · 683 阅读 · 0 评论 -
【JanusGraph】第九章:ConfiguredGraphFactory
这个概念比较难以理解。ConfiguredGraphFactory是一个singleton,和JanusGraphFactory一样。它们提供了一套API(methods,方法)来动态地操作服务器上的图。在gremlin-console下我们可以直接用这个接口去操作图,如下:gremlin> :remote connect tinkerpop.server conf/remote.y...原创 2019-03-08 22:44:23 · 976 阅读 · 0 评论 -
【JanusGraph】第八章:系统部署方案
JanusGraph提供多种后端存储和后端索引,使其能够更灵活的部署。本章介绍了几种可能的部署场景,以帮助解决这种灵活性带来的复杂性。在讨论部署场景之前,理解JanusGraph本身的角色定位和后端存储的角色定位是非常重要的。首先,应用程序与JanusGraph进行交互大多数情况下都是进行Gremlin遍历,然后,JanusGraph把遍历请求发给配置好的后端(存储后端、索引后端)执行遍历处理。...原创 2019-03-08 22:16:01 · 747 阅读 · 0 评论 -
【JanusGraph】第七章:JanusGraph服务
JanusGraph使用Gremlin Server作为服务组件对客户端请求进行请求处理响应。当JanusGraph打包的时候,Gremlin Server就被称为JanusGraph服务。JanusGraph使用前必须手动启动,JanusGraph服务提供了一种在一个或多个JanusGraph实例上执行远程执行Gremlin脚本的方法。这部分将会说明如何使用WebSocket配置,同时也会说明...转载 2019-03-08 20:02:05 · 801 阅读 · 0 评论 -
【JanusGraph】第五章:schema及数据建模
每个JanusGraph都有一个schema,该schema由edge labels, property keys和vertex labels组成。JanusGraph的schema可以显式或隐式创建,推荐用户采用显式定义的方式。JanusGraph的schema是可以在使用过程中修改的,而且不会导致服务宕机,也不会拖慢查询速度。注意:通关系型数据库不同,图数据的schema是定义一张图,而非定...原创 2019-03-08 18:45:31 · 876 阅读 · 0 评论 -
【JanusGraph】第四章:配置
JanusGraph数据库集群通常包含一个或多个JanusGraph实例. 运行实例需要提供JanusGraph的配置参数.JanusGraph配置中定义了JanusGraph要使用哪些组件, 控制部署各个操作, 提供一系列的动态调整的参数, 来获得集群的最大性能.一般情况, JanusGraph配置必须提供存储后台. Part III, “Storage Backends” 列出了全部支持的...原创 2019-03-08 17:35:07 · 338 阅读 · 0 评论 -
【JanusGraph】第三章: 入门
本节中的例子展示了如何使用JanusGraph检索诸神关系图. 关系图如下图所示.抽象数据模型使用大家都熟知的Property Graph Model ,而且这个例子描述了罗马诸神中的人物和他们所在位置之间的联系.Figure 3.1. 诸神关系图虚拟元素意义粗体的关键字图的索引粗体加星的关键字图的索引, 必须唯一下划线的关键字顶点中心索引空心箭头...原创 2019-03-08 16:54:05 · 760 阅读 · 0 评论 -
【JanusGraph】第二章: 系统架构
JanusGraph是一个图形数据库引擎。 JanusGraph本身专注于压缩图序列化、丰富图数据建模、高效的查询执行。 此外,JanusGraph利用Hadoop进行图分析和批处理。JanusGraph为数据持久化,数据索引和客户端访问实现了强大的模块化接口。 JanusGraph的模块化架构使其能够与各种存储,索引和客户端技术进行互操作; 这也使得JanusGraph升级对应的组件过程变得更加...转载 2019-03-08 15:54:29 · 229 阅读 · 0 评论 -
【JanusGraph】第一章: JanusGraph的优势
JanusGraph设计的目的是处理大图,单机无论是在存储和计算能力上都无法满足大图处理。大规模图实时计算和分析是JanusGraph最基本的优势。本节将讨论更多JanusGraph特有的优势以及它底层支持的存储方案。1.1. JanusGraph 基本优势支持非常大的图。JanusGraph通过添加机器横向扩展集群。支持很大的并发事务处理和图操作处理。通过添加机器横向扩展JanusGrap...转载 2019-03-08 15:09:08 · 461 阅读 · 0 评论 -
JanusGraph 创建索引步骤
前言 JanusGraph是一个图数据库引擎,安装及入门可以参考 JanusGraph 图数据库安装小记。为了提高查询速度,在使用过程中一般要为某些属性创建索引。这篇随笔主要是记录创建索引过程中踩过的坑。 索引介绍 与mysql创建索引不同,JanusGraph的索引有一套生命周期,如下图所示: 我们的目标是从<create>索引开始,通过...转载 2019-01-29 11:44:08 · 2233 阅读 · 3 评论 -
gremlin语法详解
初步认识点:蓝色的圈代表顶点(查询语句中的V()),圈中的person代表顶点的名称,name和age为顶点的属性。边:黑色的线代表边(查询语句中的E()),线上的knows代表边的名称,weight为边的属性。 一、Lambda Step四个基础的步骤:map ,flatMap ,filter,sideEffect,branch1. 查找节点属性(1). V(1)...原创 2019-01-16 11:11:10 · 8370 阅读 · 0 评论 -
【JanusGraph】第十二章:Transactions
Transaction Handling(事务处理)JanusGraph中的每个图表操作都发生在事务的上下文中。根据TinkerPop的事务规范,每个线程在图上用第一个操作建立图数据库对应事务。 graph = JanusGraphFactory.open("berkeleyje:/tmp/janusgraph")juno = graph.addVertex(...转载 2019-03-26 23:13:14 · 308 阅读 · 0 评论