载入中…
公告栏:
当前位置: 中国商业智能网 >> CIO >> ETL >> 文章正文
ETL常见性能瓶颈
作者:佚名    来源:javaeye    点击数:    时间:2011-3-28
【摘要】1、ETL性能瓶颈在哪儿里 2、产生性能瓶颈的原因 3、如何解决掉这些性能问题 内容: 1、ETL性能瓶颈在哪儿里 ETL(EXTRACT、TRANSFORM、LOAD),即(抽取、转换、加载)。那么通常在哪一个环节会出现性能瓶颈呢?举个小例子,过年回家给小外甥买了一兜核桃-E,我需要用……

ETL性能瓶颈在哪儿里

2、产生性能瓶颈的原因

3、如何解决掉这些性能问题

内容:

1ETL性能瓶颈在哪儿里

ETLEXTRACTTRANSFORMLOAD),即(抽取、转换、加载)。那么通常在哪一个环节会出现性能瓶颈呢?举个小例子,过年回家给小外甥买了一兜核桃-E,我需要用核桃钳将核桃夹碎-T,然后才能给小外甥吃-L。这样我们就可以明显的看出,那个部分比较耗时间,也就是夹碎核桃(T)、吃(L)两部分是比较耗时的。

2、产生性能瓶颈的原因

TL耗时的原因各不相同。

T主要受两方面因素制约。一方面是受中间转换处理的复杂度的影响,另一方面是由于每一条数据都要它仔细判别。接着上面的例子,有些核桃特别坚硬,里面的隔层也特别坚硬,那就需要我做更多的工作来将核仁取出,即使有些核仁直接暴露在外面,我也需要辨别一下,是否干净、是否坏掉,坏掉的该如何处理等等。通过这样对比,我想这部分耗时也是情理之中了。

L主要与加载的目标硬、软设施有关,同等条件下,传递的速度是要比消耗的速度要快的,就好比说话比写字快(正常人),当然我也有事实证明,从同一ORACLE数据库中读取数据要比写数据快10倍以上。无论是加载到数据库或文件或LDAP,只要目标能够充分而快速的消耗掉传递过来的数据就可以证明性能不在它这,但事实往往不是这样。就像我的小外甥吃不完我夹碎的核桃。

3、如何解决掉这些性能问题

针对T的处理,主要是在转换(相当于换手)的时候尽量减小开销,尽可能的让一条数据从抽取出来到加载完成保持结构不变;还有一种期望就是,数据库变成面向对象的,我们不需要在在关系与对象之间做转换。就好比说,我取出的核仁直接放到小外甥的口中,而不是放到新的口袋里,然后他再慢慢悠悠的拿着吃。

针对L的处理呢,主要在增加消费线程,提高消费目标的吞吐量。好比我小外甥的朋友来了,和他一起吃这些核仁,而他因为怕人家吃光他的东西,大口吃起来,结果很快夹核桃的速度与吃核仁速度的基本达到平衡了,这样就不会导致越来越多的剩余,当然我们想要的性能就上来了。

责任编辑:朱莉   
 
  • 上一篇文章:

  • 下一篇文章:
  • 发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
    ChinaBI版权、投稿与免责申明:
    1)凡本网署名文字、图片和音视频稿件,版权均属中国商业智能网所有。任何媒体、网站或个人未经本网协议授权不得转载、链接、转贴或以其他方式复制发表。已经本网协议授权的媒体、网站,在下载使用时必须注明稿件来源:中国商业智能网,违者本网将依法追究责任。
    2)本网注明“本站来源处不写本站原创”的文章均为转载稿,本网转载出于传递更多信息之目的。如本网转载稿涉及版权等问题,请作者速来电或来函与本网联系。
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
    最新热点
    娱乐资讯
    最新推荐
    网站合作、内容监督、商务咨询、投诉建议 电话:0512-62861389  邮箱:chianbi@126.com
    Copyright 2004-2014 中国商业智能网版权所有   |    苏 ICP 备 13004727 号