impala优化 COMPUTE STATS 与COMPUTE INCREMENTAL STATS
详情见 http://impala.apache.org/docs/build/html/topics/impala_compute_stats.html
计算统计声明
COMPUTE STATS语句收集有关表以及所有关联的列和分区中的数据量和分布的信息。该信息存储在metastore数据库中,并由Impala用于帮助优化查询。例如,如果Impala可以确定表是大是小,或者具有许多或很少的不同值,则它可以适当地组织和并行化工作以进行联接查询或插入操作。有关此语句收集的各种信息的详细信息,请 参见表和列统计信息。
句法:
COMPUTE STATS [db_name.]table_name [ ( column_list ) ] [TABLESAMPLE SYSTEM(percentage) [REPEATABLE(seed)]]
column_list ::= column_name [ , column_name, … ]
COMPUTE INCREMENTAL STATS [db_name.]table_name [PARTITION (partition_spec)]
partition_spec ::= simple_partition_spec | complex_partition_spec
simple_partition_spec ::= partition_col=constant_value
complex_partition_spec ::= comparison_expression_on_partition_col
该PARTITION子句只能与该INCREMENTAL子句结合使用 。对于是可选的COMPUTE INCREMENTAL STATS,对于是必需的DROP INCREMENTAL STATS。每当通过or 语句中的子句指定分区时,都必须在规范中包括所有分区列,并为所有分区键列指定常量值。 PARTITION (partition_spec)COMPUTE INCREMENTAL STATSDROP INCREMENTAL STATS
使用注意事项:
最初,Impala依靠用户来运行Hive ANALYZE TABLE语句,但事实证明这种收集统计信息的方法不可靠且难以使用。Impala COMPUTE STATS 语句旨在提高此操作的可靠性和用户友好性。COMPUTE STATS不需要任何设置步骤或特殊配置。您仅运行单个Impala COMPUTE STATS语句来收集表和列统计信息,而不是ANALYZE TABLE 针对每种统计信息单独使用Hive 语句。
对于非增量COMPUTE STATS 语句,可以使用可选的以逗号分隔的列列表来指定要为其计算统计信息的列。
如果没有给出列列表,则该COMPUTE STATS语句为表的所有列计算列级统计信息。这为查询不需要其统计信息的列增加了可能不需要的工作。对于非常宽的表和不需要的大字符串字段,这可能会特别昂贵。
COMPUTE STATS 当无法分析指定的列时(例如,当该列不存在,该列是COMPUTE STATS不受支持的类型时,例如复杂类型的列)或该列为分区列,则返回错误。
如果给出了空的列列表,则不会分析任何列COMPUTE STATS。
在Impala 2.12及更高版本中,TABLESAMPLE表引用后的可选子句指定该COMPUTE STATS 操作仅处理表数据的指定百分比。对于太大而COMPUTE STATS 无法进行完整操作的表,可以COMPUTE STATS与TABLESAMPLE子句一起使用以从表数据样本中推断统计信息。有关实验统计信息外推和采样功能,请参见表和列统计信息。
该COMPUTE INCREMENTAL STATS变体是分区表的快捷方式,它适用于分区的子集而不是整个表。增量性质使其适用于具有多个分区的大型表,在这种情况下,COMPUTE STATS每次添加或删除分区时,一次完整的操作花费的时间太长。有关 完整的用法详细信息,请参见impala_perf_stats.html#perf_stats_incremental。
重要:
对于特定的表,请使用COMPUTE STATS或COMPUTE INCREMENTAL STATS,但切勿将两者结合或在两者之间交替使用。如果您 在表的生存期内从切换COMPUTE STATS到COMPUTE INCREMENTAL STATS,反之亦然,请DROP STATS在进行切换之前通过运行删除所有统计信息 。
COMPUTE INCREMENTAL STATS第一次在表上 运行时,无论表是否已具有统计信息,都将从头开始重新计算统计信息。因此,当COMPUTE INCREMENTAL STATS第一次在给定表上运行时,需要进行一次一次性的资源密集型操作来扫描整个表。
在Impala 3.0及更低版本中,缓存每个分区每列大约需要400字节的元数据。有一个大的分区数和多列的表可以添加到一个显著内存开销为元数据必须在上缓存 catalogd主机和每个上impalad主机有资格成为一个协调者。如果所有表的此元数据超过2 GB,则可能会导致服务停机。在Impala 3.1及更高版本中,通过改进对增量统计信息的处理,此问题得以缓解。
COMPUTE INCREMENTAL STATS仅适用于分区表。如果将 INCREMENTAL子句用于未分区的表,则Impala会自动使用原始 COMPUTE STATS语句。这样的表显示false在输出的 Incremental stats列下SHOW TABLE STATS。
注意:
因为许多最关键性能和资源密集型操作都依赖于表和列统计信息来构建准确而有效的计划,所以这COMPUTE STATS是ETL过程结束时的重要一步。COMPUTE STATS在性能调整(针对慢速查询)或故障排除(针对内存不足情况)期间,第一步是在所有表上运行:
准确的统计信息可帮助Impala为联接查询构建有效的查询计划,从而提高性能并减少内存使用。
准确的统计信息可帮助Impala有效地分配工作,以便将操作插入到Parquet表中,从而提高性能并减少内存使用量。
准确的统计信息可帮助Impala估计每个查询所需的内存,这在使用资源管理功能(例如准入控制和YARN资源管理框架)时非常重要。统计信息有助于Impala实现高并发性,可用内存的充分利用,并避免与其他Hadoop组件的工作负载争用。
在Impala 2.8和更高版本中,当对Parquet表运行COMPUTE STATSor COMPUTE INCREMENTAL STATS语句时,Impala会自动应用查询选项设置 MT_DOP=4以在此CPU密集型操作期间增加节点内并行度。有关此查询选项的功能以及如何将其用于占用大量CPU的SELECT 语句的详细信息,请参见MT_DOP查询选项。
计算分区组的统计信息:
在Impala 2.8和更高版本中,您可以COMPUTE INCREMENTAL STATS 在多个分区上运行,而不是一次运行整个表或一个分区。除了=在PARTITION子句中,还包括比较运算符,并且该COMPUTE INCREMENTAL STATS语句适用于与比较表达式匹配的所有分区。
例如,该INT_PARTITIONS表包含4个分区。如 消息COMPUTE INCREMENTAL STATS所示,以下语句会影响部分但不是全部分区。受影响的分区取决于分区键列 中与子句中的比较表达式匹配的值。 Updated n partition(s)XPARTITION
show partitions int_partitions;
±------±------±-------±-----±-------------±------------------±--------+…
| x | #Rows | #Files | Size | Bytes Cached | Cache Replication | Format |…
±------±------±-------±-----±-------------±------------------±--------+…
| 99 | -1 | 0 | 0B | NOT CACHED | NOT CACHED | PARQUET |…
| 120 | -1 | 0 | 0B | NOT CACHED | NOT CACHED | TEXT |…
| 150 | -1 | 0 | 0B | NOT CACHED | NOT CACHED | TEXT |…
| 200 | -1 | 0 | 0B | NOT CACHED | NOT CACHED | TEXT |…
| Total | -1 | 0 | 0B | 0B | | |…
±------±------±-------±-----±-------------±------------------±--------+…
compute incremental stats int_partitions partition (x < 100);
±----------------------------------------+
| summary |
±----------------------------------------+
| Updated 1 partition(s) and 1 column(s). |
±----------------------------------------+
compute incremental stats int_partitions partition (x in (100, 150, 200));
±----------------------------------------+
| summary |
±----------------------------------------+
| Updated 2 partition(s) and 1 column(s). |
±----------------------------------------+
compute incremental stats int_partitions partition (x between 100 and 175);
±----------------------------------------+
| summary |
±----------------------------------------+
| Updated 2 partition(s) and 1 column(s). |
±----------------------------------------+
compute incremental stats int_partitions partition (x in (100, 150, 200) or x < 100);
±----------------------------------------+
| summary |
±----------------------------------------+
| Updated 3 partition(s) and 1 column(s). |
±----------------------------------------+
compute incremental stats int_partitions partition (x != 150);
±----------------------------------------+
| summary |
±----------------------------------------+
| Updated 3 partition(s) and 1 column(s). |
±----------------------------------------+
复杂类型注意事项:
当前,该COMPUTE STATS语句创建的统计信息不包括有关复杂类型列的信息。复杂列的列统计指标始终显示为-1。对于涉及复杂类型列的查询,Impala使用启发式方法估计此类列中的数据分布。
HBase注意事项:
COMPUTE STATS也适用于HBase表。为HBase表收集的统计信息与由HDFS支持的表收集的统计信息有些不同,但是当HBase表参与联接查询时,该元数据仍用于优化。
Amazon S3注意事项:
COMPUTE STATS也适用于数据驻留在Amazon Simple Storage Service(S3)中的表。有关详细信息,请参阅将Impala与Amazon S3对象存储一起使用。
性能注意事项:
收集的统计信息COMPUTE STATS用于优化INSERT对Parquet表和其他资源密集型SQL语句的联接查询 操作。有关详细信息,请参见表和列统计信息。
对于大型表,该COMPUTE STATS语句本身可能会花费很长时间,并且您可能需要调整其性能。该COMPUTE STATS语句不适用于该 EXPLAIN语句或impala-shell中的SUMMARY命令。您可以在impala-shell中使用该语句来检查整个语句的计时信息。如果基本语句需要很长时间才能处理分区表,请考虑切换到语法,以便每次仅分析新添加的分区。 PROFILECOMPUTE STATSCOMPUTE INCREMENTAL STATS
例子:
此示例显示了两个表T1和T2,其中有少量不同的值通过T1.ID和之间的父子关系链接T2.PARENT。 T1很小,T2大约有10万行。最初,统计信息包括物理度量,例如文件数,总大小,以及固定长度列的大小度量(例如INT类型)。未知值用-1表示。在COMPUTE STATS为每个表运行之后,可通过这些SHOW STATS语句获得更多信息 。如果您正在运行涉及这两个表的联接查询,则将需要两个表的统计信息才能对查询进行最有效的优化。
[localhost:21000] > show table stats t1;
Query: show table stats t1
±------±-------±-----±-------+
| #Rows | #Files | Size | Format |
±------±-------±-----±-------+
| -1 | 1 | 33B | TEXT |
±------±-------±-----±-------+
Returned 1 row(s) in 0.02s
[localhost:21000] > show table stats t2;
Query: show table stats t2
±------±-------±---------±-------+
| #Rows | #Files | Size | Format |
±------±-------±---------±-------+
| -1 | 28 | 960.00KB | TEXT |
±------±-------±---------±-------+
Returned 1 row(s) in 0.01s
[localhost:21000] > show column stats t1;
Query: show column stats t1
±-------±-------±-----------------±-------±---------±---------+
| Column | Type | #Distinct Values | #Nulls | Max Size | Avg Size |
±-------±-------±-----------------±-------±---------±---------+
| id | INT | -1 | -1 | 4 | 4 |
| s | STRING | -1 | -1 | -1 | -1 |
±-------±-------±-----------------±-------±---------±---------+
Returned 2 row(s) in 1.71s
[localhost:21000] > show column stats t2;
Query: show column stats t2
±-------±-------±-----------------±-------±---------±---------+
| Column | Type | #Distinct Values | #Nulls | Max Size | Avg Size |
±-------±-------±-----------------±-------±---------±---------+
| parent | INT | -1 | -1 | 4 | 4 |
| s | STRING | -1 | -1 | -1 | -1 |
±-------±-------±-----------------±-------±---------±---------+
Returned 2 row(s) in 0.01s
[localhost:21000] > compute stats t1;
Query: compute stats t1
±----------------------------------------+
| summary |
±----------------------------------------+
| Updated 1 partition(s) and 2 column(s). |
±----------------------------------------+
Returned 1 row(s) in 5.30s
[localhost:21000] > show table stats t1;
Query: show table stats t1
±------±-------±-----±-------+
| #Rows | #Files | Size | Format |
±------±-------±-----±-------+
| 3 | 1 | 33B | TEXT |
±------±-------±-----±-------+
Returned 1 row(s) in 0.01s
[localhost:21000] > show column stats t1;
Query: show column stats t1
±-------±-------±-----------------±-------±---------±---------+
| Column | Type | #Distinct Values | #Nulls | Max Size | Avg Size |
±-------±-------±-----------------±-------±---------±---------+
| id | INT | 3 | -1 | 4 | 4 |
| s | STRING | 3 | -1 | -1 | -1 |
±-------±-------±-----------------±-------±---------±---------+
Returned 2 row(s) in 0.02s
[localhost:21000] > compute stats t2;
Query: compute stats t2
±----------------------------------------+
| summary |
±----------------------------------------+
| Updated 1 partition(s) and 2 column(s). |
±----------------------------------------+
Returned 1 row(s) in 5.70s
[localhost:21000] > show table stats t2;
Query: show table stats t2
±------±-------±---------±-------+
| #Rows | #Files | Size | Format |
±------±-------±---------±-------+
| 98304 | 1 | 960.00KB | TEXT |
±------±-------±---------±-------+
Returned 1 row(s) in 0.03s
[localhost:21000] > show column stats t2;
Query: show column stats t2
±-------±-------±-----------------±-------±---------±---------+
| Column | Type | #Distinct Values | #Nulls | Max Size | Avg Size |
±-------±-------±-----------------±-------±---------±---------+
| parent | INT | 3 | -1 | 4 | 4 |
| s | STRING | 6 | -1 | 14 | 9.3 |
±-------±-------±-----------------±-------±---------±---------+
Returned 2 row(s) in 0.01s
以下示例显示了如何使用INCREMENTAL在Impala 2.1.0及更高版本中可用的子句。该COMPUTE INCREMENTAL STATS语法使您可以收集新添加或更改的分区的统计信息,而无需重新扫描整个表。
– Initially the table has no incremental stats, as indicated
– ‘false’ under Incremental stats.
show table stats item_partitioned;
±------------±------±-------±---------±-------------±--------±-----------------
| i_category | #Rows | #Files | Size | Bytes Cached | Format | Incremental stats
±------------±------±-------±---------±-------------±--------±-----------------
| Books | -1 | 1 | 223.74KB | NOT CACHED | PARQUET | false
| Children | -1 | 1 | 230.05KB | NOT CACHED | PARQUET | false
| Electronics | -1 | 1 | 232.67KB | NOT CACHED | PARQUET | false
| Home | -1 | 1 | 232.56KB | NOT CACHED | PARQUET | false
| Jewelry | -1 | 1 | 223.72KB | NOT CACHED | PARQUET | false
| Men | -1 | 1 | 231.25KB | NOT CACHED | PARQUET | false
| Music | -1 | 1 | 237.90KB | NOT CACHED | PARQUET | false
| Shoes | -1 | 1 | 234.90KB | NOT CACHED | PARQUET | false
| Sports | -1 | 1 | 227.97KB | NOT CACHED | PARQUET | false
| Women | -1 | 1 | 226.27KB | NOT CACHED | PARQUET | false
| Total | -1 | 10 | 2.25MB | 0B | |
±------------±------±-------±---------±-------------±--------±-----------------
– After the first COMPUTE INCREMENTAL STATS,
– all partitions have stats. The first
– COMPUTE INCREMENTAL STATS scans the whole
– table, discarding any previous stats from
– a traditional COMPUTE STATS statement.
compute incremental stats item_partitioned;
±------------------------------------------+
| summary |
±------------------------------------------+
| Updated 10 partition(s) and 21 column(s). |
±------------------------------------------+
show table stats item_partitioned;
±------------±------±-------±---------±-------------±--------±-----------------
| i_category | #Rows | #Files | Size | Bytes Cached | Format | Incremental stats
±------------±------±-------±---------±-------------±--------±-----------------
| Books | 1733 | 1 | 223.74KB | NOT CACHED | PARQUET | true
| Children | 1786 | 1 | 230.05KB | NOT CACHED | PARQUET | true
| Electronics | 1812 | 1 | 232.67KB | NOT CACHED | PARQUET | true
| Home | 1807 | 1 | 232.56KB | NOT CACHED | PARQUET | true
| Jewelry | 1740 | 1 | 223.72KB | NOT CACHED | PARQUET | true
| Men | 1811 | 1 | 231.25KB | NOT CACHED | PARQUET | true
| Music | 1860 | 1 | 237.90KB | NOT CACHED | PARQUET | true
| Shoes | 1835 | 1 | 234.90KB | NOT CACHED | PARQUET | true
| Sports | 1783 | 1 | 227.97KB | NOT CACHED | PARQUET | true
| Women | 1790 | 1 | 226.27KB | NOT CACHED | PARQUET | true
| Total | 17957 | 10 | 2.25MB | 0B | |
±------------±------±-------±---------±-------------±--------±-----------------
– Add a new partition…
alter table item_partitioned add partition (i_category=‘Camping’);
– Add or replace files in HDFS outside of Impala,
– rendering the stats for a partition obsolete.
!import_data_into_sports_partition.sh
refresh item_partitioned;
drop incremental stats item_partitioned partition (i_category=‘Sports’);
– Now some partitions have incremental stats
– and some do not.
show table stats item_partitioned;
±------------±------±-------±---------±-------------±--------±-----------------
| i_category | #Rows | #Files | Size | Bytes Cached | Format | Incremental stats
±------------±------±-------±---------±-------------±--------±-----------------
| Books | 1733 | 1 | 223.74KB | NOT CACHED | PARQUET | true
| Camping | -1 | 1 | 408.02KB | NOT CACHED | PARQUET | false
| Children | 1786 | 1 | 230.05KB | NOT CACHED | PARQUET | true
| Electronics | 1812 | 1 | 232.67KB | NOT CACHED | PARQUET | true
| Home | 1807 | 1 | 232.56KB | NOT CACHED | PARQUET | true
| Jewelry | 1740 | 1 | 223.72KB | NOT CACHED | PARQUET | true
| Men | 1811 | 1 | 231.25KB | NOT CACHED | PARQUET | true
| Music | 1860 | 1 | 237.90KB | NOT CACHED | PARQUET | true
| Shoes | 1835 | 1 | 234.90KB | NOT CACHED | PARQUET | true
| Sports | -1 | 1 | 227.97KB | NOT CACHED | PARQUET | false
| Women | 1790 | 1 | 226.27KB | NOT CACHED | PARQUET | true
| Total | 17957 | 11 | 2.65MB | 0B | |
±------------±------±-------±---------±-------------±--------±-----------------
– After another COMPUTE INCREMENTAL STATS,
– all partitions have incremental stats, and only the 2
– partitions without incremental stats were scanned.
compute incremental stats item_partitioned;
±-----------------------------------------+
| summary |
±-----------------------------------------+
| Updated 2 partition(s) and 21 column(s). |
±-----------------------------------------+
show table stats item_partitioned;
±------------±------±-------±---------±-------------±--------±-----------------
| i_category | #Rows | #Files | Size | Bytes Cached | Format | Incremental stats
±------------±------±-------±---------±-------------±--------±-----------------
| Books | 1733 | 1 | 223.74KB | NOT CACHED | PARQUET | true
| Camping | 5328 | 1 | 408.02KB | NOT CACHED | PARQUET | true
| Children | 1786 | 1 | 230.05KB | NOT CACHED | PARQUET | true
| Electronics | 1812 | 1 | 232.67KB | NOT CACHED | PARQUET | true
| Home | 1807 | 1 | 232.56KB | NOT CACHED | PARQUET | true
| Jewelry | 1740 | 1 | 223.72KB | NOT CACHED | PARQUET | true
| Men | 1811 | 1 | 231.25KB | NOT CACHED | PARQUET | true
| Music | 1860 | 1 | 237.90KB | NOT CACHED | PARQUET | true
| Shoes | 1835 | 1 | 234.90KB | NOT CACHED | PARQUET | true
| Sports | 1783 | 1 | 227.97KB | NOT CACHED | PARQUET | true
| Women | 1790 | 1 | 226.27KB | NOT CACHED | PARQUET | true
| Total | 17957 | 11 | 2.65MB | 0B | |
±------------±------±-------±---------±-------------±--------±-----------------
文件格式注意事项:
该COMPUTE STATS语句适用于使用Impala支持的任何文件格式创建的表。有关使用不同文件格式的详细信息,请参见Impala如何使用Hadoop文件格式。以下注意事项适用于COMPUTE STATS表的文件格式。
该COMPUTE STATS语句可不受限制地用于文本表。这些表可以通过Impala或Hive创建。
该COMPUTE STATS语句适用于Parquet表。这些表可以通过Impala或Hive创建。
该COMPUTE STATS语句适用于Avro表,不受Impala 2.2 及更高版本的限制。在早期版本中,COMPUTE STATS仅适用于通过Hive创建的Avro表,并且要求该CREATE TABLE语句使用SQL样式的列名和类型,而不是使用Avro样式的架构规范。
该COMPUTE STATS语句可不受限制地与RCFile表一起使用。这些表可以通过Impala或Hive创建。
该COMPUTE STATS语句可无限制地与SequenceFile表一起使用。这些表可以通过Impala或Hive创建。
该COMPUTE STATS语句适用于分区表,无论所有分区都使用相同的文件格式,还是某些分区都定义ALTER TABLE为使用不同的文件格式。
语句类型: DDL
取消:某些多阶段语句(CREATE TABLE AS SELECT和COMPUTE STATS)可以在某些阶段(内部运行INSERT或SELECT内部操作)取消。要取消此语句,请在impala-shell 解释器中使用Ctrl-C,在Hue 的“ 监视”页面中使用“ 取消”按钮 ,或在Impala网站的“ 查询”选项卡上的运行中查询列表(针对特定节点)中使用“ 取消”。UI(端口25000)。
限制条件:
注意: 在Impala 1.4.0之前,COMPUTE STATS计算NULL每列中的值数量, 并将该数字记录在metastore数据库中。由于Impala当前NULL在查询计划期间不使用计数,因此Impala 1.4.0及更高版本COMPUTE STATS 通过跳过此NULL计数来加快语句的速度。
内部细节:
在幕后,该COMPUTE STATS语句执行两个语句:一个通过COUNT(*)函数计算表中每个分区(如果未分区,则为整个表)的行,另一个通过 函数计算每列中不同值的近似数NDV()。您可能会在监视和诊断显示中看到这些查询。影响其他查询的性能,可伸缩性和执行(例如并行执行,内存使用,准入控制和超时)的相同因素也适用于该COMPUTE STATS语句运行的查询 。
HDFS权限:
impalad守护程序在其下运行 的用户ID (通常是impala用户)必须对源目录中的所有受影响的文件具有读取权限:对于未分区表,为所有文件;对于分区表,则为COMPUTE STATS; 或的情况下,分区中的所有文件都没有增量统计信息COMPUTE INCREMENTAL STATS。它还必须对保存数据文件的所有相关目录具有读取和执行权限。(本质上,它COMPUTE STATS需要与SELECT针对表运行的基础查询相同的权限。)
Kudu注意事项:
该COMPUTE STATS语句适用于Kudu表。Impala不会为Kudu表的每个分区计算行数。因此,当您在# Rows的输出列中 看到-1时,无需重新运行该操作SHOW TABLE STATS。对于所有Kudu表,该列始终显示-1。
相关信息:
DROP STATS语句,SHOW TABLE STATS语句, SHOW COLUMN STATS语句,表和列统计
父主题: Impala SQL语句
impala优化 COMPUTE STATS 与COMPUTE INCREMENTAL STATS相关推荐
- Impala优化基本方案
本文源自cloudera官网上的Impala文档,原名为<Impala Performance Guidelines and Best Practices>.主要介绍了为了提升impala ...
- python scipy.stats.norm.cdf_python scipy stats.norm用法及代码示例
正常连续随机变量. 那个地点 (loc)关键字指定平均值.规模 (scale)关键字指定标准差. 作为一个实例rv_continuous类,norm对象从中继承了通用方法的集合(完整列表请参见下文), ...
- Impala命令COMPUTE STATS的解析
Impala命令COMPUTE STATS的解析 COMPUTE STATS主要作用: 收集有关表中数据的容量和分布以及所有相关列和分区的信息.这些信息存储在metastore数据库中,Impala使 ...
- Impala的命令COMPUTE STATS
COMPUTE STATS主要作用: 收集有关表中数据的容量和分布以及所有相关列和分区的信息.这些信息存储在metastore数据库中,Impala使用这些信息来帮助优化查询.例如,如果Impala可 ...
- OLAP(三):Impala介绍 、 (和hive/spark对比)、COMPUTE STATS
一.Impala概述 Impala是用于处理存储在Hadoop集群中的大量数据的MPP(大规模并行处理)SQL查询引擎.与其他Hadoop的SQL引擎相比,它提供了高性能和低延迟.换句话说,Impal ...
- impala元数据放到mysql_impala系列: 同步Hive元数据和收集统计信息
---==================== -- Impala 获取hive 的 metadata ---==================== Impala 通常和Hive共用同一个metad ...
- impala 3.2.0
impala 3.2.0 这里目录 impala 3.2.0 1.架构 1.1.Impala 存储的状态 1.2.Impala元数据和元存储 1.3.查询处理接口 1.4.查询执行过程 2.与hive ...
- Compute Shader次世代优化方案
这是侑虎科技第498篇文章,感谢作者凯奥斯供稿.欢迎转发分享,未经作者授权请勿转载.如果您有任何独到的见解或者发现也欢迎联系我们,一起探讨.(QQ群:793972859) 作者主页:https://z ...
- Impala内存优化
Impala内存优化 一. 引言 Hadoop生态中的NoSQL数据分析三剑客Hive.HBase.Impala分别在海量批处理分析.大数据列式存储.实时交互式分析各有所长.尤其是Impala,自从加 ...
- Impala 在网易有数 BI 应用场景的优化经验
本文总结了Impala在网易有数BI应用场景下的最新查询优化经验,并探讨后续进一步优化的思路.文章首先简述有数BI + Impala在网易云音乐等业务使用时遇到的挑战,再介绍进行有数查询优化的重要工具 ...
最新文章
- MATLAB_7-彩色图像【长长的笔记!】车牌放在文章末尾有链接
- Asp.net系列计划
- CUDA学习日志:常量内存和纹理内存
- mysql ssl连接是什么_mysql 的ssl连接是什么
- C# 遍历窗体控件顺序问题
- sasl java_javaSASL_SSL帐号密码方式访问kafka
- PID控制器开发笔记之一:PID算法原理及基本实现
- win7开启ftp被动模式_FTP服务器在Linux系统上的搭建
- sql server定义_在SQL Server中查看定义权限
- ubuntu16.04之升级python3.5到3.6
- 2017-06-30
- 判断给定的IP地址是否是内网IP
- 找工作,如何写好一份漂亮的简历,给你借鉴一下
- 小程序嵌套h5界面,在h5界面调用小程序的扫一扫功能
- PayPal付款状态解释-中英文对照
- 微信公众号引流的平台有哪些?
- 【Word】编号与文字间距过大
- Ubuntu 声卡解决办法合集
- 百钱买百鸡,3文钱一只公鸡,2文钱一只母鸡,1文钱可以买3个小鸡,要求用100文钱买100只鸡
- 如何使用EXCEL批量检查地址格式?
热门文章
- 解决du df结果不一样的问题
- 动态规划之背包问题——背包三讲(01背包,完全背包,多重背包)
- 怎么修改图片尺寸?如何设置图片宽高?
- FastReport报表控件使用技巧总结
- Python将多个excel文件合并为一个文件
- 服务器扩容申请文档,服务器内存扩容的申请
- 学习Java,可以从事哪些岗位?
- flutter web实现微信网页授权登录
- 谈谈移动硬盘或者手机连接到PC提示“无法访问,拒绝访问”或“您没有访问该设备的权限”的解决办法
- can和could的用法_can和could的区别和用法