案例_Spark SQL实现数据ETL到Hive ODS
Spark SQL还支持读取和写入存储在Apache Hive中的数据。Spark支持两种SQL方言:Spark的SQL方言和Hive查询语言(HQL)。Spark SQL支持HiveQL语法,同时支持Hive SerDes和UDF,可以访问现有的Hive仓库。
同时Spark SQL支持各种数据源,如文件数据源、JDBC数据源等。所以我们可以结合Spark SQL和Hive,很容易地实现数据的ETL操作。接下来,我们将通过示例演示如何通过Spark SQL实现ETL任务,将数据分别从文件或MySQL中抽取到Hive数据仓库的ODS层叠 (数据贴源层)中。
在本案例中,我们将学习到如下内容:
- Spark SQL读写Hive的API;
- 实现从数据文件到Hive ODS的ETL任务;
- 实现从MySQL到Hive ODS的ETL任务;
- Spark整合Hive数据仓库的环境配置;
- IDEA中Spark读写Hive数仓的开发配置。
Spark SQL读写Hive的API介绍
读取Hive表数据
可以使用SparkSession或DataFrameReader的table()方法从一个Hive metastore的注册表中加载一个DataFrame。
例如,我们使用table方法加载Hive表test中的数据:
val df = spark.read.table("test") df.show......
......
抱歉,只有登录会员才可浏览!会员登录