Apache TinkerPop™是用于图形数据库(OLTP)和图形分析的图形计算框架系统(OLAP)。
发布日期:2024年4月8日
Gremlin是Apache TinkerPop的图形遍历语言。Gremlin是一个函数式数据流语言,使用户能够简洁地表达(或)上的复杂遍历查询)其应用程序的属性图。每个Gremlin遍历都由一系列(可能是嵌套的)步骤。
//小鬼的朋友的朋友叫什么名字?g.V().有(“name”,“gremlin”)。out(“knows”).out(“知道”).values(“name”)
//两个朋友创建的项目的名称是什么?g.V()。匹配(as(“a”).out(“knows”).as(“b”),as(“a”).out(“created”).as(“c”),as(“b”).out(“创建”).as(“c”),as(“c”).in(“created”).count().is(2))。选择(“c”).by(“name”)
//在//管理链从Gremlin走向CEO?g.V().有(“name”,“gremlin”)。重复(in(“manages”)。直到(has(“title”,“ceo”))。路径().by(“名称”)
//职位的分布是什么//在Gremlin的合作者中?g.V().具有(“name”,“gremlin”).as(“a”)。out(“created”).in(“creased”)。其中(neq(“a”))。groupCount().by(“标题”)
//获取Gremlin最相关产品的排名//考虑到他的购买历史。g.V().has(“name”,“gremlin”).out(“built”).agregate(“stash”)。in(“已购买”).out(“已买”)。其中(不在(“stash”)内)。groupCount()。order(local).by(值,描述)
图是由顶点和边组成的结构。顶点和边都可以具有任意数量的键/值路径称为属性。顶点表示离散对象,例如人、地方或事件。边表示顶点之间的关系。例如,一个人可能认识另一个人,参与过某项活动,和/或最近参加过某项特定活动地点。
如果用户的域由可以与以多种方式(边)相互连接,那么图形可能是要使用的正确表示。在在图中,每个顶点都被视为可以链接的原子实体(而不仅仅是“表中的行”)或随意添加或删除属性。
数据库支持
TinkerPop得到了二十多个商业和开源软件的广泛支持图形数据库
语言和工具
TinkerPop为Java、Groovy、Python提供官方语言驱动程序。NET,以及NodeJS通过社区贡献提供额外驱动程序
有大量第三方托管工具和应用程序修补程序Pop-兼容
TinkerPop是一个欢迎贡献的开源项目
TinkerPop寻求致力于图形计算艺术的贡献者。修补程序弹出贡献者为团队带来扎实的理论、开发、测试、文档等技能。这些人对TinkerPop的贡献超出了他们日常不断变化的需求并对自己的贡献承担责任。
马克·罗德里格斯(创始人)
年份:2009
Gremlin语言,Gremlin机器,文档
约书亚·西纳维尔(创始人)
图形数据模型、语义和互操作性
凯特里娜·汤普森(委员)
插图画家,《小精灵》的创作者和他的快乐乐队机器人。
史蒂芬马莱特(委员会)
年份:2011
Gremlin控制台/服务器/驱动程序、语言变体和通用核心开发
豪尔赫湾贡德拉(PMC)
年份:2017
图形二进制序列化、JavaScript和。NET库,邮件列表支持。
弗洛里安霍克曼(PMC)
.NET库,邮件列表支持。
开尔文劳伦斯(PMC主席)
Gremlin语言、Python GLV、文档和邮件列表支持。
迪维吉·瓦迪亚(PMC)
年份:2019年
Gremlin服务器-客户端交互。
Ø伊文德·塞伯(委员会)
年份:2021
Gremlint查询格式化程序。
林登·鲍托(委员会)
Python和Go的Gremlin语言变体。
Mike Personick公司(委员会)
年份:2022
希腊语和一般核心发展
戴夫·贝克伯格(委员会)
Gremlin语言、文档、邮件列表和Discord支持
西蒙·赵(委员会)
Golang GLV公司
杨霞(PMC)
Go GLV开发、Docker和Windows构建改进
瓦伦廷·卡哈姆利克(委员会)
Go和Python GLV开发,
里钦·库马尔(委员会)
Ken Hu(肯·胡)(委员会)
年份:2023
一般项目维护
科尔·格里尔(委员会)
ARM支持,服务器/核心/GLV的一般维护
詹姆斯·桑顿(PMC)
年份:2013
宣传、布道。
丹尼尔库皮茨(PMC)
年份:2014
Gremlin语言设计、基准测试、测试、文档,邮件列表支持。
哈德良Zbarcea公司(PMC)
年份:2015
项目导师,供应商liason。
丹尼尔·格鲁诺(PMC)
项目导师、基础设施联络人。
马特·弗兰茨(委员会)
Gremlin语言设计,ts tuckpop。
杰森·普拉德(PMC)
Gremlin控制台/服务器,邮件列表支持。
迪伦·米利金(PMC)
Gremlin服务器/驱动程序,Gremlin-php,GremlinBin,邮件列表支持。
特德·威尔姆斯(PMC)
促销、邮件列表支持、基准测试、sql gremlin。
彼得马丁(委员会)
年份:2016
希腊语,Sqlg。
Jean-Baptiste穆索(委员会)
Gremlin服务器测试、Gremlin驱动程序(Node.js/JavaScript)、,邮件列表支持。
迈克尔波尔迈尔(委员会)
克里姆林语,克里姆林-斯卡拉语。
大卫·布朗(委员会)
Python库、Gremlin服务器测试。
罗伯特·戴尔(PMC)
Gremlin控制台/服务器、文档、邮件列表支持。
严酷的塔卡语(委员会)
年份:2018
Gremlin-SPARQL模块。
加入我们的Discord服务器