更新时间:2024-11-12 GMT+08:00

步骤2:数据开发处理

本步骤通过BI报表原始数据,分析10大用户关注最多的产品和10大用户评价最差的商品,然后通过作业定期调度执行并将结果每日导出到表中,以支撑信息分析。

分析10大用户关注最多的产品

  1. DataArts Studio控制台首页,选择对应工作空间的“数据开发”模块,进入数据开发页面。
  2. 创建一个DLI SQL脚本,以通过DLI SQL语句来创建数据表。

    图1 新建脚本

  3. 在新建脚本弹出的SQL编辑器中输入如下SQL语句,单击“运行”,从OBS原始数据表中计算出10大用户关注最多的产品,将结果存放到top_like_product表。

    INSERT
      OVERWRITE table top_like_product
    SELECT
      product.brand as brand,
      COUNT(product.brand) as like_count
    FROM
      action
      JOIN product ON (action.product_id = product.product_id)
    WHERE
      action.type = 'like'
    group by
      brand
    ORDER BY
      like_count desc
    LIMIT
      10
    图2 脚本(分析10大用户关注最多的产品)

    关键参数说明:
    • 数据连接:步骤4中创建的DLI数据连接。
    • 数据库:步骤6中创建的数据库。
    • 资源队列:可使用提供的默认资源队列“default”
      • 当前由于DLI的“default”队列默认Spark组件版本较低,可能会出现无法支持建表语句执行的报错,这种情况下建议您选择自建队列运行业务。如需“default”队列支持建表语句执行,可联系DLI服务客服或技术支持人员协助解决。
      • DLI的“default”队列为共享队列,仅用于用户体验,用户间可能会出现抢占资源的情况,不能保证每次都可以得到资源执行相关操作。当遇到执行时间较长或无法执行的情况,建议您在业务低峰期再次重试,或选择自建队列运行业务。

  4. 脚本调试无误后,单击“保存”保存该脚本,脚本名称为“top_like_product”。单击“提交”,提交脚本版本。在后续开发并调度作业会引用该脚本。
  5. 脚本保存完成且运行成功后,您可通过如下SQL语句查看top_like_product表数据。您还可以参考图3,下载或转储表数据。

    SELECT * FROM top_like_product
    图3 查看top_like_product表数据

分析10大用户评价最差的商品

  1. DataArts Studio控制台首页,选择对应工作空间的“数据开发”模块,进入数据开发页面。
  2. 创建一个DLI SQL脚本,以通过DLI SQL语句来创建数据表。

    图4 新建脚本

  3. 在新建脚本弹出的SQL编辑器中输入如下SQL语句,单击“运行”,从OBS原始数据表中计算出10大用户评价最差的产品,将结果存放到top_bad_comment_product表。

    INSERT
      OVERWRITE table top_bad_comment_product
    SELECT
      DISTINCT product_id,
      comment_num,
      bad_comment_rate 
    FROM 
      comment 
    WHERE 
      comment_num > 3 
    ORDER BY
      bad_comment_rate desc 
    LIMIT
      10
    图5 脚本(分析10大用户评价最差的产品)
    关键参数说明:
    • 数据连接:步骤4中创建的DLI数据连接。
    • 数据库:步骤6中创建的数据库。
    • 资源队列:可使用提供的默认资源队列“default”
      • 当前由于DLI的“default”队列默认Spark组件版本较低,可能会出现无法支持建表语句执行的报错,这种情况下建议您选择自建队列运行业务。如需“default”队列支持建表语句执行,可联系DLI服务客服或技术支持人员协助解决。
      • DLI的“default”队列为共享队列,仅用于用户体验,用户间可能会出现抢占资源的情况,不能保证每次都可以得到资源执行相关操作。当遇到执行时间较长或无法执行的情况,建议您在业务低峰期再次重试,或选择自建队列运行业务。

  4. 脚本调试无误后,单击“保存并提交版本”保存该脚本,脚本名称为“top_bad_comment_product”。在后续开发并调度作业会引用该脚本。
  5. 脚本保存完成且运行成功后,您可通过如下SQL语句查看top_bad_comment_product表数据。您还可以参考图6,下载或转储表数据。

    SELECT * FROM top_bad_comment_product
    图6 查看top_bad_comment_product表数据

开发并调度作业

假设在OBS中原始BI报表是每日更新的,我们希望每天更新分析结果,那么这里可以使用DLF作业编排和作业调度功能。

  1. DataArts Studio控制台首页,选择对应工作空间的“数据开发”模块,进入数据开发页面。
  2. 创建一个数据开发批处理作业,作业名称为“BI_analysis”

    图7 新建作业
    图8 配置作业

  3. 然后进入到作业开发页面,拖动两个Dummy节点和两个DLI SQL节点到画布中,选中连线图标并拖动,编排图9所示的作业。

    图9 连接和配置节点属性

    关键节点说明:

    • Begin(Dummy节点):不执行任何操作,只作为起始点的标识。
    • top_like_product(DLI SQL节点):在节点属性中,关联分析10大用户关注最多的产品中开发完成的DLI SQL脚本“top_like_product”
    • top_bad_comment_product(DLI SQL节点):在节点属性中,关联分析10大用户评价最差的商品中开发完成的DLI SQL脚本“top_bad_comment_product”
    • Finish(Dummy节点):不执行任何操作,只作为结束点的标识。

  4. 作业编排完成后,单击,测试运行作业。
  5. 如果作业测试运行正常,单击右侧的“调度配置”,配置作业的调度策略。

    图10 调度配置

    说明:

    • 调度方式:本示例中选择“周期调度”
    • 调度属性:2022/02/09至2022/02/28,每天1点执行一次作业。
    • 依赖属性:可以配置为依赖其他作业运行,本例不涉及,无需配置。
    • 跨周期依赖:可以选择配置为自依赖或者不依赖上一周期,此处配置为不依赖上一周期即可。

  6. 最后保存并提交版本(单击),执行调度作业(单击)。实现作业每天自动运行,BI报表分析结果自动保存到“top_like_product”“top_bad_comment_product”表。
  7. 您如果需要及时了解作业的执行结果是成功还是失败,可以通过数据开发的运维调度界面进行查看,如图11所示。

    图11 查看作业执行情况

数据开发还支持配置通知管理,可以选择配置当作业运行异常/失败后,进行短信、邮件等多种方式提醒,此处不再展开描述。

至此,基于电商BI报表的数据开发流程示例完成。此外,您还可以根据原始BI报表数据,分析用户的年龄分布、性别比例、商品评价情况、购买情况、浏览情况等,为营销决策、广告推荐、信用评级、品牌监控、用户行为预测等提供高质量的信息。