Kafka到Google Cloud Platform的数据流提取

阿莫·安塔卡(Amogh Antarkar)

可以将主题中的Kafka数据流式传输,使用和摄取到BigQuery / Cloud存储中的可能选项是什么。

按照规定,可以将Kafka与Google Cloud Dataflow一起使用

GCP随附了基于Apache Beam编程模型构建的Dataflow。KafkaIO是否与Beam Pipeline一起使用是对传入数据进行实时转换的推荐方式?

https://beam.apache.org/releases/javadoc/2.5.0/org/apache/beam/sdk/io/kafka/KafkaIO.html

Kafka数据可以推送到云pub-sub,然后推送到BigQuery表。也可以使用GCP之外的Kafka流/火花作业。

鉴于数据完全托管在Google Cloud Platform(GCP)上,因此在设计决策时需要考虑哪些因素?

巴勃罗

Kafka支持于2016年通过KafkaIO的一系列转换添加到Apache Beam中这意味着Dataflow也支持它。

将数据加载到BigQuery中最简单的方法是在Dataflow上运行Apache Beam管道。您的管道如下所示:

Pipeline p = Pipeline.create();

p.apply("ReadFromKafka", KafkaIO.read()
                                .withTopic(myTopic)...)
 .apply("TransformData", ParDo.of(new FormatKafkaDataToBigQueryTableRow(mySchema))
 .apply(BigQueryIO.writeTableRows()
                  .to(myTableName)
                  .withSchema(mySchema));

p.run().waitUntilFinish();

在Dataflow上使用Beam管道的优点是您不必管理数据读取的偏移量,状态和一致性(与从Kafka-> BQ读取的自定义编写的过程相比);也没有集群(相对于Spark作业)。

最后,这是一个使用KafkaIO的管道示例

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Google Cloud Platform:无需数据流即可将发布/订阅中的数据累积到Cloud Storage中的文件

Spring Cloud数据流中的Kafka源

通过Google Cloud Deployment Manager创建的Google数据流

通过Google Cloud数据流中的CombineFn访问PipelineOptions

将docker用于Google Cloud数据流依赖项

从Google Cloud Storage流数据流到Big Query

在Google Cloud Platform中运行数据流时出现“ java.lang.IllegalArgumentException:未找到方案gs的文件系统”

Sink组件无法在Spring Cloud数据流中使用Kafka获得正确的数据

Spring Cloud数据流和SCDF Kafka数据源

如何将spring cloud任务java jar注册到spring数据流kubernetes中

Google Cloud Composer(Airflow)-DAG中的数据流作业成功执行,但DAG失败

通过 Google Cloud Scheduler 执行数据流模板

尝试通过数据流访问Google Cloud Datastore时出现403错误

带有 SSL 的 Google Cloud Postgresql 的 Java 连接字符串 - 数据流

使用Spring Batch和Spring Cloud数据流构建文件轮询/提取任务

Spring集成或Spring Cloud数据流

Spring Cloud 数据流内部通信

Apache Spark与Spring Cloud数据流

Google Cloud Platform数据显示

如何在数据流工作者上执行google-cloud-bigquery == 0.28.0安装

Spring Cloud数据流编辑现有流

Apache Kafka 事务数据流

从Google数据流到Google Cloud Firestore的输出

Spring Cloud数据流是否支持批处理

使用Kubernetes的Sprint Cloud数据流:BackoffLimit

使用servlet前缀配置Spring Cloud数据流

Amazon ECS上的Spring Cloud数据流

如何扩展Spring Cloud数据流服务器

在Cloud Run上本地运行数据流