暂无搜索历史
Calcite针对SQL parse提供了很多的配置项,可以针对不同的SQL方言进行解析。相关的配置项都存储在SqlParser.Config这个结构中,常见的...
我们在Presto页面,可以通过“Splits”标签页查看整个查询的Timeline信息,如下所示:
我们知道,Calcite一般会有四个阶段:parse、validate、optimize和execute。其中,在parse和validate阶段,会生成一个...
Presto目前支持对resource group配置不同的调度策略,来实现不同类型的调度,参考官方的文档:Resource Groups,相关内容如下所示:
我们在上篇文章【Trino源码学习】Trino源码剖析之plugin加载中,跟着代码一步步分析,梳理了trino在加载plugin的过程中,主要做了哪些事情。归...
最近在研究Trino的相关代码,发现用到了大量的函数式编程和lambda表达式等java8的新特性。刚开始接触门槛比较高,代码阅读也比较费劲,因此希望借这个系列...
Trino中使用了很多的lambda表达式的写法,这点与Impala非常不同。这里简单学习了一些场景下的lambda表达式的用法。具体的例子如下:
最近在调研Trino和Clickhouse的打通问题,简单研究了下Trino对于CH的适配,这里简单总结下。详细的代码提交参见这个commit:Add Clic...
本文主要梳理一下Impala的“statestore-subscriber”相关的metrics,这类metrics主要是在catalog和impalad上存...
Impala的web页面提供了非常丰富的信息,其中就包括各种metrics信息。这些metrics非常多,但是官方也没有专门文档解释,所以有时候也看不明白是什...
了解过Impala的同学都知道,Impala的节点分为BE和FE两个模块,分别是由C++和Java编写的。对于impalad而言,FE端主要是进行SQL的解析,...
我们在LocalCatalog详解之Coordinator处理流程这篇文章中介绍了,在LocalCatalog模式下,coordinator(以下简称c节点)的...
用过Impala的同学都知道,Impala本身引入了一个catalogd服务,来缓存hms和nn中的一些元数据,例如表的信息、文件信息、block信息等。同时,...
在Impala 4.0源码解析之BROADCAST/SHUFFLE代价计算这篇文章中我们提到,Impala在对BROADCAST/SHUFFLE进行代价计算的时...
Impala的hash join目前有两种方式:broadcast和shuffle。关于这两种方式的区别,网上也有很多相关的资料介绍。我们这里来简单介绍下,br...
我们在前面几篇文章,从代码处理层面,详细分析了Impala的ScanRange相关知识,包括FE端的处理、parquet文件的处理、IO thread的处理等,...
在上篇文章中,我们介绍了PerDiskState的unstarted_scan_ranges_这个队列的更新逻辑,主要就是成员的入队和出队。总结下来就是:Hdf...
在上篇文章中,我们主要介绍了ScanRange的构造,以及在FE和BE端的一些处理流程。同时,我们还介绍了IO thead处理模型中一个比较重要的对象Reque...
我们在本系列的前两篇文章中,简单介绍了SQL查询的整个流程以及重写的相关知识。在接下来的这几篇中,会跟大家一起详细学习ScanRange的知识。由于涉及到的内容...
在Impala的HDFS_SCAN_NODE中有一个counter,叫AverageHdfsReadThreadConcurrency,其相关解释如下所示: