当前位置: 首页 > news >正文

Spark-SQL与Hive集成及数据分析实践

一、Spark-SQL连接Hive的配置

Spark-SQL支持与Hive无缝集成,可通过以下方式操作Hive:

1. 内嵌Hive:无需额外配置,直接使用,但生产环境不推荐。

2. 外部Hive:

   将`hive-site.xml`、`core-site.xml`、`hdfs-site.xml`复制到Spark的`conf/`目录。

   将MySQL驱动放入`jars/`目录,重启Spark服务即可连接Hive元数据。

3. 代码操作Hive:

   - 添加依赖`spark-hive`和`hive-exec`,配置`SparkSession`时启用Hive支持:

     ```scala

     val spark = SparkSession.builder()

         .enableHiveSupport()

         .config("spark.sql.warehouse.dir", "hdfs://node01:9000/user/hive/warehouse")

         .getOrCreate()

     ```

   若遇权限问题,可设置`System.setProperty("HADOOP_USER_NAME", "node01")`。

二、实验:统计有效数据及用户分布

实验目标

统计满足条件(uid、phone、addr均非空)的有效数据条数,并找出用户数量最多的前20个地址。

实现步骤

1. 数据预处理:

   使用`get_json_object`解析JSON格式数据,提取所需字段:

   ```sql

   SELECT

       get_json_object(json_column, '$.uid') AS uid,

       get_json_object(json_column, '$.phone') AS phone,

       get_json_object(json_column, '$.addr') AS addr

   FROM raw_table

   ```

2. 过滤有效数据:

   ```sql

   CREATE TEMPORARY VIEW valid_data AS

   SELECT * FROM parsed_table

   WHERE uid IS NOT NULL AND phone IS NOT NULL AND addr IS NOT NULL

   ```

3. 统计结果:

   - 有效数据总数:

     ```sql  

 

 

 

 

相关文章:

  • Android15沉浸式界面顶部有问题
  • jinjia2将后端传至前端的字典变量转换为JS变量
  • TM1640学习手册及示例代码
  • 傲来云分享,负载均衡:提升网站性能与稳定性
  • 13.QT-DateTime Edit|Dial|Slider|日期计算器|调整窗口透明度|调整窗口大小|自定义快捷键(C++)
  • 在 UE5 编辑器中,由于游戏设置 -> EV100 设置,点击播放前后的光照不同。如何保持点击播放前后的光照一致?
  • 【HDFS入门】深入解析DistCp:Hadoop分布式拷贝工具的原理与实践
  • 利用课程编辑器创新教学,提升竞争力​
  • 【Spring Boot基础】MyBatis的基础操作:日志、增删查改、列名和属性名匹配 -- 注解实现
  • Kafka 生产者的幂等性与事务特性详解
  • C++--负载均衡在线OJ
  • Java 性能优化:如何利用 APM 工具提升系统性能?
  • 怎样用 esProc 将数据集中重复内容置空
  • .NET WPF 三维模型
  • 蓝桥杯 16.对局匹配
  • GPU高效利用率实战揭秘:蓝耘元生代VS传统云平台的降维打击
  • 解析三大中间件:Nginx、Apache与Tomcat
  • AOSP Android14 Launcher3——远程窗口动画关键类SurfaceControl详解
  • Unreal 如何实现一个Vehicle汽车沿着一条指定Spline路径自动驾驶
  • 应用层核心协议详解:HTTP, HTTPS, RPC 与 Nginx
  • 浙江桐乡征集涉企行政执法问题线索,含乱收费、乱罚款、乱检查等
  • 外媒:罗马教皇方济各去世
  • 广东省东莞市委原书记、市人大常委会原主任徐建华被开除党籍
  • 南阳市委副书记、政法委书记金浩任内落马
  • 京东:自21日起,所有超时20分钟以上的外卖订单全部免单
  • 观察|如何推动再保险交易规模上量增加话语权,行业在临港新片区共倡议