Impala 是列式集群数据库吗?

is Impala a columnnar clustered database?

我是大数据及相关领域的新手 tools/technologies。我正在浏览 impala.

的文档

说Impala是集群列式数据库是真的吗? Impala 需要大量内存才能 compute/transform 数据?

Impala 不是数据库。

Impala 是一个 MPP(大规模并行处理)SQL 查询引擎。它是HDFS结构之上的SQL接口。您可以在 Parquet 文件上构建文件结构,Parquet 文件是允许您快速读取数据的柱状文件。

根据Impala documentation:

Impala provides fast, interactive SQL queries directly on your Apache Hadoop data stored in HDFS, HBase, or the Amazon Simple Storage Service (S3). In addition to using the same unified storage platform, Impala also uses the same metadata, SQL syntax (Hive SQL), ODBC driver, and user interface (Impala query UI in Hue) as Apache Hive. This provides a familiar and unified platform for real-time or batch-oriented queries.

Impala使用Hive Metastore来存储每个文件的文件结构和Schema。 Impala 允许您在文件中 运行 SQLs 查询,它将负责并行化集群中的数据。

关于内存的用途,你说对了一部分。 Impala 使用内存绑定执行,Hive 使用基于经典映射减少的磁盘而不是 Tez 执行。在较新版本的 Impala 中,这允许您使用磁盘溢出,这将帮助您处理不适合您记忆的数据。

Impala 与 Apache Hive 元存储数据库集成,以在两个组件之间共享数据库和表。与 Hive 的高度集成以及与 HiveQL 语法的兼容性,让您可以使用 Impala 或 Hive 来创建表、发出查询、加载数据等。

Impala 不是数据库。

Impala 不是基于 Map-Reduce 算法。它实现了一个基于守护进程的分布式架构,负责在同一台机器上 运行 查询执行的所有方面。