创意电子

标题: 图数据库能做些什么?查询语言说了算 [打印本页]

作者: 科技行者    时间: 2021-9-7 18:12
标题: 图数据库能做些什么?查询语言说了算
新一代图数据库已经在市场上站稳脚跟,与之相伴的一代查询语言也应运而生。包括Gremlin、Cypher以及GQL等在内的各类图数据库查询语言,专门资助用户解包图内信息。

                               
登录/注册后可看大图

从本质上讲,统统数据库都必要一种与客户交流的方式,而查询语言的职责正是界说数据库能够做些什么。精良的图数据库查询语言应该以尽可能简单的方式资助开发职员根据数据库内界说的网络提出复杂问题,进而释放出图数据库的强大气力。最初,这些语言各自面向不同的新数据库以专有方案的形式存在,但最近一段时间各查询语言间的开放标准正在加快创建。
在关系数据库领域,SQL(布局化查询语言)多年以来不绝是行业的主导标准。它界说了一种在表内搜索符合特定条件的数据行的核心方法。如果数据跨越多个表,SQL还提供一种表对齐方法,以便将所有信息连接至统一的集合之内。SQL特别擅长查找包含与某些规定相匹配的特定字段的特定条目集合,但也就仅此而已了。
经典关系数据库也能存储图,因此在图数据库出现之前,这也是开发职员所能仰仗的唯一选择。SQL能够回答一部分底子问题,但传统查询语言却往往处理不了那些最有用、最具吸引力的问题。事实上,关系数据库在表达极度复杂关系方面远远不及图数据库,而关系数据库查询的唯一解决方案就是返回大块数据以供客户端软件运行进一步分析。
以是大家应该理解了,图查询语言的诞生是为了回答更为复杂的问题,例如:
图数据库必要多种不同模子,此中某些查询必要跟踪多条链接或跳点。最初,每种图数据库都使用自己的专有查询语言。好在最近几年,图数据库厂商开始添加新的实现并致力于推动开源标准以实现交叉支持。目前最常见的图查询语言包括:
GraphQL——顾名思义,它肯定支持图查询;但GraphQL实际是一种更为通用的查询语言,能够高效搜索大部分文档与关系数据库。它固然也能发掘出一部分图数据库用途,但总体来讲执偾在支持与关系数据库相同的常规查询。
不同查询语言之间存在着一系列本质差别。有些查询语言属于“声明性”,另一些则属于“过程性”。也就是说,有些是让开发者通过编写界说子集的简单规则来声明自己“想干什么”,再由数据库应用这些规则、使用可用的索引构建搜索筹划、再找到统统可能的匹配项。

<span style="color: #333333; --tt-darkmode-color: #A3A3A3;">例如,用户可能必要查找相距10英里之内的所有超过10000美元的银行交易举动,或者是搜索互有接洽而且在过去两周之内没发过新帖的社交媒体用户。这些规则可以包括对标准查询语言(“WHERE AGE




欢迎光临 创意电子 (https://wxcydz.cc/) Powered by Discuz! X3.4