随笔分类 -  SSIS

ETL SSIS
Load xlsx in a folder to RDBMS table with Talend
摘要:Step 1 . Use tFileList component to get the file list. And set proper property.Step 2. Use tFileInputExcel to Read Xlsx File. For this, I build a Exc... 阅读全文

posted @ 2014-12-11 17:44 tneduts 阅读(289) 评论(0) 推荐(0)

BI测试工具之跨数据库数据对比,支持oracle,sqlserver
摘要:应用场景:本周在进行SIT,我帮助仅有的一个测试妹妹对部分表进行数据质量验证,第一步需要做的就是比对source与stage表的table definition 与 数据内容的一致性。本项目使用的是oracle作为DW,source是oracle,sqlserver和xls.没有权限建立databa... 阅读全文

posted @ 2014-10-29 22:11 tneduts 阅读(2505) 评论(1) 推荐(1)

Merge compare columns when null
摘要:Key words: merge compare columnswhen we contact merge sql in ETL,When we update some columns we should compare the value change or not.We always write... 阅读全文

posted @ 2014-10-22 12:42 tneduts 阅读(376) 评论(0) 推荐(0)

基于元数据的ETL系统
摘要:从努力到选择 从实现到设计从部分到整体 以下是我对DW design的一些想法下次使用C#来实现一下ETL中Source 的信息 数据提供形式:DB(ORACLE SQLSERVER VERTICA ...) FLAT FILE (EXCEL , CSV, TXT...) 源系统 db:host... 阅读全文

posted @ 2014-09-15 06:38 tneduts 阅读(1951) 评论(0) 推荐(0)

SSIS hang with unhandle exception
摘要:如果你的packages在执行的过程中有没有被捕获到的异常,则sqldumper会跳出来获取这些异常信息输出,存在下面的目录中:C:\Program Files\Microsoft SQL Server\110\Shared\ErrorDumps文件有以.tmp和mdmp结尾.SQLDUMPER_E... 阅读全文

posted @ 2014-05-20 07:26 tneduts 阅读(815) 评论(0) 推荐(0)

数据按时间拆开分批处理示例
摘要:我现在的问题是有一个大的事实表,已经有数十亿条数据,过来的临时表需要merge进去. 临时表的大小也不确定,可能上十亿也可能只有几百几千万而已.如果直接让这两个表merge起来,则需要很大的内存来进行处理.所以我就想着把数据进行按时间拆分的处理,然后merge进去,拆分的条件是如果临时表的数据量大于... 阅读全文

posted @ 2014-04-23 16:43 tneduts 阅读(595) 评论(0) 推荐(0)

ssis trainning
摘要:1.防止包打开后hang住,可以使用delay validation=false. 2.2008R2 configuration 起作用的优先级?一是des ign time.二是运行的时候指定的文件 2012的parameter 则是相反。 3.注意SSIS包的32位与64位跑的区别?agentjob 默认是64位的去跑,如果你是包需要在32位下面跑,有选项可以勾选。你可以使用不同folder下面的dtsexec去跑你的job.第三方的driver也许需要设置allow in process? 4.load flat file 可以在source 组件上去掉某些列, 但是不能在conne.. 阅读全文

posted @ 2014-03-31 07:39 tneduts 阅读(287) 评论(0) 推荐(0)

使用SSIS包调度开发的包
摘要:在项目中,开发完自己的packages之后,需要使用agentjob之类的服务来调度自己的package,当然我们也可以使用一个package来调度这些,下面就是我的一个简单的尝试.没有设计得像Agentjob那样复杂,agentjob中的每一个job都包含schedule,然后每一个job有若干个step,每一个step之间还是有依赖关系.我的设计很简单,就是使用一个csv文件保存三列值,一列是order,一列是batfilename,第三列是isenabled. 分别表示执行顺序,batch file的名字,(其实也可以设计成包的路径)和是否执行. 示例如下: 我暂且就叫它MainFra. 阅读全文

posted @ 2014-03-28 07:17 tneduts 阅读(745) 评论(1) 推荐(0)

SSIS WITH VERTICA的注意事项总结
摘要:项目中使用到SSIS访问vertica,以下是我使用中总结的一些注意事项:1.vertica对约束的处理方式与之前的DBMS是不同的。以上的截图说明,在使用ado.net provider连接vertica进行数据加载的时候,ssis 返回的信息是不准确的。这不是provider的问题,使用odbc时也遇到过类似的问题。a.在SSIS中图显示全部绿色,表示执行成功,但是到vertica中查询,却没有发现一条记录。后仔细检查发现,source中的数据违反了vertica中的一个not null 约束,数据没有进去,但是没有报错误提示。 Ssis path中显示343条记录,但是实际上只有341条 阅读全文

posted @ 2014-03-22 09:55 tneduts 阅读(1049) 评论(2) 推荐(0)

Excel demo in SSIS
摘要:需求如下,把异常数据从sqlserver数据库中取出来,然后导入到xls中去,然后再发邮件给用户,把xls作为附件发送。需要的示例数据表: /*create table abnormaldata(rowid bigint , rowname nvarchar(20) ,rowvalue nvarchar(100));insert into abnormaldata(rowid,rowname,rowvalue) values(1,'studentname','studentA');insert into abnormaldata(rowid,rowname,ro 阅读全文

posted @ 2014-03-16 15:55 tneduts 阅读(410) 评论(0) 推荐(0)

SSIS with vertica
摘要:使用ODBC进行连接,因为SSIS中没有直接的ODBC connection,所以使用ADO.NET的连接器.九分钟才跑了四百来条数据。这个图反应了SSIS的数据流速度还是可以的,但是瓶颈就在ODBC destination 里。还有一种情况是,你看到SSIS容器中的组件(控制流和数据流)都已经变绿色了,在Progress info中也没有发现任何的错误提示信息,但是去Vertica中查看,表中却没有任何一种记录。这是odbc连接没有接到正确的反馈。我遇到的情况是,Vertica中对应表中的一个列是not null,但是我这边传递的可能是NULL值,我不知道odbc的配置中是如何处理这种情况的 阅读全文

posted @ 2014-01-30 08:30 tneduts 阅读(912) 评论(0) 推荐(0)

MSBI BigData demo—sqoop import
摘要:--sp_readerrorlog 读取错误的信息记录 exec sys.sp_readerrorlog 0, 1, 'listening'查看端口号首先hadoop环境要配置完毕,并检验可以正常启动并使用.在hadoop的namenode上安装sqoop,并设置相关的环境变量.如HADOOP_HOME也是需要先配置好的.否则提示找不到hadoop,Error: /usr/lib/hadoop does not exist!我的实验环境是apache hadoop 1.0.4 ,java 1.7, sqoop 1.4.在本机上安装了三台centos的linux系统作为小集群测试 阅读全文

posted @ 2013-12-28 12:54 tneduts 阅读(975) 评论(0) 推荐(0)

SSIS XML source demo
摘要:以下是一个使用xml作为source的SSIS package示例:自动生成的xsd.把两个结点merge join成一条记录。示例XML如下:white snowliterial123456lovestory123457View Code 阅读全文

posted @ 2013-12-28 10:43 tneduts 阅读(355) 评论(0) 推荐(0)

BI Project Managerment
摘要:Design doc is the meta data of the code. The project management plan is crucial to your project since it is the basis on which the project will be measured. It can be used to aid in communication between stakeholders and to define the content and timing of project reviews. Here are some elements tha 阅读全文

posted @ 2013-12-26 13:55 tneduts 阅读(409) 评论(0) 推荐(0)

MSBI--enlarge the DW database table volume
摘要:我们在学习MSBI的时候,经常会使用官方提供的Adventureworks和AdventureworksDW示例数据库,但是官方提供的数据量有点小,以DW为例,Factinternetsales只有不到七万行的数据,我们很难做某些测试,譬如说想对事实表做一个分区测试,测试CUBE性能等.为此,我想以FactInternetSales表为入口,扩大它的数据量到数亿条.经过分析,我觉得只要把理解主键是怎么生成的,以及orderdatekey,duedatekey,shipdatekey修改下,随机生成productkey与customerkey(其实是随机从这两个维表中抽取key),基本上就可以装 阅读全文

posted @ 2013-12-06 08:27 tneduts 阅读(859) 评论(2) 推荐(1)

SSAS CUBE TEST CASES
摘要:经过周末两天和今天的努力,基本上完成并修复了一些bug并且集成到我的MSBIHelper项目中去,可以进行数据测试了.效果图如下:可以帮助开发人员快速生成等值的Tsql和mdx查询,辅助测试人员快速完成test cases的开发.下一步准备开发的功能是进行数据比对,其实我之前有完成一个SSIS的packages,来比对tsql和mdx的数据集,而这个工具生成的刚好是 那个SSIS packages的数据源.下次把那个package贴上来. 有兴趣的读者可以到以下地址下载,绿色软件,无需安装:解压可用.需要安装Sqlserver的SSIS SSAS平台.dotnet3.5 framework. 阅读全文

posted @ 2013-12-02 20:05 tneduts 阅读(647) 评论(0) 推荐(1)

通用cube refresh方案
摘要:通用cube refresh c# script 解决方法:需要设置的变量如下:User::varcubename,User::varolapconnstr,User::varolapdbnameCube 名字,olap连接字符串,和db名字.这几个变量需要在script task中运用.Script task中的代码如下,可以根据具体需要做修改:public void Main(){// TODO: Add your code hereDts.TaskResult = (int)ScriptResults.Success; //User::varolapconnstr,User::var.. 阅读全文

posted @ 2013-11-30 21:18 tneduts 阅读(614) 评论(0) 推荐(0)

AMO olap Test C# generate tsql and mdx
摘要:通过AMO访问online的cube,生成等值的TSql和mdx自动生成等值的TSQL和MDX进行Cube测试.其中难度比较大的部分是拼接TSQL.暂时不处理calculations,只除理metrics和Regular Type的dimension Usage.metric的聚合方法只处理(max,min,sum,count,distinct count)以下是问题的记录与处理情况.1.adventureworks示例cube中,会把Date dimension的attributes的表名取成dimtime. 未解决 已经解决此问题2.如果dimension 表中的attributes引用了 阅读全文

posted @ 2013-11-30 19:32 tneduts 阅读(731) 评论(2) 推荐(1)

关于 SSIS 并行foreach loop的一个设计思路
摘要:SSIS 包在控制流方面的性能优化,主要是提高并行度。 可以设置并发线程数MaxConcurrentExecuteables.SSIS中的foreach loop container 不是并行执行任务的, 如果我们想使用并行执行的,可以借助第三方扩展的工具:parallel foreach loop... 阅读全文

posted @ 2013-11-15 20:40 tneduts 阅读(1212) 评论(1) 推荐(0)

SSIS ETL BEST PRACTICE
摘要:PackageRunLog(ExecutionGuid,PackageName,SourceTableName,DestinationTableName,StartTimeUTC,EndTimeUTC,NumberOfRowsMoved,Status,MaxUpdateTime) 记录SSIS包每次的运行信息,何时开始,何时结束,运行状态,从哪个表输送多少条数据到某个表。 PQOUNITS : 一个测试框架,存储测试用例,根据要求执行,可以生成测试结果的报告,如果出现错误,及时发现错误。 例如写一些tsql来检验SSIS包运行的结果是否有问题。还有对OLAP进行测试的时候,使用MDX和等值的T 阅读全文

posted @ 2013-11-15 20:13 tneduts 阅读(420) 评论(2) 推荐(0)

导航