MAPREDUCE服务 MRS-使用MRS Spark SQL访问DWS表:操作步骤

时间:2024-06-13 09:38:53

操作步骤

  1. 准备数据,在 GaussDB (DWS)集群中创建数据库和表:

    1. 登录GaussDB(DWS)管理控制台,单击DWS集群“操作”列的“登录”。
    2. 登录现有GaussDB(DWS)集群的默认数据库gaussdb,执行以下命令,创建数据库“dws_test”。

      CREATE DATABASE dws_test;

    3. 连接到创建的新数据库,执行以下命令,创建表“dws_order”。

      CREATE SCHEMA dws_data;

      CREATE TABLE dws_data.dws_order

      ( order_id VARCHAR,

      order_channel VARCHAR,

      order_time VARCHAR,

      cust_code VARCHAR,

      pay_amount DOUBLE PRECISION,

      real_pay DOUBLE PRECISION );

    4. 执行以下命令插入数据到表“dws_order”中。

      INSERT INTO dws_data.dws_order VALUES ('202306270001', 'webShop', '2023-06-27 10:00:00', 'CUST1', 1000, 1000);

      INSERT INTO dws_data.dws_order VALUES ('202306270002', 'webShop', '2023-06-27 11:00:00', 'CUST2', 5000, 5000);

    5. 查询表数据,验证数据是否插入。

      SELECT * FROM dws_data.dws_order;

  2. 下载GaussDB(DWS)数据库JDBC驱动并上传到 MRS 集群。

    1. 登录GaussDB(DWS)管理控制台,单击左侧的“连接管理”,下载JDBC驱动,如下图所示:

    2. 解压,获取“gsjdbc200.jar”文件,并上传到MRS集群主Master节点,例如上传到“/tmp”目录下。
    3. 使用root用户登录MRS集群主Master节点,执行如下命令:

      cd {客户端安装目录}

      source bigdata_env

      kinit sparkuser (首次认证需要修改密码,未开启Kerberos认证,则无需执行kinit命令。)

      hdfs dfs -put /tmp/gsjdbc200.jar /tmp

  3. 在MRS Spark中创建数据源表,并访问DWS表:

    1. 登录Spark客户端节点,执行如下命令:

      cd 客户端安装目录

      source ./bigdata_env

      kinit sparkuser

      spark-sql --master yarn

    2. 执行如下命令,添加驱动程序jar:

      add jar hdfs://hacluster/tmp/gsjdbc200.jar;

    3. 执行如下命令,在Spark中创建数据源表,访问DWS数据:

      CREATE TABLE IF NOT EXISTS spk_dws_order

      USING JDBC OPTIONS (

      'url'='jdbc:gaussdb://192.168.0.228:8000/dws_test',

      'driver'='com.huawei.gauss200.jdbc.Driver',

      'dbtable'='dws_data.dws_order',

      'user'='dbadmin',

      'password'='xxx');

    4. 查询Spark表,验证显示的数据是否与DWS数据相同:

      SELECT * FROM spk_dws_order;

      可以验证返回的数据与1中所示的数据相同。

support.huaweicloud.com/bestpractice-mrs/mrs_05_0128.html