ClickHouseInc

GCP Pub/Sub 直连 ClickHouse Cloud,告别 Dataflow/GCS!

图片

本文字数:2814;估计阅读时间:8分钟

作者:Marta Paes

Image

摘要

只需点击几下,即可从 Pub/Sub 流式传输数据,针对 GCP 基础设施日志、应用事件和运营信号进行极速分析。无需通过 GCS 或 Dataflow 进行路由。

Pub/Sub 是各种 GCP 服务(如 Cloud Logging、Cloud Monitoring、GKE 工作负载以及 GCP 生态系统中的自定义事件生成器)的主要消息层。随着越来越多的团队将其 GCP 基础设施日志、应用事件和运营信号路由到 ClickHouse Cloud,我们希望降低数据接入的门槛。

今天,我们隆重宣布,ClickPipes 的全新 GCP Pub/Sub 连接器现已开放私有预览!您只需点击几下,即可将数据从 GCP Pub/Sub 实时无缝流式传输到 ClickHouse Cloud,且无需额外基础设施。该连接器支持所有常见格式(JSON、Avro、Protobuf)和模式注册集成,并具备基于属性的消息过滤、灵活的查找选项以及按键有序交付等功能。与所有 ClickPipes 连接器一样,它也可以通过 OpenAPI 和 ClickHouse Terraform provider 进行编程式管理。

Image
Image
为何构建 ClickPipe?

比自建数据管道更简单。 以前,将数据从 Pub/Sub 导入 ClickHouse 意味着需要通过 GCS 路由或部署 Dataflow 管道。Pub/Sub ClickPipe 会自动处理所有这些:只需将其指向您的主题,配置目标表,连接器即可为您管理订阅生命周期、模式推断和消息交付。

专为持续摄取而设计。 ClickPipes 实时消费消息,提供开箱即用的摄取性能优化,并消除数据新鲜度和成本之间的权衡。该连接器可针对高吞吐量主题进行水平和垂直扩展,并针对 ClickHouse Cloud 的架构进行了优化,同时通过可配置的副本和自动重试机制优雅地处理各类故障。

完全托管,原生集成 ClickHouse Cloud。 无需部署外部工具,您即可通过内置指标、监控和详细日志全面洞察数据管道。您可以直接修改 ClickPipes(例如,添加列、调整摄取设置),而无需从头重新创建。

Image
主要功能

与模式注册集成

平台支持所有常见的序列化格式:JSON、Avro 和 Protobuf;包括与 Pub/Sub Schema Registry 的原生集成。系统会自动推断(infer)模式(schema)和字段类型(field types),并将其映射到采用 ClickHouse 原生数据类型的目标表。压缩的负载(payloads)也会被自动检测和解压缩,无需额外配置。

可配置的起始偏移量

起始偏移量支持 Pub/Sub 的原生 seek feature,使您能够精确控制数据摄取(ingestion)的起始点:最新数据、最早数据,或指定时间戳,适用于数据回填(backfills)以及故障场景下的时间点重放(point-in-time replay)。

消息过滤

在创建 ClickPipe 时,您可以配置 Pub/Sub 订阅筛选器 (subscription filter) 来基于消息属性筛选消息,从而在消息从订阅中拉取之前将其丢弃,以减少数据摄取量和相关成本。

Terraform 与 OpenAPI 支持

对于采用工作流自动化和基础设施即代码(Infrastructure as Code, IaC)的成熟 ClickPipes 部署,ClickPipes OpenAPI specification 中新增了 pubsub 源类型,同时 ClickHouse Terraform Provider (3.16.0+) 也提供了支持。以下是在 Terraform 中配置 GCP Pub/Sub ClickPipe 资源的示例:

resource "clickhouse_clickpipe" "pubsub" {

  service_id = var.service_id

  name       = var.pipe_name

  source = {

    pubsub = {

      format         = "JSONEachRow"

      project_id     = var.gcp_project_id

      topic          = var.pubsub_topic

      authentication = "SERVICE_ACCOUNT"

      seek_type      = "latest"

      service_account_key = {

        service_account_file = var.gcp_service_account_b64

      }

    }

  }

  destination = {

    table         = var.table

    managed_table = true

    table_definition = {

      engine = {

        type = "MergeTree"

      }

    }

    columns = [

      {

        name = "my_field1"

        type = "String"

      },

      {

        name = "my_field2"

        type = "UInt64"

      },

    ]

  }

  field_mappings = [

    {

      source_field      = "my_field"

      destination_field = "my_field1"

    }

  ]

}

output "clickpipe_id" {

  value = clickhouse_clickpipe.pubsub.id

}

Image
如何注册私有预览 (Private Preview)?

GCP Pub/Sub 连接器按需提供,在私有预览 (Private Preview) 期间可免费使用。请填写 此表单 加入等待列表(https://clickhouse.com/cloud/clickpipes#pubsub-private-preview),或联系您的 ClickHouse Cloud 客户经理进行咨询。

如需获取分步操作指南,请查阅 GCP Pub/Sub ClickPipes 的文档(https://clickhouse.com/docs/integrations/clickpipes/pubsub)。

/END/

征稿启示

面向社区长期正文,文章内容包括但不限于关于 ClickHouse 的技术研究、项目实践和创新做法等。建议行文风格干货输出&图文并茂。质量合格的文章将会发布在本公众号,优秀者也有机会推荐到 ClickHouse 官网。请将文章稿件的 WORD 版本发邮件至:[email protected]

关于我们

ClickHouse(clickhouse.com) 是面向 AI 时代打造的高性能实时分析数据库,能够以极致性能处理海量数据分析任务。凭借高并发、低延迟和云原生架构,ClickHouse 广泛应用于可观测性、数据仓库、实时分析及 AI 数据基础设施等场景。我们致力于帮助企业在公有云平台上构建安全、弹性且高性价比的实时分析与 AI 数据平台,加速释放数据价值,推动智能化创新与数字化转型。目前,Trip.com、DiDi、Meta、Sony、Netflix、Deutsche Bank、Sierra、Cloudflare 等全球领先企业均在使用 ClickHouse 支撑其关键业务和数据分析平台。

图片