同步目标表为Dataphin平台进行业务数据加工的表(即该业务所在项目中的计算源中的表)。本文为您介绍如何创建数据同步的目标表。

目前,Dataphin平台为您提供两种(即席查询和代码任务)新建目标表的方式。

通过即席查询的方式新建目标表

  1. 登录Dataphin
  2. 在Dataphin首页,单击顶部菜单栏的研发,进入研发页面。
  3. 选择开发 > 即席查询,进入即席查询页面。
  4. 新建即席查询文件夹:
    1. 单击即席查询后的fagaga
    2. 新建文件夹弹框中,填写文件夹名称后,单击确定,完成即席查询文件夹的创建。
  5. 新建即席查询文件:
    1. 单击即席查询后的gaaga
    2. 新建文件弹框中,填写文件的名称描述选择目录后,单击确定,完成即席查询文件的创建。
  6. 编写代码:
    1. 根据业务场景,编写创建同步目标表的SQL语句,例如。
      -- Table<store_sales (23 cols)  partition=ss_sold_date_sk>
      drop table if exists store_sales;
      create table if not exists store_sales(
            ss_sold_date_sk bigint
      ,     ss_sold_time_sk bigint
      ,     ss_item_sk bigint
      ,     ss_customer_sk bigint
      ,     ss_cdemo_sk bigint
      ,     ss_hdemo_sk bigint
      ,     ss_addr_sk bigint
      ,     ss_store_sk bigint
      ,     ss_promo_sk bigint
      ,     ss_ticket_number bigint
      ,     ss_quantity int
      ,     ss_wholesale_cost double
      ,     ss_list_price double
      ,     ss_sales_price double
      ,     ss_ext_discount_amt double
      ,     ss_ext_sales_price double
      ,     ss_ext_wholesale_cost double
      ,     ss_ext_list_price double
      ,     ss_ext_tax double
      ,     ss_coupon_amt double
      ,     ss_net_paid double
      ,     ss_net_paid_inc_tax double
      ,     ss_net_profit double
      )
      partitioned by (ds string)
    2. 完成编写后,单击执行,查看运行SQL结果是否成功。

      同时您也可以单击预编译,检验SQL语句是否复合规范。如果不复合规范,则单击格式化,系统自动调整您编写的SQL语句,使得其符合规范。

  7. SQL运行成功后,单击页面右上方的gagag,完成即席查询的新建。

通过代码任务的方式新建目标表。

  1. 登录Dataphin
  2. 在Dataphin首页,单击顶部菜单栏的研发,进入研发页面。
  3. 选择开发 > 数据处理 > 代码任务,进入代码任务页面。
  4. 新建代码任务文件夹:
    1. 单击代码任务后的fagaga
    2. 新建文件夹弹框中,填写文件夹名称后,单击确定,完成代码任务文件夹的创建。
  5. 新建代码任务文件:
    1. 单击代码任务后的gaaga后,选择MAX_COMPUTE_SQL
    2. 新建文件弹框中,填写文件的名称调度类型描述选择目录后,单击确定,完成代码任务文件的创建。
  6. 编写代码:
    1. 根据业务场景,编写创建同步目标表的SQL语句,例如。
      -- Table<customer (18 cols)>
      
      drop table if exists customer;
      create table if not exists customer(
            c_customer_sk bigint
      ,     c_customer_id string
      ,     c_current_cdemo_sk bigint
      ,     c_current_hdemo_sk bigint
      ,     c_current_addr_sk bigint
      ,     c_first_shipto_date_sk bigint
      ,     c_first_sales_date_sk bigint
      ,     c_salutation string
      ,     c_first_name string
      ,     c_last_name string
      ,     c_preferred_cust_flag string
      ,     c_birth_day int
      ,     c_birth_month int
      ,     c_birth_year int
      ,     c_birth_country string
      ,     c_login string
      ,     c_email_address string
      ,     c_last_review_date_sk bigint
      )
      ;
    2. 完成编写后,单击执行,查看运行SQL结果是否成功。

      同时您也可以单击预编译,检验SQL语句是否复合规范。如果不复合规范,则单击格式化,系统自动调整您编写的SQL语句,使得其符合规范。

    • 如果您新建的代码任务的调度类型为周期性节点,则需参见调度配置,配置调度参数。
    • 如果您新建的代码任务的调度类型为手动节点,则无需进行调度配置。
  7. 完成代码任务调度参数的配置后,单击页面右上角的fagaga保存代码任务,然后单击gagaa,完成代码任务的提交,同时系统将同步任务的状态标记为草稿
  8. 请参见发布管理, 完成代码任务的发布。发布到生成环境的代码任务即可参与周期性的调度。