zoukankan      html  css  js  c++  java
  • 优化之Aggregator组件

    Aggregator组件通常会降低性能,因为它们必须在处理数据之前对数据进行分组
    Aggregator组件需要额外的内存来保存中间组结果

    通过如下方式对Aggregator组件进行优化
      简化group by字段
        1) group by避免使用复杂的表达式
        2) group by字段越少越好
        3) group by字段最好用数字,而不是字符或日期

      对input进行排序
        通过组件--> Properties --> 勾选Sorted Input选项对input数据进行排序
        Sorted Input选项勾选时,Integration Service会假定认为input已经被sorted,因此会减少聚合缓存的使用,并以此提高性能
        当Integration Service读取组的行时,它执行聚合计算。必要时,它将组信息存储在内存中
        Aggregator组件的input数据最好是已排好序的,可以与Sorter组件,或者Source Qualifier组件的Number of Sorted Ports选项一起使用
        在具有多个分区的session中勾选Sorted Input选项可以提高性能

      使用增量聚合
        如果source发生变动的数据小于target的一半,可使用增量聚合
        使用增量聚合可只将本次改动的部分同步至target,而不是将整体从新同步
        也可在不产生系统分页操作的情况下,同构追加索引和数据缓存的方式将全部数据放入内存中处理

      聚合之前进行过滤
        在进行聚合操作之前,现将不必要的数据进行过滤,比如使用filter组件

      限制port连接数量
        限制连接的input/output port或output port的数量,以减少聚合时存储在数据缓存中的数据量

  • 相关阅读:
    asp.net应用程序的生命周期和iis
    跨网页公布技术
    Java面试题:异常、静态变量
    js省市级联
    python基础之介绍
    Java学习(二)有关Tomcat的进一步理解与运用
    Java学习(一)环境的配置和软件的使用
    构造方法
    自言自语
    小小叹
  • 原文地址:https://www.cnblogs.com/shiliye/p/10690701.html
Copyright © 2011-2022 走看看