Kinesis 和 Google BigQuery 集成

强大的性能和简单的集成,由 InfluxData 构建的开源数据连接器 Telegraf 提供支持。

info

这不是大规模实时查询的推荐配置。 为了查询和压缩优化、高速摄取和高可用性,您可能需要考虑 Kinesis 和 InfluxDB

50 亿+

Telegraf 下载量

#1

时序数据库
来源:DB Engines

10 亿+

InfluxDB 下载量

2,800+

贡献者

目录

强大的性能,无限的扩展能力

收集、组织和处理海量高速数据。 当您将任何数据视为时间序列数据时,它都更有价值。 使用 InfluxDB,排名第一的时间序列平台,旨在与 Telegraf 一起扩展。

查看入门方法

输入和输出集成概述

Kinesis 插件使您能够从 Kinesis 数据流中读取数据,支持各种数据格式和配置。

Google BigQuery 插件允许 Telegraf 将指标写入 Google Cloud BigQuery,从而为遥测数据实现强大的数据分析功能。

集成详情

Kinesis

Kinesis Telegraf 插件旨在从 Amazon Kinesis 数据流中读取数据,使用户能够实时收集指标。 作为服务输入插件,它通过监听传入数据而不是定期轮询来运行。 配置指定了各种选项,包括 AWS 区域、流名称、身份验证凭据和数据格式。 它支持跟踪未传递的消息以防止数据丢失,用户可以利用 DynamoDB 来维护上次处理记录的检查点。 此插件特别适用于需要可靠且可扩展的流处理以及其他监控需求的应用程序。

Google BigQuery

Telegraf 的 Google BigQuery 插件实现了与 Google Cloud 的 BigQuery 服务的无缝集成,BigQuery 服务是一个流行的数据仓库和分析平台。 此插件有助于将 Telegraf 收集的指标传输到 BigQuery 数据集中,使用户可以更轻松地从其遥测数据中执行分析并生成见解。 它需要通过服务帐户或用户凭据进行身份验证,并且旨在处理各种数据类型,确保用户可以在指标存储在 BigQuery 表中时保持其完整性和准确性。 配置选项允许围绕数据集规范和处理指标进行自定义,包括管理指标名称中的连字符,BigQuery 的流式插入不支持连字符。 对于利用 BigQuery 的可扩展性和强大的查询功能来分析大量监控数据的组织来说,此插件特别有用。

配置

Kinesis


# Configuration for the AWS Kinesis input.
[[inputs.kinesis_consumer]]
  ## Amazon REGION of kinesis endpoint.
  region = "ap-southeast-2"

  ## Amazon Credentials
  ## Credentials are loaded in the following order
  ## 1) Web identity provider credentials via STS if role_arn and web_identity_token_file are specified
  ## 2) Assumed credentials via STS if role_arn is specified
  ## 3) explicit credentials from 'access_key' and 'secret_key'
  ## 4) shared profile from 'profile'
  ## 5) environment variables
  ## 6) shared credentials file
  ## 7) EC2 Instance Profile
  # access_key = ""
  # secret_key = ""
  # token = ""
  # role_arn = ""
  # web_identity_token_file = ""
  # role_session_name = ""
  # profile = ""
  # shared_credential_file = ""

  ## Endpoint to make request against, the correct endpoint is automatically
  ## determined and this option should only be set if you wish to override the
  ## default.
  ##   ex: endpoint_url = "http://localhost:8000"
  # endpoint_url = ""

  ## Kinesis StreamName must exist prior to starting telegraf.
  streamname = "StreamName"

  ## Shard iterator type (only 'TRIM_HORIZON' and 'LATEST' currently supported)
  # shard_iterator_type = "TRIM_HORIZON"

  ## Max undelivered messages
  ## This plugin uses tracking metrics, which ensure messages are read to
  ## outputs before acknowledging them to the original broker to ensure data
  ## is not lost. This option sets the maximum messages to read from the
  ## broker that have not been written by an output.
  ##
  ## This value needs to be picked with awareness of the agent's
  ## metric_batch_size value as well. Setting max undelivered messages too high
  ## can result in a constant stream of data batches to the output. While
  ## setting it too low may never flush the broker's messages.
  # max_undelivered_messages = 1000

  ## Data format to consume.
  ## Each data format has its own unique set of configuration options, read
  ## more about them here:
  ## https://github.com/influxdata/telegraf/blob/master/docs/DATA_FORMATS_INPUT.md
  data_format = "influx"

  ##
  ## The content encoding of the data from kinesis
  ## If you are processing a cloudwatch logs kinesis stream then set this to "gzip"
  ## as AWS compresses cloudwatch log data before it is sent to kinesis (aws
  ## also base64 encodes the zip byte data before pushing to the stream.  The base64 decoding
  ## is done automatically by the golang sdk, as data is read from kinesis)
  ##
  # content_encoding = "identity"

  ## Optional
  ## Configuration for a dynamodb checkpoint
  [inputs.kinesis_consumer.checkpoint_dynamodb]
    ## unique name for this consumer
    app_name = "default"
    table_name = "default"

Google BigQuery

# Configuration for Google Cloud BigQuery to send entries
[[outputs.bigquery]]
  ## Credentials File
  credentials_file = "/path/to/service/account/key.json"

  ## Google Cloud Platform Project
  # project = ""

  ## The namespace for the metric descriptor
  dataset = "telegraf"

  ## Timeout for BigQuery operations.
  # timeout = "5s"

  ## Character to replace hyphens on Metric name
  # replace_hyphen_to = "_"

  ## Write all metrics in a single compact table
  # compact_table = ""
  

输入和输出集成示例

Kinesis

  1. 使用 Kinesis 进行实时数据处理: 此用例涉及将 Kinesis 插件与监控仪表板集成,以实时分析传入的数据指标。 例如,应用程序可以从多个服务中消费日志并将它们可视化呈现,从而使运营团队能够快速识别趋势并对发生的异常做出反应。

  2. 无服务器日志聚合: 在无服务器架构中使用此插件,其中 Kinesis 流聚合来自各种微服务的日志。 该插件可以创建指标,帮助检测系统中的问题,通过第三方集成自动化警报流程,使团队能够最大限度地减少停机时间并提高可靠性。

  3. 基于流指标的动态扩展: 实施一种解决方案,其中 Kinesis 插件消耗的流指标可用于动态调整资源。 例如,如果处理的记录数激增,则可以触发相应的向上扩展操作以处理增加的负载,从而确保最佳的资源分配和性能。

  4. 使用检查点到 S3 的数据管道: 创建一个强大的数据管道,其中 Kinesis 流数据通过 Telegraf Kinesis 插件处理,检查点存储在 DynamoDB 中。 这种方法可以确保数据一致性和可靠性,因为它管理已处理数据的状态,从而实现与下游数据湖或存储解决方案的无缝集成。

Google BigQuery

  1. 实时分析仪表板: 利用 Google BigQuery 插件将实时指标馈送到 Google Cloud 上托管的自定义分析仪表板中。 这种设置将允许团队实时可视化性能数据,从而深入了解系统健康状况和使用模式。 通过使用 BigQuery 的查询功能,用户可以轻松创建量身定制的报告和仪表板,以满足其特定需求,从而增强决策过程。

  2. 成本管理和优化分析: 利用该插件自动将来自各种服务的成本相关指标发送到 BigQuery 中。 分析这些数据可以帮助企业识别不必要的费用并优化资源使用。 通过在 BigQuery 中执行聚合和转换查询,组织可以创建准确的预测并有效地管理其云支出。

  3. 跨团队监控数据协作: 使组织内的不同团队能够使用 BigQuery 共享其监控数据。 借助此 Telegraf 插件,团队可以将他们的指标推送到中央 BigQuery 实例,从而促进协作。 这种数据共享方法鼓励最佳实践和跨职能意识,从而共同改进系统性能和可靠性。

  4. 用于容量规划的历史分析: 通过使用 BigQuery 插件,公司可以收集和存储对于容量规划至关重要的历史指标数据。 分析随时间变化的趋势可以帮助预测系统需求并主动扩展基础设施。 组织可以创建时间序列分析并识别为他们的长期战略决策提供信息的模式。

反馈

感谢您成为我们社区的一份子! 如果您有任何一般反馈或在这些页面上发现了任何错误,我们欢迎并鼓励您提出意见。 请在 InfluxDB 社区 Slack 中提交您的反馈。

强大的性能,无限的扩展能力

收集、组织和处理海量高速数据。 当您将任何数据视为时间序列数据时,它都更有价值。 使用 InfluxDB,排名第一的时间序列平台,旨在与 Telegraf 一起扩展。

查看入门方法

相关集成

HTTP 和 InfluxDB 集成

HTTP 插件从一个或多个 HTTP(S) 端点收集指标。 它支持各种身份验证方法和数据格式的配置选项。

查看集成

Kafka 和 InfluxDB 集成

此插件从 Kafka 读取消息并允许基于这些消息创建指标。 它支持各种配置,包括不同的 Kafka 设置和消息处理选项。

查看集成

Kinesis 和 InfluxDB 集成

Kinesis 插件允许从 AWS Kinesis 流中读取指标。 它支持多种输入数据格式,并提供带有 DynamoDB 的检查点功能,以实现可靠的消息处理。

查看集成