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的数量,以减少聚合时存储在数据缓存中的数据量

优化之Aggregator组件的更多相关文章

  1. 15、Jdbc的优化(BeanUtils组件)

    Jdbc的优化! BeanUtils组件 自定义一个持久层的框架 DbUtils组件 案例优化 1. BeanUtils组件 1.1    简介 程序中对javabean的操作很频繁, 所以apach ...

  2. vue组件化之模板优化及注册组件语法糖

    vue组件化之模板优化及注册组件语法糖 vue组件化 模板 优化  在 https://www.cnblogs.com/singledogpro/p/12054895.html 这里我们对vue.js ...

  3. 优化之Joiner组件

    Joiner组件在运行时需要额外的内存空间处理中间结果,因此会影响性能 可通过查看Joiner performance计数器来决定Joiner组件是否需要优化 通过如下方式优化Joiner组件 将Ma ...

  4. java jdbc的优化之BeanUtils组件

    1. BeanUtils组件 1.1 简介 程序中对javabean的操作很频繁, 所以apache提供了一套开源的api,方便对javabean的操作!即BeanUtils组件. BeanUtils ...

  5. 优化之XML组件

    可在XML Parser 组件和XML Source定义中删除非project group,因为不需为这些非project group分配内存,但需要维护主键外键约束 ________________ ...

  6. 优化之Normalizer组件

    Normalizer会产生记录,尽可能的将Normalizer组件靠近Target ---------------------------------------------------------- ...

  7. 注册界面的优化之ActionBar组件的应用之(二)ActionBar组件的事件处理

    开发步骤: 重写父类中的一个方法onOptionsItemSelected实现ActionBar中的选项单击事件 //Register_Activity.java public class Regis ...

  8. 注册界面的优化之ActionBar组件的应用之(一)ActionBar组件的布局实现

    开发步骤:  在res下menu文件夹中创建一个actionbar_menu_register.xml菜单资源文件  在资源文件中添加标签设置一个或多个ActionBar功能选项 //action ...

  9. 性能调优之Transformation

    优化之Aggregator组件 优化之Custom组件 优化之Joiner组件 优化之Lookup组件 优化之Normalizer组件 优化之Sequence Generator组件 优化之Sorte ...

随机推荐

  1. 【转】Android开发规范

    转自:https://github.com/Blankj/AndroidStandardDevelop 摘要 1 前言 2 AS 规范 3 命名规范 4 代码样式规范 5 资源文件规范 6 版本统一规 ...

  2. 我把一些Linux的中英文命令做了对应翻译大家参考一下

    本文我们把Linux的中英文命令做了对应翻译,给需要的朋友参考一下.(http://wap.0834jl.com) 很多朋友在论坛上找Linux英文命令,我们给大家整理了比较全的Linux英文命令,并 ...

  3. [OC] 添加 pch 文件

    第一步: Xcode左上角 File - New - File, Other - PCH File 第二步, 在图中位置,写入 pch 的路径. 路径可以将 pch 文件拖入终端来得到.

  4. photoshop改变图片大小,不改变像素

    用画图修改了图片像素,360*440 但是图片30K,要求图片20K 打开photoshop,打开图片,点击文件--存储为web所用格式,调节品质大小到20K以下,保存即可

  5. dubbo+zookeeper报错:com.alibaba.dubbo.rpc.RpcException: Failed to invoke the method

    com.alibaba.dubbo.rpc.RpcException: Failed to invoke the method可能的错误原因有三个前两个是从网上摘得, 第三个是自己解决的 1.需要进行 ...

  6. 洛谷p3801:红色的幻想乡

    初见完全没有思路.....感觉像是线段树 但二维感觉完全不可做嘛 于是只能去看了看题解 然而还是疯狂爆零+WA.. 和yycc神犇调了两三个小时才调出来... ——————以下个人理解 考虑到每次的修 ...

  7. es6的基本数据详解

    一.Set 基本用法:   1)ES6提供了新的数据机构-Set. 它类似于数组,但是成员的值都是唯一的,没有重复的值.Set本身是一个构造函数,用来生成Set数据结构. 先来看一段最简单的代码: 1 ...

  8. tmux使用中出现的问题和解决方式

    常用操作: tmux ls 看当前都有哪些sessiontmux new -s my1 创建窗口,名为my1ctrl+B,D 退出窗口 (这个就是同时按ctrl和B,然后松开后再按D键)tmux at ...

  9. 程序执行流程/布尔类型与布尔:运算猜数字游戏;库的使用:turtle

    myPrice = 6 while True: guess = int(input()) if guess > myPrice: print('>') elif guess < my ...

  10. [LeetCode] Hand of Straights 一手顺子牌

    Alice has a hand of cards, given as an array of integers. Now she wants to rearrange the cards into ...