Link Search Menu Expand Document Documentation Menu

OpenSearch Data Prepper

OpenSearch Data Prepper 是一个服务器端数据收集器,能够过滤、丰富、转换、规范化和聚合数据,以供下游分析和可视化。Data Prepper 是 OpenSearch 首选的数据摄入工具。建议将其用于 OpenSearch 中大多数数据摄入用例以及处理大型、复杂的数据集。

使用 Data Prepper,您可以构建自定义管道以改善应用程序的运营视图。Data Prepper 的两个常见用例是追踪分析和日志分析。追踪分析可以帮助您可视化事件流并识别性能问题。日志分析为您提供工具,以增强您的搜索能力,进行全面的分析,并深入了解应用程序的性能和行为。

关键概念和基础

Data Prepper 通过可自定义的管道摄入数据。这些管道由可插拔组件组成,您可以根据需要进行自定义,甚至可以插入自己的实现。Data Prepper 管道包含以下组件:

每个管道包含两个必需组件:sourcesink。如果管道中缺少 bufferprocessor 或两者都缺少,则 Data Prepper 会使用默认的 bounded_blocking 缓冲区和一个无操作处理器。请注意,单个 Data Prepper 实例可以包含一个或多个管道。

基本管道配置

要了解管道组件如何在 Data Prepper 配置中发挥作用,请参阅以下示例。每个管道配置都使用 yaml 文件格式。有关更多信息和示例,请参阅管道 (Pipelines)

最小配置

以下最小管道配置从文件源读取数据,并将数据写入同一路径上的另一个文件。它为 bufferprocessor 组件使用默认选项。

sample-pipeline:
  source:
    file:
        path: <path/to/input-file>
  sink:
    - file:
        path: <path/to/output-file>

综合配置

以下综合管道配置同时使用了必需和可选组件:

sample-pipeline:
  workers: 4 # Number of workers
  delay: 100 # in milliseconds, how often the workers should run
  source:
    file:
        path: <path/to/input-file>
  buffer:
    bounded_blocking:
      buffer_size: 1024 # max number of events the buffer will accept
      batch_size: 256 # max number of events the buffer will drain for each read
  processor:
    - string_converter:
       upper_case: true
  sink:
    - file:
       path: <path/to/output-file>

在给定的管道配置中,source 组件从 input-file 读取字符串事件,并将数据推送到最大大小为 1024 的有界缓冲区。workers 组件指定了 4 个并发线程,它们将处理缓冲区中的事件,每个线程每 100 毫秒从缓冲区读取最多 256 个事件。每个 workers 组件都运行 string_converter 处理器,该处理器将字符串转换为大写并将处理后的输出写入 output-file

后续步骤

剩余 350 字符

有问题?

想贡献?