【问题标题】:Pentaho Kettle - CPU Utilization 100% for Table Input & Text File OutputPentaho Kettle - 表格输入和文本文件输出的 CPU 利用率 100%
【发布时间】:2017-03-01 14:49:45
【问题描述】:

我的工作中有一个基本的 Pentaho 转换,它通过“表输入”步骤从 SQL Server 中的存储过程中读取 5,000 条记录。此数据有 5 列,其中之一是 XML 列。在“表格输入”之后,运行“文本文件输出”步骤,该步骤采用从其中一列保存的路径,并将 xml 数据保存为字段选项卡中提供的唯一字段。然后通过将数据从“表格输入”流式传输到“文本文件输出”,在给定位置创建 5,000 个 XML 文件。

当执行此作业时,它会在作业期间以 99-100% 的 CPU 利用率运行,然后再下降到约 5-10% 的 CPU 利用率。有没有办法通过 Pentaho 或命令提示符来控制 CPU 利用率?这是在具有 4GB RAM 和 Intel Xeon CPU E5-2680 v2 @ 2.8 GHz 处理器的 Windows Server 2012 R2 机器上运行的。我已经看到可以通过 Spoon.bat 控制内存使用,但在网上没有找到任何关于控制 CPU 使用的信息。

【问题讨论】:

  • 感谢您的链接,但只有一半的问题来自 SQL Server 方面,读取数据。另一半发生在 Pentaho 中,用于编写 XML 文件。

标签: sql-server pentaho cpu-usage kettle


【解决方案1】:

根据我的经验,在正常情况下,这些步骤都不是 CPU 密集型的。我能想到的两个原因是:

尝试格式化 XML 令人窒息。这可以通过检查表格输入步骤中的选项延迟转换和文本文件输出步骤中的快速数据转储(无格式)来解决。然后它应该只是流式传输字符串数据。

另一个是你有大量的 XML,CPU 使用实际上是垃圾收集,因为 Pentaho 内存不足。通过增加最大堆空间来测试这一点(启动脚本中的 -Xmx1024m 选项。)

【讨论】:

    猜你喜欢
    • 2014-01-17
    • 2015-07-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多