【Hadoop】使用Metorikku框架读取hive数据统计分析写入mysql

一、定义作业文件

  • 作业文件

    • 该文件将包括输入源输出目标和要执行的配置文件的位置,具体内容如下

      bash 复制代码
      metrics:
        - /user/xrx/qdb.yaml   # 此位置为hdfs文件系统目录
      inputs:
      output:
        jdbc:
          connectionUrl: "jdbc:mysql://233.233.233.233:3306/sjjc"
          user: "root"
          password: "123456"
          driver: "com.mysql.jdbc.Driver"
      explain: true
      showQuery: true
  • 配置文件

    • 文件定义了 ETL 的步骤和查询,以及输出的位置和内容。

      bash 复制代码
      steps:
      - dataFrameName: df
        sql:
          select movieId,rating from hive.emp
      output:
      - dataFrameName: df
        outputType: JDBC
        outputOptions:
          saveMode: Append
          dbTable: emp

      该文件使用SQL查询从Hive表中读取数据,并使用JDBC将结果写入MySQL表/

二、上传作业文件和配置文件到hdfs系统

hdfs dfs -put qdb.yaml /user/xrx

三、执行指令

与mysql结合使用要定义数据库驱动,clickhouse及其它数据库使用要引入不同的数据库驱动,将多种数据驱动引擎放入lib文件中,一同加载。

shell 复制代码
#!/bin/bash
Path=/home/xrx
for jar in `ls $Path/lib/*jar`
do
        LIBJARS=$jar,$LIBJARS
done

spark-submit \
--master yarn \
--conf spark.sql.catalogImplementation=hive \
--driver-class-path $LIBJARS \
--jars $LIBJARS \
--class com.yotpo.metorikku.Metorikku metorikku_2.11.jar \
-c /user/xrx/qdb.yaml
相关推荐
健康平安的活着11 小时前
mysql中数据库脚本太大,通过脚本命令修改db名称
数据库·mysql
minji...12 小时前
MySQL数据库 (八) MySQL表的基本查询(下),truncate、group by、聚合函数、分组聚合统计
数据库·mysql·聚合函数·update·分组聚合统计
乐世东方客13 小时前
备份脚本记录(binlog文件+mysql+mongo)
android·数据库·mysql
暴力求解13 小时前
MySQL---数据类型
数据库·mysql
我星期八休息15 小时前
Linux系统编程—mmap文件映射
java·linux·运维·服务器·数据库·mysql·spring
网管NO.116 小时前
MySQL 8.0 JSON 操作 | 新增 / 查询 / 修改,适配新兴业务
数据库·mysql·json
IT策士17 小时前
MySQL 系列:第1篇 数据库时代与MySQL
数据库·mysql
我爱学习好爱好爱18 小时前
Docker Compose部署SpringBoot2+Vue3+redis项目(Rockylinux9.6):MySQL 主从复制实战
redis·mysql·docker
不吃土豆的马铃薯18 小时前
高并发服务器数据库连接池设计详解
服务器·网络·数据库·c++·mysql
Nontee18 小时前
新手数据库进阶:大白话图解MySQL的“官方档案”——Binlog
数据库·mysql