在线精品99_中国九九盗摄偷拍偷看_91免费版在线观看_91.app_91高清视频在线_99热最新网站

Nebula 架构剖析系列(二)图数据库的查询引擎设计

143次阅读
没有评论

共计 1736 个字符,预计需要花费 5 分钟才能阅读完成。

自动写代码机器人,免费开通
摘要

上文(存储篇)说到数据库重要的两部分为存储和计算,本篇内容为你解读图数据库 Nebula 在查询引擎?Query Engine?方面的设计实践。

在 Nebula 中,Query Engine 是用来处理 Nebula 查询语言语句(nGQL)。本篇文章将带你了解 Nebula Query Engine 的架构。

Nebula 架构剖析系列(二)图数据库的查询引擎设计

上图为查询引擎的架构图,如果你对 SQL 的执行引擎比较熟悉,那么对上图一定不会陌生。Nebula 的 Query Engine?架构图和现代 SQL 的执行引擎类似,只是在查询语言解析器和具体的执行计划有所区别。

Session Manager

Nebula 权限管理采用基于角色的权限控制(Role Based Access Control)。客户端第一次连接到 Query Engine?时需作认证,当认证成功之后 Query Engine?会创建一个新 session,并将该 session ID?返回给客户端。所有的?session?统一由 Session Manger 管理。session?会记录当前 graph space 信息及对该 space 的权限。此外,session?还会记录一些会话相关的配置信息,并临时保存同一?session 内的跨多个请求的一些信息。

客户端连接结束之后 session?会关闭,或者如果长时间没通信会切为空闲状态。这个空闲时长是可以配置的。br / 客户端的每个请求都必须带上此?session ID,否则?Query Engine 会拒绝此请求。

Storage Engine 不管理 session,Query Engine 在访问存储引擎时,会带上 session 信息。

Parser

Nebula 架构剖析系列(二)图数据库的查询引擎设计

Query?Engine 解析来自客户端的 nGQL 语句,分析器 (parser) 主要基于著名的 flex / bison 工具集。字典文件(lexicon)和语法规则(grammar)在 Nebula 源代码的?src/parser? 目录下。设计上,nGQL 的语法非常接近 SQL,目的是降低学习成本。图数据库目前没有统一的查询语言国际标准,一旦 ISO/IEC 的图查询语言(GQL)委员会发布 GQL 国际标准,nGQL 会尽快去实现兼容。br / Parser 构建产出的抽象语法树(Abstrac Syntax Tree,简称?AST)会交给下一??椋篍xecution Planner。http://m.qd8.com.cn/yiyao/xinxi21_3709996.html

Execution Planner

Nebula 架构剖析系列(二)图数据库的查询引擎设计

执行计划器(Execution Planner)负责将抽象树 AST 解析成一系列执行动作 action(可执行计划)。action 为最小可执行单元。例如,典型的 action 可以是获取某个节点的所有邻节点,或者获得某条边的属性,或基于特定过滤条件筛选节点或边。当抽象树 AST 被转换成执行计划时,所有 ID 信息会被抽取出来以便执行计划的复用。这些?ID 信息会放置在当前请求 context 中,context 也会保存变量和中间结果。焦作国医胃肠专科医院:http://jz.lieju.com/zhuankeyiyuan/37845056.htm/

Optimization

Nebula 架构剖析系列(二)图数据库的查询引擎设计

经由 Execution Planner 产生的执行计划会交给执行优化框架 Optimization,优化框架中注册有多个 Optimizer。Optimizer?会依次被调用对执行计划进行优化,这样每个 Optimizer 都有机会修改(优化)执行计划。最后,优化过的执行计划可能和原始执行计划完全不一样,但是优化后的执行结果必须和原始执行计划的结果一样的。郑州治疗不孕不育医院:http://rgsj.zzfkyy120.com/

Execution

Nebula 架构剖析系列(二)图数据库的查询引擎设计

Query Engine?最后一步是去执行优化后的执行计划,这步是执行框架(Execution Framework)完成的。执行层的每个执行器一次只处理一个执行计划,计划中的 action 会挨个一一执行。执行器也会一些有针对性的局部优化,比如:决定是否并发执行。针对不同的 action 所需数据和信息,执行器需要经由 meta service 与 storage engine 的客户端与他们通信。

向 AI 问一下细节

丸趣 TV 网 – 提供最优质的资源集合!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-12-18发表,共计1736字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)
主站蜘蛛池模板: 国产露脸精彩对白一区 | 日韩a级一片 | 久久精品亚洲欧美va | 黄a视频 | 一区二区三区 亚洲区 | 亚洲熟妇自偷自拍另欧美 | 久久久久亚洲av片无码v | 成人在线播放 | 毛片大片| 国产破处| 日本一级毛片视频网站 | 精品一区二区三区视频日产 | 麻豆免费在线播放 | 国产免费一区二区三区最新 | 亚洲一区二区三区四区视频 | 欧洲女同免费视频网站 | 偷拍自怕在线视频免费 | 亚洲国产精品乱码在线观看97 | 日韩一区二区三区四区 | 欧美一区二区三区大片 | 国产色91| 日本三级黄色片网站 | 亚无码乱人伦一区二区 | 久草免费在线观看视频 | 天天操天天插天天射 | 99久久久无码国产精品试看 | 9丨精品国产高清自在线看 a 'v片欧美日韩在线 | 国产一级爱c片免费播放 | a久久| 久久99热狠狠色精品一区 | 精品性高朝久久久久久久 | 成年人色网站 | 欧美国产中文字幕 | 精品久久成人 | 伊人网在线视频 | 亚洲精品久久久久久动漫 | 国产av无码专区亚洲awww | 亚洲a影院| 东京热人妻系列无码专区 | 尤物视频在线观看入口 | 亚洲国产精品无码一线岛国 |