ETL基础及常用技术培训.ppt
《ETL基础及常用技术培训.ppt》由会员分享,可在线阅读,更多相关《ETL基础及常用技术培训.ppt(87页珍藏版)》请在咨信网上搜索。
1、ETL基础及常用技术培训主要内容主要内容nETL基本概念基本概念nETL常用逻辑架构常用逻辑架构nETL实施过程实施过程nETL常用技术(常用技术(shell,oracle,datastage)ETL基本概念基本概念 ETL(Extract-Transform-Load)即数据的抽取、转换与加载。即数据的抽取、转换与加载。ETL是从各是从各种原始的业务系统种原始的业务系统(异构多源异构多源)中提取数据,按照预先设计好的规则将抽取到的中提取数据,按照预先设计好的规则将抽取到的数据进行转换,最后将转换完的数据按计划增量或全部导人到目标数据库,成数据进行转换,最后将转换完的数据按计划增量或全部导人到
2、目标数据库,成为联机分析处理、数据挖掘的基础。为联机分析处理、数据挖掘的基础。ETL为为BI/DW的核心和灵魂的核心和灵魂.ETL就是一个批量数据加工的过程就是一个批量数据加工的过程.ETL常用逻辑架构常用逻辑架构n数据抽取数据抽取n数据清洗与转换数据清洗与转换n数据加载数据加载 ETL实施过程实施过程数据抽取n确定所有数据源来源于哪些源系统,核心系统,信贷,信用卡等n定义数据接口对每个源文件及接口的每个字段进行详细说明n数据抽取方法主动抽取还是源系统提供文件,增量还是全量,每日还是每月ETL实施过程实施过程 1.代码标准化 2.数据粒度的转换 3.根据业务规则计算 确定数据清洗和转换规则后细
3、化mapping,编码实现数据清洗与转换n数据清洗1.不完整的数据 2.错误的数据 3.重复的数据 n数据转换ETL实施过程实施过程数据加载将数据缓冲区的数据直接加载到数据库对应的表中,如果是全量采用load方式,如果是增量则根据业务规则merge进数据库 ETL实施过程实施过程ETL常用技术常用技术nSHELL(unix基本操作基本操作)nSQLnPL/SQLnPROCnDATASTAGEshell基础基础Linux中有好多种不同的中有好多种不同的shell,如,如bsh,csh,同其他语言一样,可以通过我们,同其他语言一样,可以通过我们使用任意一种文字编辑器,比如使用任意一种文字编辑器,比
4、如vi等来编写我们的等来编写我们的shell程序。程序。程序必须以下面的行开始(必须放在文件的第一行):程序必须以下面的行开始(必须放在文件的第一行):#!/bin/sh符号符号#!用来告诉系统它后面的参数是用来执行该文件的程序。在这个程序中我们用来告诉系统它后面的参数是用来执行该文件的程序。在这个程序中我们使用使用/bin/sh来执行程序。来执行程序。当编辑好脚本时,如果要执行该脚本,还必须使其可执行。当编辑好脚本时,如果要执行该脚本,还必须使其可执行。要使脚本可执行:要使脚本可执行:chmod+xfilename然后,可以通过输入:然后,可以通过输入:./filename来执行脚本。来执行
5、脚本。shell基础基础Vi(一)、进入(一)、进入vi在系统提示字符在系统提示字符(如如$、#)下敲入下敲入vi档案名称,档案名称,vi可以自动帮你载入所要编辑的文件或可以自动帮你载入所要编辑的文件或是开启一个新是开启一个新文件(如果该文件不存在或缺少文件名)。进入文件(如果该文件不存在或缺少文件名)。进入vi后萤幕左方会出现波浪符号,凡是列首后萤幕左方会出现波浪符号,凡是列首有该符号就代有该符号就代表此列目前是空的。表此列目前是空的。(二)、两种模式二)、两种模式如上所述,如上所述,vi存在两种模式:指令模式和输入模式。在指令模式下输入的按键将做为指令存在两种模式:指令模式和输入模式。在指
6、令模式下输入的按键将做为指令来处理:如输入来处理:如输入a,vi即认为是在当前位置插入字符。而在输入模式下,即认为是在当前位置插入字符。而在输入模式下,vi则把输入的按键当作插入的字符则把输入的按键当作插入的字符来处理。指令来处理。指令模式切换到输入模式只需键入相应的输入命令即可(如模式切换到输入模式只需键入相应的输入命令即可(如a,A),而要从输入模式切换到指令),而要从输入模式切换到指令模式,则需在模式,则需在输入模式下键入输入模式下键入ESC键,如果不晓得现在是处於什麽模式,可以多按几次键,如果不晓得现在是处於什麽模式,可以多按几次ESC,系统如发出哔哔声就表,系统如发出哔哔声就表示已处
7、于指令模式下了。示已处于指令模式下了。shell基础基础Vi由指令模式进入输入模式的指令:由指令模式进入输入模式的指令:新增新增(append)a:从光标所在位置後面开始新增资料,光标後的资料随新增资料向後移动。:从光标所在位置後面开始新增资料,光标後的资料随新增资料向後移动。A:从光标所在列最後面的地方开始新增资料。从光标所在列最後面的地方开始新增资料。插入插入(insert)i:从光标所在位置前面开始插入资料,光标後的资料随新增资料向後移动。从光标所在位置前面开始插入资料,光标後的资料随新增资料向後移动。I:从光标所在列的第一个非空白字元前面开始插入资料。:从光标所在列的第一个非空白字元前
8、面开始插入资料。开始开始(open)o:在光标所在列下新增一列并进入输入模式。:在光标所在列下新增一列并进入输入模式。O:在光标所在列上方新增一列并进入输入模式。在光标所在列上方新增一列并进入输入模式。shell基础基础Vi(三)、基本编辑(三)、基本编辑配合一般键盘上的功能键,像是方向键、配合一般键盘上的功能键,像是方向键、Insert、Delete等等,现在你应该已经可以等等,现在你应该已经可以利用利用vi来编辑文件来编辑文件了。当然了。当然vi还提供其他许许多多功能让文字的处理更为方便。还提供其他许许多多功能让文字的处理更为方便。何谓编辑?一般认为是文字的新增、修改以及删除,甚至包括文字
9、区块的搬移、复制等等。何谓编辑?一般认为是文字的新增、修改以及删除,甚至包括文字区块的搬移、复制等等。先这里介绍先这里介绍vi的如何做删除与修改。的如何做删除与修改。删除与修改文件的命令:删除与修改文件的命令:x:删除光标所在字符。删除光标所在字符。dd:删除光标所在的列。:删除光标所在的列。r:修改光标所在字元,:修改光标所在字元,r後接著要修正的字符。後接著要修正的字符。R:进入取替换状态,新增文字会覆盖原先文字,直到按进入取替换状态,新增文字会覆盖原先文字,直到按ESC回到指令模式下为止。回到指令模式下为止。s:删除光标所在字元,并进入输入模式。删除光标所在字元,并进入输入模式。S:删除
10、光标所在的列,并进入输入模式。删除光标所在的列,并进入输入模式。在指令模式下移动光标的基本指令是在指令模式下移动光标的基本指令是h,j,k,l。shell基础基础Vi(四)、退出(四)、退出vi在指令模式下键入在指令模式下键入:q,:q!,:wq或或:x(注意注意:号),就会退出号),就会退出vi。其中。其中:wq和和:x是存盘退出,而是存盘退出,而:q是直接退出,是直接退出,如果文件已有新的变化,如果文件已有新的变化,vi会提示你保存文件而会提示你保存文件而:q命令也会失效,这时你可以用命令也会失效,这时你可以用:w命令保命令保存文件后再用存文件后再用:q退出,或用退出,或用:wq或或:x命
11、令退出,如果你不想保存改变后的文件,你就需要用命令退出,如果你不想保存改变后的文件,你就需要用:q!命令,这个命令,这个命令将不保存文件命令将不保存文件而直接退出而直接退出vi。shell基础基础n注释注释#n变量变量在shell编程中,所有的变量都由字符串组成,并且不需要对变量进行声明。要赋值给一个变量,可以这样写:变量名=值取出变量值可以加一个美元符号($)在变量前面nshell脚本中的三类命令脚本中的三类命令1)Unix 命令2)管道,重定向和 backtick3)流程控制shell基础基础unix命令命令在shell脚本中可以使用任意的unix命令,这些命令通常是用来进行文件和文字操作
12、的。常用命令语法及功能:echo some text:将文字内容打印在屏幕上ls:文件列表wc l filewc-w filewc-c file:计算文件行数计算文件中的单词数计算文件中的字符数cp sourcefile destfile:文件拷贝mv oldname newname:重命名文件或移动文件rm file:删除文件grep pattern file:在文件内搜索字符串比如:grep searchstring file.txtcut-b colnum file:指定欲显示的文件内容范围,并将它们输出到标准输出设备比如:输出每行第5个到第9个字符cut-b5-9 file.txt千万
13、不要和cat命令混淆,这是两个完全不同的命令shell基础基础unix命令命令ftp:远程传输文件 ftp ip 然后输入用户名密码,put,get cat file.txt:输出文件内容到标准输出设备(屏幕)上file somefile:得到文件类型read var:提示用户输入,并将输入赋值给变量sort file.txt:对file.txt文件中的行进行排序uniq:删除文本文件中出现的行列比如:sort file.txt|uniqexpr:进行数学运算Example:add 2 and 3expr 2+3find:搜索文件比如:根据文件名搜索find.-name filename-pr
14、inttee:将数据输出到标准输出设备(屏幕)和文件比如:somecommand|tee outfilebasename file:返回不包含路径的文件名比如:basename/bin/tux将返回 tuxshell基础基础unix命令命令dirname file:返回文件所在路径比如:dirname/bin/tux将返回/binhead file:打印文本文件开头几行tail file:打印文本文件末尾几行sed:Sed是一个基本的查找替换程序。可以从标准输入(比如命令管道)读入文本,并将结果输出到标准输出(屏幕)。该命令采用正则表达式(见参考)进行搜索。不要和shell中的通配符相混淆。比
15、如:将linuxfocus 替换为 LinuxFocus:cat text.file|sed s/linuxfocus/LinuxFocus/newtext.fileawk:awk 用来从文本文件中提取字段。缺省地,字段分割符是空格,可以使用-F指定其他分割符。cat file.txt|awk-F,print$1,$3 这里我们使用,作为字段分割符,同时打印第一个和第三个字段。如果该文件内容如下:Adam Bor,34,IndiaKerry Miller,22,USA命令输出结果为:Adam Bor,IndiaKerry Miller,USA tar:将文件或文件夹打包解包,tar cvf a
16、.tar abc tar xvf a.tarshell基础基础管道管道、重定向和重定向和backtick命令命令n管道管道(|)将一个命令的输出作为另外一个命令的输入。grep hello file.txt|wc-l在file.txt中搜索包含有”hello”的行并计算其行数。在这里grep命令的输出作为wc命令的输入n重定向重定向将命令的结果输出到文件,而不是标准输出(屏幕)写入文件并覆盖旧文件 加到文件的尾部,保留旧文件内容。n反短斜线(反短斜线()使用反短斜线可以将一个命令的输出作为另外一个命令的一个命令行参数。命令:V_date=date+%Fshell基础基础流程控制命令流程控制命令
17、(if)if Then .elif Then.Else .fi大多数情况下,可以使用测试命令来对条件进行测试。比如可以比较字符串、判断文件是否存在及是否可读等等通常用 来表示条件测试。注意这里的空格很重要。要确保方括号的空格。-f somefile :判断是否是一个文件-x/bin/ls :判断/bin/ls是否存在并有可执行权限-n$var :判断$var变量是否有值$a=$b :判断$a和$b是否相等shell基础基础流程控制命令流程控制命令(if)字符串比较:string1=string2 如果相等则为真 string1!=string2 如果不等则为真-n string 如果不空则为真
18、-z string 如果为空则为真 算术比较:expression1-eq expression2 如果相等则为真 expression1-ne expression2 如果不等则为真 expression1-gt expression2 如果大于则为真 expression1-ge expression2 大于等于则为真 expression1-lt expression2 如果小于则为真 expression1-le expression2 小于等于则为真 shell基础基础流程控制命令流程控制命令(if)文件:-d file 如果为目录则为真-e file 如果存在则为真(在这里要注意的
19、是,由于历史原因,-e选项并不可移植,所以常用的是-f选项-f file 如果为常规文件则为真-g file 如果设置了组ID则为真-r file 如果文件可读则为真-s file 如果文件大小不为零则为真-u file 如果设置了用户ID则为真-w file 如果文件可写则为真-x file 如果文件可执行则为真 shell基础基础流程控制命令流程控制命令1)while.Do .Donewhile-loop 将运行直到表达式测试为真。will run while the expression that wetest for is true.关键字break 用来跳出循环。而关键字”conti
20、nue”用来不执行余下的部分而直接跳到下一个循环。2)for var in.do.Donefor-loop表达式查看一个字符串列表(字符串用空格分隔)然后将其赋给一个变量:3)case.in.).;Esaccase表达式可以用来匹配一个给定的字符串oracle基础基础数据库安装数据库安装nWindows环境下环境下:网上下载安装包网上下载安装包点击安装点击安装全选默认配置即可。全选默认配置即可。其它机器上已有其它机器上已有server端,可只安端,可只安client端。端。PLSQL软件是一个优秀的软件是一个优秀的oracle工具,建议安装工具,建议安装nunix环境下环境下:建建oracle
21、组和用户组和用户在在oracle用户下安装用户下安装授予其它用户执行授予其它用户执行oracle命令的权限命令的权限oracle基础基础数据库的连接数据库的连接nClient端连接配置端连接配置到oracle安装目录下 搜索tnsnames.ora增加修改相应连接内容 ORCL=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=cg)(PORT=1521)(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=orcl)mdb=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=128.160
22、.96.21)(PORT=1521)(CONNECT_DATA=(SERVER=DEDICATED)(SID=mdb)oracle基础基础数据库的连接数据库的连接nUnix环境环境先设置编辑器先设置编辑器exportEDITOR=viselectparameter,valuefromnls_database_parameterswhereparameter=NLS_CHARACTERSET;-显示数据库字符集 NLS_LANG应与数据库字符集一致exportNLS_LANG=“SIMPLIFIEDCHINESE.ZHS16GBK”exportNLS_DATE_FORMAT=YYYY-MM-DD
23、-HH24.MI.SSn命令行:命令行:sqlplususername/passwordserverassysdbaassysopersqlplus/assysdba-管理员进入管理员进入sqlplusetl/etlmdb-普通用户进入普通用户进入SQLsetlinesize300;-设置行长度设置行长度SQLsetpagesize1;-设置页长度设置页长度SQLcolnameformata30;-设置列格式设置列格式SQLselectsysdatefromdual;-运行语句运行语句oracle基础基础数据库的连接数据库的连接nPlsql是一款优秀的操作oracle图形界面软件Sqlwind
24、ow可单条执行可单条执行sqlCommandwindow可批量执行多条可批量执行多条sqloracle基础基础表空间表空间ORACLE数据库被划分成称作为表空间的逻辑区域形成ORACLE数据库的逻辑结构。一个ORACLE数据库能够有一个或多个表空间,而一个表空间则对应着一个或多个物理的数据库文件。表空间是ORACLE数据库恢复的最小单位,容纳着许多数据库实体,如表、视图、索引、聚簇、回退段和临时段等。每个ORACLE数据库均有SYSTEM表空间,这是数据库创建时自动创建的。SYSTEM表空间必须总要保持联机,因为其包含着数据库运行所要求的基本信息(关于整个数据库的数据字典、联机求助机制、所有回
25、退段、临时段和自举段、所有的用户数据库实体、其它ORACLE软件产品要求的表)。一个小型应用的ORACLE数据库通常仅包括SYSTEM表空间,然而一个稍大型应用的ORACLE数据库采用多个表空间会对数据库的使用带来更大的方便。oracle基础基础表空间表空间n建立本地管理表空间建立本地管理表空间CREATETABLESPACEtablespace_nameDATAFILEfile_nameSIZEfile_sizeUNIFORMSIZEextent_size|AUTOALLOCATECREATETABLESPACEDATATBS01_32KDATAFILE/home/mdb/oracle/or
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- ETL 基础 常用 技术培训
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【精***】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【精***】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。