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

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS PostgreSQL,集群系列 2核4GB
简介: 大数据workshop:《云数据·大计算:海量日志数据分析与应用》之《数据采集:日志数据上传》篇

大数据workshop:《云数据·大计算:海量日志数据分析与应用》之《数据采集:日志数据上传》篇

本手册为阿里云MVP Meetup Workshop《云计算·大数据:海量日志数据分析与应用》的《数据采集:日志数据上传》篇而准备。主要为保障各位学员在workshop当天能够顺畅进行动手实操,那么本节为学员掌握阿里云数据采集的操作和使用。

实验涉及大数据产品

实验环境准备

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

开通大数据计算服务MaxCompute

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

  • step1:进入阿里云官网并点击右上角登录阿里云账号。
    登录
  • step2:点击进入数加 · MaxCompute产品详情页,点击立即开通

image

立即开通

  • step3:选择 按量付费,且选择 华东2(上海) Region 点击 立即购买** 。
    购买

创建Data IDE项目空间

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

  • step1:点击进入大数据(数加)管理控制台>大数据开发套件tab页面下。
  • step2:点击创建项目,跳出创建项目对话框。
    创建项目
  • step3:勾选付费方式为I/O后付费,填写项目名称及相关信息,点击确定,直至返回创建成功状态。
    配置项目

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

进入大数据开发套件

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

项目列表

  • step2:点击已经创建的项目空间名称,进入大数据开发套件。

点击进入项目

进入大数据开发套件

新建数据源

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

1.新建FTP数据源
  • step1:点击数据集成>数据源管理,继而点击新增数据源

新增数据源

  • step2:选择数据源类型ftp,同时Protocol选择为sftp,其他配置项如下。

image

FTP数据源配置信息如下:

  • 数据源类型类型:有公网ip
  • 数据源名称:ftp_workshop_log
  • 数据源描述:ftp日志文件同步
  • Protocol:sftp
  • Host:10.80.177.33
  • Port:22
  • 用户名/密码:workshop/workshop
  • step3:点击测试连通性,连通性测试通过后,点击确定保存配置。

保存ftp数据源

2.新建RDS数据源
  • step1:点击数据集成>数据源管理,继而点击新增数据源

新增数据源

  • step2:选择数据源类型为RDS>mysql并完成相关配置项。

image

RDS数据源配置信息如下:

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

保存RDS数据源

创建目标表

  • step1:点击数据开发,进入数据开发首页中点击新建脚本

新建脚本

  • step2:配置文件名称为create_table_ddl,类型选择为ODPS SQL,点击提交

配置脚本

  • step3:编写DDL创建表语句,如下分别创建FTP日志对应目标表和RDS对应目标表.

编写DDL

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:点击新建并选择新建任务
    新建任务
  • step2:选择工作流任务,调度类型选择为周期调度,其他配置项如下。

配置任务

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

新建FTP同步

新建RDS同步

  • 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日志并进行多维度分析。
目录
相关文章
|
7天前
|
数据采集 数据可视化 数据挖掘
Pandas数据应用:天气数据分析
本文介绍如何使用 Pandas 进行天气数据分析。Pandas 是一个强大的 Python 数据处理库,适合处理表格型数据。文章涵盖加载天气数据、处理缺失值、转换数据类型、时间序列分析(如滚动平均和重采样)等内容,并解决常见报错如 SettingWithCopyWarning、KeyError 和 TypeError。通过这些方法,帮助用户更好地进行气候趋势预测和决策。
99 71
|
6天前
|
存储 数据采集 数据可视化
Pandas数据应用:电子商务数据分析
本文介绍如何使用 Pandas 进行电子商务数据分析,涵盖数据加载、清洗、预处理、分析与可视化。通过 `read_csv` 等函数加载数据,利用 `info()` 和 `describe()` 探索数据结构和统计信息。针对常见问题如缺失值、重复记录、异常值等,提供解决方案,如 `dropna()`、`drop_duplicates()` 和正则表达式处理。结合 Matplotlib 等库实现数据可视化,探讨内存不足和性能瓶颈的应对方法,并总结常见报错及解决策略,帮助提升电商企业的数据分析能力。
101 73
|
3天前
|
存储 数据采集 数据可视化
Pandas数据应用:医疗数据分析
Pandas是Python中强大的数据操作和分析库,广泛应用于医疗数据分析。本文介绍了使用Pandas进行医疗数据分析的常见问题及解决方案,涵盖数据导入、预处理、清洗、转换、可视化等方面。通过解决文件路径错误、编码不匹配、缺失值处理、异常值识别、分类变量编码等问题,结合Matplotlib等工具实现数据可视化,并提供了解决常见报错的方法。掌握这些技巧可以提高医疗数据分析的效率和准确性。
39 22
|
7天前
|
数据采集 数据可视化 索引
Pandas数据应用:股票数据分析
本文介绍了如何使用Pandas库进行股票数据分析。首先,通过pip安装并导入Pandas库。接着,从本地CSV文件读取股票数据,并解决常见的解析错误。然后,利用head()、info()等函数查看数据基本信息,进行数据清洗,处理缺失值和重复数据。再者,结合Matplotlib和Seaborn进行数据可视化,绘制收盘价折线图。最后,进行时间序列分析,设置日期索引、重采样和计算移动平均线。通过这些步骤,帮助读者掌握Pandas在股票数据分析中的应用。
37 5
|
19天前
|
数据采集 监控 数据挖掘
常用电商商品数据API接口(item get)概述,数据分析以及上货
电商商品数据API接口(item get)是电商平台上用于提供商品详细信息的接口。这些接口允许开发者或系统以编程方式获取商品的详细信息,包括但不限于商品的标题、价格、库存、图片、销量、规格参数、用户评价等。这些信息对于电商业务来说至关重要,是商品数据分析、价格监控、上货策略制定等工作的基础。
|
2月前
|
机器学习/深度学习 数据采集 算法
机器学习在医疗诊断中的前沿应用,包括神经网络、决策树和支持向量机等方法,及其在医学影像、疾病预测和基因数据分析中的具体应用
医疗诊断是医学的核心,其准确性和效率至关重要。本文探讨了机器学习在医疗诊断中的前沿应用,包括神经网络、决策树和支持向量机等方法,及其在医学影像、疾病预测和基因数据分析中的具体应用。文章还讨论了Python在构建机器学习模型中的作用,面临的挑战及应对策略,并展望了未来的发展趋势。
152 1
|
2月前
|
XML 安全 Java
【日志框架整合】Slf4j、Log4j、Log4j2、Logback配置模板
本文介绍了Java日志框架的基本概念和使用方法,重点讨论了SLF4J、Log4j、Logback和Log4j2之间的关系及其性能对比。SLF4J作为一个日志抽象层,允许开发者使用统一的日志接口,而Log4j、Logback和Log4j2则是具体的日志实现框架。Log4j2在性能上优于Logback,推荐在新项目中使用。文章还详细说明了如何在Spring Boot项目中配置Log4j2和Logback,以及如何使用Lombok简化日志记录。最后,提供了一些日志配置的最佳实践,包括滚动日志、统一日志格式和提高日志性能的方法。
453 30
【日志框架整合】Slf4j、Log4j、Log4j2、Logback配置模板
|
24天前
|
监控 安全 Apache
什么是Apache日志?为什么Apache日志分析很重要?
Apache是全球广泛使用的Web服务器软件,支持超过30%的活跃网站。它通过接收和处理HTTP请求,与后端服务器通信,返回响应并记录日志,确保网页请求的快速准确处理。Apache日志分为访问日志和错误日志,对提升用户体验、保障安全及优化性能至关重要。EventLog Analyzer等工具可有效管理和分析这些日志,增强Web服务的安全性和可靠性。
|
3月前
|
XML JSON Java
Logback 与 log4j2 性能对比:谁才是日志框架的性能王者?
【10月更文挑战第5天】在Java开发中,日志框架是不可或缺的工具,它们帮助我们记录系统运行时的信息、警告和错误,对于开发人员来说至关重要。在众多日志框架中,Logback和log4j2以其卓越的性能和丰富的功能脱颖而出,成为开发者们的首选。本文将深入探讨Logback与log4j2在性能方面的对比,通过详细的分析和实例,帮助大家理解两者之间的性能差异,以便在实际项目中做出更明智的选择。
360 3
|
2天前
|
SQL 关系型数据库 MySQL
MySQL事务日志-Undo Log工作原理分析
事务的持久性是交由Redo Log来保证,原子性则是交由Undo Log来保证。如果事务中的SQL执行到一半出现错误,需要把前面已经执行过的SQL撤销以达到原子性的目的,这个过程也叫做"回滚",所以Undo Log也叫回滚日志。
MySQL事务日志-Undo Log工作原理分析

热门文章

最新文章