排序行花费的时间太长
Sort rows taking too long
我是 Pentaho 的新手。
下面的转换似乎是正确的。
但是,对行进行排序需要很长时间:
这是步骤:
为什么这需要这么长时间,我该如何改进?
这是合并联接 2:
在转换属性(ctrl + T 或视图 -> 设置)中试试这个:
- 在行集中设置更大的行数
- 设置更大的反馈大小
- 取消选中 "Manage Thread priorities?"
示例:
Transformation properties
我尝试使用排序的几种方法..希望这对您有所帮助
- 使用“排序行”步骤中的“排序大小(内存中的行)”设置来控制这一点。可用内存阈值(以 % 为单位)有助于避免填满可用内存。请务必为 PDI 分配足够的 RAM。
- 利用数据库将数据推送到暂存区并排序和填充目标table 在批处理方面工作得很快。
步骤 'Merge join2' 两次将时间步作为输入。由于 'Sort rows' 未定义为 'Merge join2' 中的输入步骤,因此未处理来自 'Sort rows' 的记录。如果 de buffer 处于 10000 'Sort rows' 停止写入 'Merge join2'。因此,步骤 'Sort rows' 永远不会完成。
我是 Pentaho 的新手。
下面的转换似乎是正确的。
但是,对行进行排序需要很长时间:
这是步骤:
为什么这需要这么长时间,我该如何改进?
这是合并联接 2:
在转换属性(ctrl + T 或视图 -> 设置)中试试这个:
- 在行集中设置更大的行数
- 设置更大的反馈大小
- 取消选中 "Manage Thread priorities?"
示例: Transformation properties
我尝试使用排序的几种方法..希望这对您有所帮助
- 使用“排序行”步骤中的“排序大小(内存中的行)”设置来控制这一点。可用内存阈值(以 % 为单位)有助于避免填满可用内存。请务必为 PDI 分配足够的 RAM。
- 利用数据库将数据推送到暂存区并排序和填充目标table 在批处理方面工作得很快。
步骤 'Merge join2' 两次将时间步作为输入。由于 'Sort rows' 未定义为 'Merge join2' 中的输入步骤,因此未处理来自 'Sort rows' 的记录。如果 de buffer 处于 10000 'Sort rows' 停止写入 'Merge join2'。因此,步骤 'Sort rows' 永远不会完成。