Drill官网文档翻译三:Drill的核心模块

(翻译自Drill官网)

核心模块

下图描述了一个drillbit里的各个组件

下面列出drillbit里的关键组件:

RPC endpoint

Drill开发了一种基于Probobuf的损耗非常低的RPC通信协议来跟客户端打交道。另外,客户端程序也可以使用C++或是JAVA api层来跟Drill交互。客户端可以直接指定跟哪些Drillbit节点打交道,也可以在提交查询前通过zookeeper服务来获取一定数量的drillbit节点信息。
我们推荐客户端总是通过zookeeper,以隔离集群管理的复杂性,不用关心像添加或是删除节点等等。

SQL解析器

Drill 使用calcite 这个开源的SQL解析框架来解析接收到的SQL查询。这个解析组件的输出是一个人类语言无法描述,但是机器易于理解的逻辑计划,这个逻辑计划能够刚好描述这个sql查询。

Storage plugin interface:

Drill为好几种不同的数据源充当上面的查询层的角色。Drill里的存储层插件就描述了Drill怎样和这些数据源交互的抽象。存储插件给Drill提供以下信息:

  1. 在数据源里能得到的元数据;
  2. Drill读写数据源的接口;
  3. 数据的位置 ,以及一系列优化规则,这些优化规则能够让在特定的数据源上的drill规则执行的更高效;

在Hadoop的场景下,Drill是在提供了存储插件来处理分布式的文件和HBase.Drill也通过提供存储插件来集成了Hive的支持。

当用户通过Drill来查询文件或是HBase,他们可以直接执行,如果Hive有定义元数据的话,也可以通过Hive来执行。Drill集成Hive仅仅是为了元数据,Drill处理任何请求的时候都不执行Hive的查询执行引擎。

时间: 2024-09-25 02:43:43

Drill官网文档翻译三:Drill的核心模块的相关文章

Drill官网文档翻译四 Drill的性能

(翻译自apache drill 官网.) Drill是从地基开始就奔向高性能和大数据集去设计的,下面列出来的是Drill能够做到高性能的核心要点. 分布式的引擎 Drill提供了一个强大的分布式引擎来处理查询.用户可以从集群的任何一个节点是提交查询.你可以添加新的节点到集群中,以为了支持更多用户的更多数据,或是获得更好的性能. 列式执行 通过使用一种纯内存的分层的,列式的数据模型,Drill同时为列式存储,列式执行都做了优化.当数据是存储在列式存储的文件上时(比如像Parquet)Drill会

Drill官网文档翻译二:Drill查询的执行

(翻译自Drill官网) 当您提交Drill查询的时候,客户端或应用程序会把查询以SQL语句的形式发送到Drill集群的一个Drillbit.Drillbit是在每个在线的Drill节点上运行的进程,它负责协调,规划和执行查询,并按照最大限度地实现数据本地化的原则在集群中分发查询. 下图描述了客户端,应用和drillbit之前的通信: 从客户端或应用端接收查询的那个drillbit会成为这个查询是的"接待员",会负责驱动整个查询.这个"接待员"drillbit进程中

Drill官网文档翻译一 基本架构

(翻译自apache drill 官网) 架构总览 Apache drill是在大规模数据集场景下,可以低延迟地进行结构和半结构化/嵌套数据结构查询的一个分布式查询引擎.受到谷歌公司的Dremel的启发,Drill被设计出来以支持几千个节点和PB级别的数据规模下,支持交互响应级别的商务智能分析和查询. Drill也适用到在大规模数据集场景下进行简单而迅速的查询.Drill能够查询像是JSON或是Parquet这种嵌套的数据,也能动态地发现schema.Drill并不需要一个中央的元数据库. 顶层

Drill官网文档翻译五:连接到数据源

存储插件是Drill中,连接到数据源的模块.一个存储插件通常会优化Drill查询的执行,提供数据的定位,命名空间下的配置和读数据要用到的格式.Drill已经内置了一些存储插件,你只需要根据你的环境配置一下就可以使用了.借助存储插件,你可以连接到各种数据源,像数据库,本地或是分布式的文件,或是Hive数据库. 你可以修改一个存储插件的默认配置X,并给一个新的唯一的名字"Y".这个新的文档就会把Y当成一个完全不同的插件,虽然它本身只是原有插件重新配置了一下.当你执行一个drill查询的时候

Drill官网文档翻译六:存储插件的注册

我们可以通过存储插件连接到本地文件系统,Hive,HBase,或是其他的数据源.在Drill的web界面的存储插件配置tab,你可以查看修改这些插件的配置.如果不支持HTTPS(默认就没有),你可以访问HTTP://{IP}:8047/storage 来查看和配置存储插件.可以用IP,也可以用hostname.如果开启了https的支持,你可以通过https://{IP}:8047/storage来访问. Drill 默认开启了cp,dfs,hbase,hive和mongodb的插件支持. cp

政府部门官网近三成成摆设:部分已有5年未更新

南都漫画:勾犇 存在更新迟缓.缺乏维护等问题,市府办政务公开科负责人表示将督促相关部门解决 近日来,有不少市民向南都记者投诉,称一些政府部门的网站成了摆设,其中内容陈旧,有些网站甚至已有5年未更新. 南都记者就此对市政府各职能部门官网进行调查发现,近三成网站存在更新迟缓.缺乏维护等问题.另外,不少网站都没有公布各部门的热线电话,部分已公布的电话号码也存在上班时间无人接听.空号甚至变成住宅电话的情况. 市府办政务公开科负责人表示,对于市直部门网站信息滞后问题,将会督促相关部门解决. 问题1 栏目无

【原创】RabbitMQ官网文档翻译 -- Highly Available Queues

      为了方便工作中使用,对 RabbitMQ 的[高可用]相关文档进行了翻译,鉴于自己水平有限,翻译中难免有纰漏产生,如果疑问,欢迎指出探讨.此文以中英对照方式呈现. 官方原文:http://www.rabbitmq.com/ha.html ============== 我是分割线 =============== Highly Available Queues高可用 queue If your RabbitMQ broker consists of a single node, then

【原创】RabbitMQ官网文档翻译 -- Clustering Guide

      为了方便工作中使用,自己花费了周末空闲的时间对 RabbitMQ 的集群配置相关文档进行了翻译,鉴于自己水平有限,翻译中难免有纰漏产生,如果疑问,欢迎指出探讨.此文以中英对照方式呈现. 官方原文:http://www.rabbitmq.com/clustering.html ============== 我是分割线 ================ Clustering Guide集群配置 A RabbitMQ broker is a logical grouping of one

点击修正药业官网进入黄色网站

4月17日消息,这两日有毒胶囊一事闹得沸沸扬扬,网友调侃自己免疫力真强,对于各大涉事药企则是气愤不已.而中国黑客则是连续黑掉3家涉事药企官网,并警告药企要做良心企业.其中,因"毒胶囊由下脚料制成"导致铬含量超标的修正药业,其官网在被黑短暂恢复后,今日第三次被黑客攻陷. 有毒胶囊由皮革下脚料制成 修正药业官网第三次被黑 今日,访问修正药业官网(www.china-xiuzheng.com),则其页面将会自动跳转到一个黄色网站,且该名为"色域色吧"的黄色网站目前尚处于开