未经许可,禁止以任何形式转载,若要引用,请标注链接地址
全文共计2687字,阅读大概需要3分钟
一、 任务描述
本实验任务主要完成基于Ubuntu环境的Ketlle数据采集工具的介绍和简单应用;并且增加对数据采集和预处理工具的了解。
通过完成本实验任务,要求学生对数据采集有一定的了解,为后续学习奠定基础。也为了掌握从事数据采集工程师等岗位的技能基础。
二、 任务目标
完成实验实例,从mysql导出到excel完成简单的数据采集和处理。
三、 任务环境
Unbunt 、 kettle、mysql
四、 任务分析
数据采集(DAQ)又称数据获取,是指从传感器和其它待测设备等模拟和数字被测单元中自动采集非电量或者电量信号,送到上位机中进行分析、处理。
数据预处理的本质属于数据的“深度采集“,是信息数据的智能分析处理。利用网页内容分析、自动分类、自动聚类、自动排重、自动摘要、主题词抽取等智能化处理技术,对采集到的海量数据信息进行挖掘整合,最终按照统一规范的组织形式存储到DSM数据仓库,供系统体系结构分析研究使用。
常用的有工具有 flume、kettle等;
flume (日志收集系统)
Flume是Cloudera提供的一个高可用的,高可靠的,分布式的海量日志采集、聚合和传输的系统,Flume支持在日志系统中定制各类数据发送方,用于收集数据;同时,Flume提供对数据进行简单处理,并写到各种数据接受方(可定制)的能力。
Kettle是一款国外开源的ETL工具,纯java编写,可以在Window、Linux、Unix上运行,数据抽取高效稳定。
Kettle 中文名称叫水壶,该项目的主程序员MATT 希望把各种数据放到一个壶里,然后以一种指定的格式流出。
Kettle这个ETL工具集,它允许你管理来自不同数据库的数据,通过提供一个图形化的用户环境来描述你想做什么,而不是你想怎么做。
Kettle中有两种脚本文件,transformation和job,transformation完成针对数据的基础转换,job则完成整个工作流的控制。
♥ 知识链接
数据采集系统是结合基于计算机或者其他专用测试平台的测量软硬件产品来实现灵活的、用户自定义的测量系统。采集一般是采样方式,即隔一定时间(称采样周期)对同一点数据重复采集。采集的数据大多是瞬时值,也可是某段时间内的一个特征值。
数据预处理的工作质量很大程度上决定最终服务数据的质量,是DSM类项目( 如,DSM项目全过程管理、有序用电方案评价等)深度分析的重要基础。在数据智能分析处理中,主要包括:
1)自动分类,用于对采集内容的自动分类;
2)自动摘要,用于对采集内容的自动摘要;
3)自动排重,用于对采集内容的重复性判定。< input>元素是最重要的表单元素。
五、 任务实施
步骤1、打开kettle
鼠标右键桌面,弹出窗口中点击【Open Terminal Here】打开终端,在终端窗口执行【/simple/data-integration/spoon.sh】;如图1所示:
图1 打开kettle
步骤2、采集mysql数据
点击【File→New→Transformation】新建一个【转换项目】;如图2所示:
图2 新建项目
显示的都是工具目录;具体应用可自行实践;本实验会用到【Input】和【Output】;如图3所示:
图3 查看目录功能
【Input】是输入数据的工具目录;如图4所示:
图4 查看输入功能目录
【Output】是输出工具的数出目录;如图5所示:
图5 查看输出功能目录
从【Input】中选取【Tableinput】,从【Output】中选取【Microsoft Excel Output】;读取MySQL的表中数据到Excel中;如图6所示:
图6 构建一个项目
打开【Table input】,定义个名称为【mysql】;点击【New】新建一个mysql连接;如图7所示:
图7 构建数据库连接
打开终端,执行【service mysql start】启动mysql;定义个连接名称【mysql】;选择Connection Type : 为MySQL; 输入Host Name: 127.0.0.1 (localhost)、Database Name: tangrendb 、 User Name : tangren 、 Password : 123456; 点击【Test】 测试连接状态成功或者失败;成功过后点击【OK】;如图8所示:
图8 输入数据库参数
点击【Get SQL select statement…】选择【tangrentable】表,点击【OK】,如果弹出窗口,点击【yes】;如图9所示:
图9 查看数据库表
点击【Preview】浏览表中数据;可自行输入查看的行数;如图10所示
图10 设置浏览行数
看完点击【Close】,然后在 【Table input】点击【OK】;如图11所示:
图11 浏览数据
打开【Microsoft Excel Output】,定义个名称【OutputExcel】,点击【Browse…】(去掉后缀名),在Extension添加后缀名【xlsx】(如果在Filename中有后缀名,这里可以不写),点击【Show filename(s)…】,查看文件存储路径和文件名;点击【Ok】,(图中的数据
存储路径如果不存在请创建或者自定义一个)。如图12所示:
图12 配置文件保存属性
点击图中红框运行按钮,弹出对话框点击【Run】;如图13所示:
图13 运行项目
项目保存路径和名称设置,选择kettle_data,名称为【kettleDemo】,点击【OK】;如图14所示:
图14 保存项目
在【Execution Results】中出现【Finished】;说明运行成功;如图15所示:
图15 运行结果
使用终端查看数据文件结果;如图16所示:
图16 查看结果
♥ 温馨提示
Kettle家族
Kettle家族目前包括4个产品:Spoon、Pan、CHEF、Kitchen。
SPOON 允许你通过图形界面来设计ETL转换过程(Transformation)。
PAN 允许你批量运行由Spoon设计的ETL转换 (例如使用一个时间调度器)。Pan是一个后台执行的程序,没有图形界面。
CHEF 允许你创建任务(Job)。 任务通过允许每个转换,任务,脚本等等,更有利于自动化更新数据仓库的复杂工作。任务通过允许每个转换,任务,脚本等等。任务将会被检查,看看是否正确地运行了。
KITCHEN 允许你批量使用由Chef设计的任务 (例如使用一个时间调度器)。KITCHEN也是一个后台运行的程序。