【转载】阿里云MVP Meetup 《云数据·大计算:海量日志数据分析与应用》之《数据采集:日志数据上传》篇

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云原生大数据计算服务 MaxCompute,5000CU*H 100GB 3个月
简介: 本手册为阿里云MVP Meetup Workshop《云计算·大数据:海量日志数据分析与应用》的《数据采集:日志数据上传》篇而准备。主要为保障各位学员在workshop当天能够顺畅进行动手实操,那么本节为学员掌握阿里云数据采集的操作和使用。

实验涉及大数据产品

实验环境准备

必备条件:首先需要确保自己有阿里云云账号并已实名认证。详细点击:

开通大数据计算服务MaxCompute

若已经开通和购买了MaxCompute,请忽略次步骤直接进入创建DataWorks项目空间。

  • step1:进入阿里云官网并点击右上角登录阿里云账号。
    step1_
  • step2:点击进入大数据计算服务产品详情页,点击立即开通
    step2_

step2_2_

  • step3:选择按量付费并点击立即购买
    step3_

创建DataWorks项目空间

确保阿里云账号处于登录状态。

  • step1:点击进入大数据(数加)管理控制台>大数据开发套件tab页面下。
  • step2:点击右上角创建项目或者直接在项目列表-->创建项目,跳出创建项目对话框。
    1

选择相应的服务器时如果没有购买是选择不了会提示您去开通购买。数据开发、运维中心、数据管理默认是被选择中。

  • step3:勾选相应的服务单击 确认,跳转到下面的界面,填写相应的信息单击确认,创建项目完成。
    2

项目名需要字母或下划线开头,只能包含字母下划线和数字。
【注意】项目名称全局唯一,建议大家采用自己容易区分的名称来作为本次workshop的项目空间名称。

  • step4:单击进入项目跳转到下面的界面:
    step2_2_

新建数据源

根据workshop模拟的场景,需要分别创建FTP数据源和RDS数据源。

1.新建FTP数据源
  • step1:点击数据集成>数据源,继而点击新增数据源
    step1_
  • step2:选择数据源类型ftp,同时Protocol选择为sftp,其他配置项如下。
    step2_ftp_Protocol_sftp_1_

FTP数据源配置信息如下:

  • 数据源类型类型:有公网ip
  • 数据源名称:ftp_workshop_log
  • 数据源描述:ftp日志文件同步
  • Protocol:sftp
  • Host:118.31.238.64
  • Port:22
  • 用户名/密码:workshop/workshop
  • step3:点击测试连通性,连通性测试通过后,点击确定保存配置。
    step3_
2.新建RDS数据源
  • step1:点击数据集成>数据源,继而点击新增数据源
    step1_
  • step2:选择数据源类型为RDS>mysql并完成相关配置项。
    step2_

RDS数据源配置信息如下:

  • 数据源类型:阿里云数据库(RDS)
  • 数据源名称:rds_workshop_log
  • 数据源描述:rds日志数据同步
  • RDS实例名称:rm-bp1z69dodhh85z9qa
  • RDS实例购买者ID:1156529087455811
  • 数据库名:workshop
  • 用户名/密码:workshop/workshop#2017
  • step3:点击测试连通性,连通性测试通过后,点击确定保存配置。
    step3_

创建目标表

  • step1:点击数据开发,进入数据开发首页中点击新建脚本
    step1_
  • step2:配置文件名称为create_table_ddl,类型选择为ODPS SQL,点击提交
    step2_create_table_ddl_ODPS_SQL_
  • step3:编写DDL创建表语句,如下分别创建FTP日志对应目标表和RDS对应目标表。
    step3_DDL_FTP_RDS_

DDL语句如下:

--创建ftp日志对应目标表
DROP TABLE IF EXISTS ods_raw_log_d;

CREATE TABLE ods_raw_log_d (
  col STRING
)
PARTITIONED BY (
  dt STRING
);

--创建RDS对应目标表
DROP TABLE IF EXISTS ods_user_info_d;
CREATE TABLE ods_user_info_d (
  uid STRING COMMENT '用户ID',
  gender STRING COMMENT '性别',
  age_range STRING COMMENT '年龄段',
  zodiac STRING COMMENT '星座'
)
PARTITIONED BY (
  dt STRING
);
  • step3:点击运行,直至日志信息返回成功表示两张目标表创建成功。

运行DDL

step4:可以使用desc语法来确认创建表是否成功。

DESC

  • step5:点击保存,保存编写的SQL建表语句。

    保存DDL

新建工作流任务

  • step1:点击新建并选择新建任务。href="https://yqfile.alicdn.com/dc80059e519af072213306f0d927b16e8c588a24.png" target="_blank">新建任务
  • step2:选择工作流任务,调度类型选择为周期调度,其他配置项如下。

    配置任务

  • step3:点击创建。
  • step4:进入工作流配置面板,并向面板中拖入一个虚节点(命名为workshop_start)和两个数据同步节点(分别命名为ftp_数据同步和rds_数据同步):
    step4_workshopstart_ftp_rds__

step4_1_workshopstart_ftp_rds__
step4_2_workshopstart_ftp_rds__

  • step5:拖拽连线将workshop_start虚节点设置为两个数据同步节点的上游节点,如下所示:
    step5_workshop_start_
  • step6:点击保存(或直接快捷键ctrl+s)。

配置数据同步任务

1)配置ftp_数据同步节点
  • step1:双击ftp_数据同步节点,进入节点配置界面。选择来源:并选择数据来源事先配置好的ftp数据源,为ftp_workshop_log,文件路径为/home/workshop/user_log.txt。可以对非压缩文件进行数据预览。

    配置同步

同步预览

数据来源配置项具体说明如下:

  • 数据来源:ftp_workshop_ftp
  • 文件路径:/home/workshop/user_log.txt
  • 列分隔符:|
  • step2:选择目标。点击下一步

    数据流向选择数据源为odps_first,表名为ods_raw_log_d。分区信息和清理规则都采取系统默认,即清理规则为写入前清理已有数据,分区按照${bdp.system.bizdate}。

  • step3:配置字段映射。连接要同步的字段。如下:字段映射
  • step4:在下一步操作中配置通道控制,作业速率上限为10MB/s,进入下一步。
    通道控制

可在预览保存页面中,预览上述的配置情况,也可以进行修改,确认无误后,点击保存

  • step5:点击返回工作流面板。
    返回工作流
2)配置rds_数据同步节点
  • step1:双击rds_数据同步节点进入配置界面。选择来源:选择数据来源为rds_workshop_log,表名为ods_user_info_d;切分键为使用默认生成列即可。点击数据预览,可以看到表中数据样例。
    RDS选择来源
  • step2:进入下一步,选择目标数据源和表名。
    RDS选择目标
  • step3:进入下一步,配置字段映射。默认会同名映射,字段映射关系采用默认即可,如下所示:
    RDS字段映射
  • step4:进入下一步,配置作业速率上限。
    RDS通道控制
  • step5:在预览保存页面中确认配置信息,无误后点击保存配置。
    RDS预览保存

配置调度、提交工作流任务

  • step1:点击调度配置,配置调度参数
    调度配置
  • step2:点击提交,提交已经配置的工作流任务。
    提交工作流任务
  • step3:在变更节点列表弹出框中点击确定提交
    确定提交任务

提交成功后工作流任务处于只读状态,如下:

只读状态

测试运行工作流任务

  • step1:点击测试运行
    测试运行
  • step2:在周期任务运行提醒弹出框点击确定
    周期任务运行提醒
  • step3:在测试运行弹出框中,实例名称和业务日期都保持默认,点击运行
    测试运行按钮
  • step4:在工作流任务测试运行弹出框中,点击前往运维中心

在运维中心可以查看任务视图,如下图表示该工作流任务(名称为workshop_start)正在运行。
运维中心测试
直至所有节点都运行返回成功状态即可(需要点击运维视窗中的刷新按钮查看实时状态)。如下所示:

数据同步测试成功

  • step5:点击节点,查看运行日志。
    日志界面

确认数据是否成功导入MaxCompute

  • step1:返回到create_table_ddl脚本文件中。
  • step2:编写并执行sql语句查看导入ods_raw_log_d记录数。
    数据预览
  • step3:同样编写并执行sql语句查看导入ods_user_info_d记录数。

附录:SQL语句如下,其中分区键需要更新为业务日期,如测试运行任务的日期为20171011,那么业务日期为20171010。

--查看是否成功写入MaxCompute
select count(*) from ods_raw_log_d where dt=业务日期;
select count(*) from ods_user_info_d where dt=业务日期;

>>>点击进入>>>《数据加工:用户画像》篇

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
2月前
|
数据挖掘 PyTorch TensorFlow
|
24天前
|
机器学习/深度学习 人工智能 搜索推荐
某A保险公司的 数据图表和数据分析
某A保险公司的 数据图表和数据分析
53 0
某A保险公司的 数据图表和数据分析
|
1月前
|
数据采集 机器学习/深度学习 存储
使用 Python 清洗日志数据
使用 Python 清洗日志数据
33 2
|
1月前
|
机器学习/深度学习 数据采集 数据可视化
如何理解数据分析及数据的预处理,分析建模,可视化
如何理解数据分析及数据的预处理,分析建模,可视化
47 0
|
2月前
|
机器学习/深度学习 数据挖掘 TensorFlow
🔍揭秘Python数据分析奥秘,TensorFlow助力解锁数据背后的亿万商机
【9月更文挑战第11天】在信息爆炸的时代,数据如沉睡的宝藏,等待发掘。Python以简洁的语法和丰富的库生态成为数据分析的首选,而TensorFlow则为深度学习赋能,助你洞察数据核心,解锁商机。通过Pandas库,我们可以轻松处理结构化数据,进行统计分析和可视化;TensorFlow则能构建复杂的神经网络模型,捕捉非线性关系,提升预测准确性。两者的结合,让你在商业竞争中脱颖而出,把握市场脉搏,释放数据的无限价值。以下是使用Pandas进行简单数据分析的示例:
42 5
|
2月前
|
SQL 人工智能 运维
在阿里云日志服务轻松落地您的AI模型服务——让您的数据更容易产生洞见和实现价值
您有大量的数据,数据的存储和管理消耗您大量的成本,您知道这些数据隐藏着巨大的价值,但是您总觉得还没有把数据的价值变现出来,对吗?来吧,我们用一系列的案例帮您轻松落地AI模型服务,实现数据价值的变现......
182 3
|
2月前
|
机器学习/深度学习 数据挖掘 TensorFlow
从数据小白到AI专家:Python数据分析与TensorFlow/PyTorch深度学习的蜕变之路
【9月更文挑战第10天】从数据新手成长为AI专家,需先掌握Python基础语法,并学会使用NumPy和Pandas进行数据分析。接着,通过Matplotlib和Seaborn实现数据可视化,最后利用TensorFlow或PyTorch探索深度学习。这一过程涉及从数据清洗、可视化到构建神经网络的多个步骤,每一步都需不断实践与学习。借助Python的强大功能及各类库的支持,你能逐步解锁数据的深层价值。
61 0
|
3月前
|
数据库 Java 监控
Struts 2 日志管理化身神秘魔法师,洞察应用运行乾坤,演绎奇幻篇章!
【8月更文挑战第31天】在软件开发中,了解应用运行状况至关重要。日志管理作为 Struts 2 应用的关键组件,记录着每个动作和决策,如同监控摄像头,帮助我们迅速定位问题、分析性能和使用情况,为优化提供依据。Struts 2 支持多种日志框架(如 Log4j、Logback),便于配置日志级别、格式和输出位置。通过在 Action 类中添加日志记录,我们能在开发过程中获取详细信息,及时发现并解决问题。合理配置日志不仅有助于调试,还能分析用户行为,提升应用性能和稳定性。
53 0
|
3月前
|
开发者 前端开发 编解码
Vaadin解锁移动适配新境界:一招制胜,让你的应用征服所有屏幕!
【8月更文挑战第31天】在移动互联网时代,跨平台应用开发备受青睐。作为一款基于Java的Web应用框架,Vaadin凭借其组件化设计和强大的服务器端渲染能力,助力开发者轻松构建多设备适应的Web应用。本文探讨Vaadin与移动设备的适配策略,包括响应式布局、CSS媒体查询、TouchKit插件及服务器端优化,帮助开发者打造美观且实用的移动端体验。通过这些工具和策略的应用,可有效应对屏幕尺寸、分辨率及操作系统的多样性挑战,满足广大移动用户的使用需求。
59 0
|
3月前
|
存储 运维 监控
Entity Framework Core 实现审计日志记录超棒!多种方法助你跟踪数据变化、监控操作,超实用!
【8月更文挑战第31天】在软件开发中,审计日志记录对于跟踪数据变化、监控用户操作及故障排查至关重要。Entity Framework Core (EF Core) 作为强大的对象关系映射框架,提供了多种实现审计日志记录的方法。例如,可以使用 EF Core 的拦截器在数据库操作前后执行自定义逻辑,记录操作类型、时间和执行用户等信息。此外,也可通过在实体类中添加审计属性(如 `CreatedBy`、`CreatedDate` 等),并在保存实体时更新这些属性来记录审计信息。这两种方法都能有效帮助我们追踪数据变更并满足合规性和安全性需求。
66 0