首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在GREMLIN中找到有条件的两个子顶点的父顶点?

在GREMLIN中,要找到有条件的两个子顶点的父顶点,可以使用in()步骤和has()步骤来实现。

首先,使用in()步骤获取到两个子顶点的入边,然后使用has()步骤对入边进行条件过滤,筛选出符合条件的边。接着,使用outV()步骤获取到符合条件的边的起始顶点,即为所需的父顶点。

以下是一个示例查询的GREMLIN代码:

代码语言:txt
复制
g.V().hasLabel('子顶点1').in().hasLabel('边的标签').outV().hasLabel('父顶点')

在上述代码中,'子顶点1'和'边的标签'是需要替换为实际的子顶点标签和边的标签。'父顶点'是需要替换为实际的父顶点标签。

关于GREMLIN的更多信息和使用方法,可以参考腾讯云的图数据库产品TencentDB for TGraph,它是一种高性能、高可靠性的分布式图数据库,适用于处理大规模图数据和复杂图查询。

TencentDB for TGraph产品介绍链接地址:https://cloud.tencent.com/product/tgdb

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

【翻译】Gremlin-Gremlin何许人也?

获取名为“gremlin顶点。 2. 得到gremlin知道的人。 3. 遍历那些人都知道的人。 4. 得到那些人名字。...2:被位是朋友关系的人创建项目名称 g.V().match( as("a").out("knows").as("b"), as("a").out("created").as("c"),...groupCount().by("title") 步骤:1.获取gremlin用户顶点并将该顶点设置为a,则下面的a便代表gremlin这个顶点 2.找到gremlin创造项目,并且创建这些项目的人...获取名为“gremlin顶点 2. 获取Gremlin购买产品并保存为以“stash”命名临时集合 3. 还有谁买了这些产品,并且得到他们买东西 4....命令式Gremlin遍历告诉遍历者如何在遍历中每一步进行。 例如,下面的命令遍历首先将遍历器放置在表示Gremlin顶点处。

2.5K30

Gremlin查询语言

Gremlin Language Variants: 学习如何在编程语言中嵌入GremlinGremlin for SQL developers: 使用SQL查询数据方式来学习Gremlin。...V:图中所有的顶点。 has('name', 'hercules'):过滤出顶点name为hercules顶点。 out('father'):从hercules顶点遍历出边为father边。...out('father'):从herculesfather顶点遍历出边为father边。 name:获取hercules祖父顶点name属性值。 总之,这些步骤构成了类似路径遍历查询。...鉴于神图形只有一个战斗者(Hercules),另一个战斗者(为了举例)被添加到图中,Gremlin展示了如何将顶点和边添加到图形中。...可以在顶点和边上设置作为键值对属性。 使用SET或LIST基数定义属性键,必须使用addProperty向顶点添加此属性。

3.6K20
  • 3. JanusGraph快速开始

    这个抽象数据模型对应图模型中属性,这个特定实例描述了罗马万神殿中人物和地点之间关系。此外,图中特殊文本和符号修饰符(:粗体、下划线等)表示图中不同示意图/类型。 ?...该起始点是一个元素(或一组元素) - 即顶点或边。从起始点,Gremlin路径描述描述了如何通过显示图结构来遍历图中其他点。...这也可以使用循环方式来查询,实际上Hercules是从Saturn在in('father') 路径上循环次到达点。...图属性模型足以表示各种事物和关系。 通过这种方式,Gods图也展示了Hercules各种英雄事迹 - 他著名12年工作。 在上一节中,发现Hercules参与了雅典附近场战争。...JanusGraph非常智能,在可以使用时候会使用以顶点为中心索引。GremlintoString()表达式将分解为单个步骤来展示。

    3.3K20

    次方 - 第一部分

    此代码将选项卡上文本行分割以创建包含个userID值列表。...collect函数将处理getOrCreate所得到值,然后将所得列表解构到顶点变量存入已经存在或以其它方式被新创建图中:fromVertex和toVertex。...fromVertex.addEdge('votesFor', toVertex) - 构造顶点之间边。 g.commit()- 值得注意是,这个加载是在单个事务上下文中执行。...该网络中顶点代表医疗服务提供者,它们由NPI number标识。边表示个提供者之间共享交互,其中三个属性进一步限定了该交互。数据根据时间窗口分成几种尺寸。...如果数据可以组织起来,并且条件允许的话,可以考虑一下使用gpars进行并行加载方法。 如果有倾向于从非JVM语言(Python)加载数据,可以理清本文思路并在Gremlin中编写加载脚本。

    1.8K50

    百亿级图数据JanusGraph迁移之旅

    数据导入方案探索 简单介绍完 JanusGraph 优点,就正式开始迁移数据了。不得不说我们严重低估数据迁移难度,之前预估大概周就能搞定,结果花了快个月时间。...插入边比较慢,最主要原因是每插入一条边都需要检索顶点。...社区里面建议是维持 name 索引到顶点id一个 map 存放到内存中,我们没试过,主要感觉有方面问题,第一20亿点需要不少内存,其次因为我们顶点是批量插入,构建这个 map 不是很方便,于是就放弃了这个方案...另一个问题就是如果并行度过高 Hbase 集群能否支撑住。最终需要在这些问题中找到平衡。...gremlin.spark.graphStorageLevel=MEMORY_AND_DISK gremlin.spark.persistContext=true gremlin.spark.graphWriter

    2.7K50

    大数据图:循环点阵

    请注意,幅图像是“相同”20x20点阵——无论网格是否“折叠”,个图形都是同构(即元素能够彼此一一对应)。因此,对于点阵来说重要不是它在二维平面上呈现方式,而是它元素之间是如何连接。...首先必须存在4个角顶点,每个角顶点度数都为2;然后在每边有19个度数为三顶点,假设有4条边,则有76个这样点(19 x 4 = 76);最后,在点阵内部正方形中存在19行每行19列个度数为4顶点...遍历一个有向点阵 假设有一个有向点阵,其中所有的边都指向正下和正右顶点。在这样结构中,左上角顶点只有出度。同样,右下角顶点只有入度。...对于先前绘制1x1点阵,该长度为2。因此,可以在步之后到达右下角顶点。一般来说,一个n×n点阵所需步数是2n。...当计算从顶点(0,0)到(n,n)路径数量时,只有向下和向右个方向允许移动,因此必须有n个下移,n个右移。这意味着总共有2n个移动,因此有n个选择(因为另外n个“选择”是由前面n个选择所确定)。

    3.5K60

    JanusGraph图数据库应用以及知识图谱技术介绍

    支持地理、数值范围和全文搜索对于非常大图中顶点和边。 原生支持 Apache TinkerPop 提供流行属性图数据模型。 原生支持 Gremlin 图遍历语言。...顶点中心索引提供顶点级查询,以缓解臭名昭著超节点问题。 提供优化磁盘表示,以允许有效地使用存储和访问速度。...属性图定义是5元组: = (, , , , ),其中是顶点有限集合,是边有限集合,将边关联到顶点对,为顶点或边赋予标签,为顶点或边关联属性。属性图模型更贴近实际场景,可以很好地描述业务逻辑。...Gremlin API: JanusGraph引入了Apache TinkerPop Gremlin组件,通过Gremlin API提供了开源标准图交互式查询语言接口。...它还支持查询点间最短路径或完全路径,以及使用多种查询语言(包括Gremlin、Cypher、SQL)进行查询、删除、更新等操作。 8.

    25010

    属性图数据库JanusGraph初探

    1.1 Tinkerpop结构 Tinkerpop处理是图结构数据,它结构API基础组件包括如下几部分: Graph:维护点和边集合,数据库访问事务; Element:维护属性和标签(表示元素类型...如果使图系统具有处理功能(OLAP),则需要实现GraphComputer API,它定义了消息或遍历器是如何在工作者(线程或机器)之间进行交互和传递。...,可以把包含数千亿个顶点和边图存储在多机集群上。...所以这个特点是它显著优势。...为此每导入一个顶点数据都会执行如下逻辑:获取要导入顶点id值,查询图中是否有某个顶点bulkLoader.vertex.id值等于id值,如果等于,则使用要插入值,更新该图中已存在顶点属性;如果不存在

    3.6K50

    「数据库深度探索」图型数据库JanusGraph支持知识图谱和图型分析

    我们知道我们并不是唯一想要开源图形数据库的人,所以我们在社区中找到了其他人,一起创建了Titan,并将JanusGraph带到了Linux基金会。...许多开发人员最终需要Neo4j企业版提供可伸缩性和可用性特性,而Neo4j企业版需要商业订阅许可证。 FH:我认为这种图形数据库之间主要存在个区别因素。首先,Neo4j基本上是一个自包含项目。...例如,JanusGraph可以使用Elasticsearch或Apache Solr实现高级索引功能(全文搜索),并使用可伸缩数据库(Apache Cassandra或HBase)存储数据。...我看到其他关键区别因素是这个图形数据库面向用户界面,查询语言是其中中心方面。...对于图模型,另一个需要考虑问题是,某个东西是否应该是一个顶点属性,还是它自己连接到另一个带边顶点另一个顶点

    2.5K20

    linux环境安装可操作图库语言Gremlin图框架HugeGraph

    首先,在数据结构中,图是一种由顶点(vertex)集合及顶点间关系集合组成一种非线性数据结构。...常见图数据库有Neo4j,JanuasGraph,Tigergraph等,其中,Gremlin是一种操作图数据库图语言,它是Apache ThinkerPop框架下图遍历语言。...根据官网上介绍,HugeGraph是一款易用、高效、通用开源图数据库系统(Graph Database),实现了Apache TinkerPop3框架及完全兼容Gremlin查询语言,支持百亿以上顶点和边快速导入...HugeGraph有以下特点: 顶点、边:支持基本增删改查操作,支持有向图,支持顶点间同一类型多条边,支持超级点。...网盘下载地址: 链接:https://pan.baidu.com/s/11qPFOFU-d9nxGEdws4zggQ 提取码:pqpy 利用HugeGraph学习Gremlin,主要只用安装以上个包

    2.1K30

    图数据库调研

    图数据库是所有数据管理系统中成长最快分类,下面分别从图检索语言和图数据库个方面来介绍图数据市场发展。...年排行榜,其继任者 JanusGraph 也在快速跟进中; 此外一些国内还有一些图开源项目, HugeGraph ,将在后面一部分介绍。...Neo4j Neo4j 是目前最流行图形数据库,支持完整事务,在属性图中,图是由顶点(Vertex),边(Edge)和属性(Property)组成顶点和边都可以设置属性,顶点也称作节点,边也称作关系...AWS和微软这个竞争对手在云数据库处理方法上截然不同。...应用程序和Janus Graph处在个不同JVM中,应用通过给JanusGraph提交Gremlin查询给GremlinServer,来使用JanusGraph,因为JanusGraph原生是支持Gremlin

    6.6K30

    伸手党福利-从零开始玩转图库

    , neo4j, janusGraph只是它个组件(图storage-engine)vendor而已。...janusGraph集成了各大开源存储系统,hbase,Cassandra,BerkeleyDB,以及整合开源搜索引擎,solr, ElasticSearch....使用64位顶点Id作Key指向相应顶点邻接表row。每个边或属性在row中都是一个独立cell,并且这些cell可以高效完成插入和删除。...单条边数据布局 ? 每个边或者属性会保存在顶点邻接表rowcell中。序列化之后column数据字节序也反映了原来Edge标签key序。...一个体系ID编码和压缩对象序列化易于使得每个cell保持尽可能少地占用后端存储空间。 一条边信息会被出度、入度vetex保留遍,便于快速定位到邻接节点,可避免表级联查询。

    4.9K30

    分布式图数据库JanusGraph-优势

    (2)支持很大并发事务处理和图操作处理。通过添加机器横向扩展JanusGraph事务处理能力,可以在毫秒级别相应大图复杂查询。...(4)支持在很大图上对顶点和边进行地理位置、数值范围、全文搜索。 (5)原生支持Apache TinkerPop 描述的当前流行属性图数据模型。...(6)原生支持图遍历语言Gremlin。 (7)通过使用非编程方式连接很容易与Gremlin Server集成 (8)提供了很多图级别配置选项用于调节性能。...(9)以顶点为中心索引提供顶点级查询,以缓解臭名昭着超级节点问题。 (10)提供优化磁盘表示,从而允许有效地使用存储和访问速度。...JanusGraph 和 CAP 理论 尽管你付出了最大努力,你系统仍会遇到很多错误,以至于必须在减少输出(:停止响应请求)和降低收获(:响应不完整答案)之间做出选择。

    1.7K30

    分布式图数据库JanusGraph-简介

    (2)支持很大并发事务处理和图操作处理。通过添加机器横向扩展JanusGraph事务处理能力,可以在毫秒级别相应大图复杂查询。...(4)支持在很大图上对顶点和边进行地理位置、数值范围、全文搜索。 (5)原生支持Apache TinkerPop 描述的当前流行属性图数据模型。...(6)原生支持图遍历语言Gremlin。 (7)通过使用非编程方式连接很容易与Gremlin Server集成 (8)提供了很多图级别配置选项用于调节性能。...(9)以顶点为中心索引提供顶点级查询,以缓解臭名昭着超级节点问题。 (10)提供优化磁盘表示,从而允许有效地使用存储和访问速度。...JanusGraph 和 CAP 理论 尽管你付出了最大努力,你系统仍会遇到很多错误,以至于必须在减少输出(:停止响应请求)和降低收获(:响应不完整答案)之间做出选择。

    2.2K20

    DFS序和欧拉序降维打击

    DFS 序应用 3.1 割点 什么是割点? 如果去掉一个节点以及与它连接边,该点原来所在图被分成部分,则称该点为割点。如下图所示,删除 2号节点,剩下节点之间就不能相互到达了。...没有被访问到顶点有4、5、6号顶点。 Tips: 节点边上数字表示时间戳。 其中5和6号顶点都不可能在不经过2号顶点情况下,再次回到已被访问过顶点(1和3号顶点),因此2号顶点是割点。...问题变成如何在深度搜索到 k点时判断,没有被访问过点是否能通过此k或者不能通过此k点回到曾经访问过点。 算法中引入了回溯值概念。...在欧拉序中找到9和6第一次出现位置。 直观比较,知道4号节点是其LCA,特征是9和6之间深度最小节点。 欧拉序求LCA,先求图欧拉序、时间戳(可以记录进入和离开节点时间)以及节点深度。...j=1表示区间长度为 2,值为区间长度为 1个子区间深度值小节点。

    26010

    C++ DFS序与割点、割边,欧拉序与LCA

    DFS 序应用 3.1 割点 什么是割点? 如果去掉一个节点以及与它连接边,该点原来所在图被分成部分,则称该点为割点。如下图所示,删除 2号节点,剩下节点之间就不能相互到达了。...没有被访问到顶点有4、5、6号顶点。 Tips: 节点边上数字表示时间戳。 其中5和6号顶点都不可能在不经过2号顶点情况下,再次回到已被访问过顶点(1和3号顶点),因此2号顶点是割点。...问题变成如何在深度搜索到 k点时判断,没有被访问过点是否能通过此k或者不能通过此k点回到曾经访问过点。 算法中引入了回溯值概念。...在欧拉序中找到9和6第一次出现位置。 直观比较,知道4号节点是其LCA,特征是9和6之间深度最小节点。 欧拉序求LCA,先求图欧拉序、时间戳(可以记录进入和离开节点时间)以及节点深度。...j=1表示区间长度为 2,值为区间长度为 1个子区间深度值小节点。

    9300

    统一元数据:数据血缘

    背景介绍 数据血缘(Data Lineage):是数据治理中元数据管理领域下个子范畴,是数据溯源过程,获得数据产生链路,发现数据关联关系,目的是解决"数据哲学三问":我是谁,我从哪里来,我到哪里去...常见数据血缘主要包括大类: SQL血缘:基于SQL解析AST语法树,获取SQL表、字段血缘; 业务血缘:常为基于任务调度DAG生成数据流向关系; 业界方案 业界实现方案,开源项目数据血缘对比 项目...血缘关系图包括: 表血缘:表信息作为顶点,表之间关系作为边,create table B as select * from A,则source为A表,target为B表; 字段血缘:字段作为顶点,字段之间关系作为边...,字段之间关系是继承自表关系source为A表id字段,target为B表id字段; 血缘识别Visitor模式可基于自底向上递归遍历血缘关系,根据表节点、字段节点维护血缘信息。...根节点信息,SQL解析起点; SQL关键字(绿色框):CREATE、TABLE、EXTERNAL等; SQL表达式(紫色框):每个SQL表达式都维护节点信息; SQL解析器(黄色框):解析指定SQL

    2K95
    领券