Spark SQL 和 Hive 的区别

Sip*_*pra 1 hive apache-spark apache-spark-sql

你能帮我理解 Spark SQl 和 Hive 之间的区别吗?

Lak*_*ini 5

Apache Hive 数据仓库软件有助于读取、写入和管理驻留在分布式存储中并使用 SQL 语法进行查询的大型数据集。

Hive 构建在 Apache Hadoop 之上,提供以下功能:

  • 通过 SQL 轻松访问数据的工具,从而支持数据仓库任务,例如提取/转换/加载 (ETL)、报告和数据分析。
  • 访问直接存储在 Apache HDFS 或其他数据存储系统(如 Apache HBase)中的文件
  • 通过 Hive LLAP、Apache YARN 和 Apache Slider 进行亚秒级查询检索。
  • 一种对各种数据格式强加结构的机制

而 Apache Spark 是一个快速且通用的集群计算系统。它提供了 Java、Scala、Python 和 R 中的高级 API,以及支持通用执行图的优化引擎。它还支持丰富的高级工具集,包括用于 SQL 和结构化数据处理的 Spark SQL。

Spark SQL 是一个用于结构化数据处理的 Spark 模块,其中内存处理是其核心。使用 Spark SQL,可以从任何结构化来源读取数据,如 JSON、CSV、parquet、avro、sequencefiles、jdbc、hive 等。

Spark SQL 也可用于从现有的 Hive 安装中读取数据。因此,Spark SQL 是可用于处理任何结构化数据源的通用模块。