• 沒有找到結果。

DGC数据开发模块可管理多种大数据服务,提供一站式的大数据开发环境、全托管的 大数据调度能力,极大降低用户使用大数据的门槛,帮助您快速构建大数据处理中 心。

使用DGC数据开发,用户可进行数据管理、数据集成、脚本开发、作业开发、版本管 理、作业调度、运维监控等操作,轻松完成整个数据的处理分析流程。

在DGC数据开发模块中,您将完成以下步骤:

1.

数据管理

2.

脚本开发

3.

作业开发

a. 历史数据到源数据表,使用批量数据迁移将历史数据从OBS导入到SDI贴源层 的原始数据表。

b. 历史数据清洗,使用数据开发的MRS Hive SQL脚本将源数据表清洗之后导入 DWI层的标准出行数据表。

c. 将基础数据插入维度表中。

d. 将DWI层的标准出行数据导入DWR层的事实表中。

e. 数据汇总,通过Hive SQL将出租车行程订单事实表中的数据进行汇总统计并 写入汇总表。

4.

运维调度

数据管理

数据管理功能可以协助用户快速建立数据模型,为后续的脚本和作业开发提供数据实 体。主要包含建立数据连接、新建数据库、新建数据表等操作。

在本例中,相关数据管理操作已经在步骤2:准备工作中完成,本步骤可跳过。

脚本开发

步骤1 登录DGC控制台。选择对应工作空间的“数据开发”模块,进入数据开发页面。

3-80 选择数据开发

步骤2 在DGC控制台左上角,单击模块下拉列表并选择“数据开发”,进入数据开发控制 台。

步骤3 在左侧导航栏中,单击“脚本开发”,再右键单击“脚本”选择“新建目录”,在弹 出框中输入目录名称例如“transport”,然后单击“确定”。

步骤4 在脚本目录树中,右键单击目录名称transport,选择菜单“新建Hive SQL脚本”。

步骤5 在新建的HIVE_untitled脚本中,选择数据连接mrs_hive_link,选择数据库 demo_dwr_db,然后输入脚本内容。

3-81 编辑脚本

该脚本用于将付款方式、费率代码、供应商的基本信息写入到相应的维度表中。脚本 内容如下:

truncate table dim_payment_type;

truncate table dim_rate_code;

truncate table dim_vendor;

INSERT INTO dim_payment_type VALUES ("1","Credit card");

INSERT INTO dim_payment_type VALUES ("2","Cash");

INSERT INTO dim_payment_type VALUES ("3","No charge");

INSERT INTO dim_payment_type VALUES ("4","Dispute");

INSERT INTO dim_payment_type VALUES ("5","Unknown");

INSERT INTO dim_payment_type VALUES ("6","Voided trip");

INSERT INTO dim_rate_code VALUES ("1","Standard rate");

INSERT INTO dim_rate_code VALUES ("2","JFK");

INSERT INTO dim_rate_code VALUES ("3","Newark");

INSERT INTO dim_rate_code VALUES ("4","Nassau or Westchester");

INSERT INTO dim_rate_code VALUES ("5","Negotiated fare");

INSERT INTO dim_rate_code VALUES ("6","Group ride");

INSERT INTO dim_vendor VALUES ("1","A Company");

INSERT INTO dim_vendor VALUES ("2","B Company");

步骤6 单击“运行”按钮,测试脚本是否正确。

3-82 运行脚本

步骤7 测试通过后,单击“保存并提交版本”按钮,在弹出框中输入脚本名称如:

demo_taxi_dim_data,选择保存的脚本路径并提交版本。

3-83 保存脚本

3-84 提交脚本版本

步骤8 重复步骤5~步骤7的步骤,完成如下脚本的创建。

1. 脚本名称:demo_etl_sdi_dwi,该脚本用于将SDI贴源层的原始数据写入到DWI层 的标准出行数据表中。脚本内容如下:

INSERT INTO

demo_dwi_db.dwi_taxi_trip_data SELECT

`vendorid`,

`tpep_dropoff_datetime`,

'(\\d{2})/(\\d{2})/(\\d{4}) (\\d{2}):(\\d{2}):(\\d{2}) (.*)', '$3-$1-$2 $4:$5:$6'

) as TIMESTAMP ), `passenger_count`, `trip_distance`, `ratecodeid`, `store_fwd_flag`, `pulocationid`, `dolocationid`, `payment_type`, `fare_amount`, `extra`, `mta_tax`, `tip_amount`, `tolls_amount`,

`improvement_surcharge`, `total_amount`

FROM demo_sdi_db.sdi_taxi_trip_data WHERE

trip_distance > 0 and total_amount > 0

and payment_type in (1, 2, 3, 4, 5, 6) and vendorid in (1, 2)

and ratecodeid in (1, 2, 3, 4, 5, 6)

and tpep_pickup_datetime < tpep_dropoff_datetime and tip_amount >= 0

and fare_amount >= 0 and extra >= 0

and mta_tax >= 0 and tolls_amount >= 0

and improvement_surcharge >= 0 and total_amount >= 0

and (fare_amount + extra + mta_tax + tip_amount + tolls_amount + improvement_surcharge) = total_amount;

2. 脚本名称:demo_etl_dwi_dwr_fact,该脚本用于将DWI层的标准出行数据写入到 DWR层的事实表中。脚本内容如下:

INSERT INTO

demo_dwr_db.fact_stroke_order SELECT

rate_code_id, vendor_id, payment_type, tpep_dropoff_datetime, tpep_pickup_datetime, pu_location_id, do_location_id, fare_amount, extra, mta_tax, tip_amount, tolls_amount,

improvement_surcharge, total_amount

FROM demo_dwi_db.dwi_taxi_trip_data;

----结束

作业开发

1. 在DGC数据开发控制台的左侧导航栏中,单击“作业开发”,然后右键单击“作 业”选择菜单“新建目录”,在目录树下根据需要创建作业目录,例如

“transport”。

2. 右键单击作业目录,在弹出菜单中单击“新建作业”。

3-85 作业

3-86 新建批处理作业

4. 如下图所示,编排批作业。

3-87 编排作业

每个节点配置如下:

source_sdi节点:为CDM Job节点,通过CDM节点将OBS上的数据导入到 MRS Hive的原始表中。其中CDM集群名称和作业名称分别选择在步骤3:数

据集成中的集群和迁移作业(图中仅为示例,以实际集群名和迁移作业名为

准)。

3-88 source_sdi 节点属性

demo_etl_sdi_dwi节点:为MRS Hive SQL节点,用于清洗过滤SDI贴源层上 原始表中的数据,将合法数据写入规范设计中DWI层标准出行数据表

3-89 demo_etl_sdi_dwi 节点属性

dwi数据监控节点:为Data Quality Monitor节点,用于监控DWI层的标准出 行数据的质量。其中,“数据质量规则名称”请选择发布DWI层标准出行数 据表时自动生成的质量规则“标准出行数据”。

3-90 dwi 数据监控节点

demo_etl_dwi_dwr_fact节点:为MRS Hive SQL节点,用于将DWI上的原 始数据写入DWR层的事实表fact_stroke_order中。其中,“SQL脚本”请选 择在脚本开发中创建的脚本demo_etl_dwi_dwr_fact。

3-91 demo_etl_dwi_dwr_fact 节点属性

– 码表维度数据填充节点:为MRS Hive SQL节点,用于将付款方式、费率代码 和供应商的集成数据写入DWR层相应的维度表中。其中,“SQL脚本”请选 择在脚本开发中创建的脚本demo_taxi_dim_data。

3-92 码表维度数据填充节点属性

3-93 等待节点

– 按付款方式汇总统计节点:为MRS Hive SQL节点,按付款方式维度统计汇总 截止到当前日期的收入。该节点是从发布汇总表“付款方式统计汇总”时自 动生成的数据开发作业(作业名称以demo_dm_db_dws_payment_type_开 头,命名规则为“数据库名称_汇总表编码”)中拷贝的,拷贝节点后需手动 配置该节点的“数据连接”和“数据库”参数,“数据库”需设置为事实表 所在的数据库。

说明

数据开发作业自动生成功能需在管理配置中心中勾选“创建数据开发作业”实现。

3-94 按付款方式汇总统计节点属性

“数据库名称_汇总表编码”)中拷贝的,拷贝节点后需手动配置该节点的

“数据连接”和“数据库”参数,“数据库”需设置为事实表所在的数据 库。

3-95 按费率汇总统计节点属性

命名规则为“数据库名称_汇总表编码”)中拷贝的,拷贝节点后需手动配置 该节点的“数据连接”和“数据库”参数,“数据库”需设置为事实表所在 的数据库。

3-96 按供应商汇总统计节点属性

3-97 Dummy_finish 节点

5. 作业编排好之后,您可以通过测试运行来测试作业编排是否正确。

3-98 测试运行

6. 您可以根据需要,配置作业的调度方式。单击画布空白处,在点击右侧“调度配 置”页签,展开配置页面。当前支持单次调度、周期调度和事件驱动调度作业。

3-99 配置作业的调度方式

7. 调度配置完成后,您需要单击“保存并提交版本”按钮保存作业并提交作业版 本。然后单击“执行调度”来启动作业的调度。

3-100 保存并提交作业与执行调度

1. 在数据开发主界面的左侧导航栏,选择“运维调度 > 作业监控”。

2. 单击“批作业监控”页签,进入批作业监控界面。

3. 批作业监控提供了对批处理作业的状态进行监控的能力。您可以查看批作业的调 度状态、调度频率、调度开始时间等信息,勾选作业名称前的复选框,并进行

“执行调度”/“停止”/“通知配置”,相应操作。

3-101 批量处理作业

4. 单击左侧导航栏,选择“运维调度 > 实例监控”,进入实例监控界面。

在运维调度的“实例监控”页面,可以查看作业实例的运行详情以及运行日志 等。

3-102 实例监控

5. 作业运行成功后,您可以在DGC数据资产中查看汇总表的数据预览,具体操作请 参见步骤8:数据资产管理。您也可以在数据开发的“脚本开发”页面新建一个 Hive SQL脚本,执行以下命令查询结果,执行成功后返回类似如下的结果:

3-103 查询结果