go - 在 golang 中批量处理来自 ms azure eventhub 的事件

标签 go batch-processing azure-eventhub azure-sdk

我从 AZURE eventhub 阅读了一些关于如何在 golang 中处理事件的文档,但这些都是一篇一篇的,我在任何地方都找不到事件的批处理。这似乎对 ETL 操作毫无用处。有谁知道如何使用 golang 库批处理事件?

因为目前我查看了 https://github.com/Azure/azure-event-hubs-go/blob/master/_examples/helloworld/consumer/main.go但是处理程序是一个接受单个事件作为参数的函数。如果有一些可以接受批量事件的处理程序,将会更有效。因为如果我想根据事件做一些数据库事务,我将不得不为每个事件做一个事务。我也不能只将它发送到其他 goroutine,因为如果我根据处理的事件在数据库中进行事务,我必须确保在批处理之后设置检查点。就像在 AWS lambda 中使用 AWS 运动一样。

最佳答案

我想这个问题是无效的。因为我可以在任何需要的时候自由存储检查点(不仅在批处理之后,而且在处理多个批处理之后)。我可以随意使用这个一对一的 api,并将事件转发给某个自定义批处理程序。所有事件都包含一个偏移量,因此我可以随时在自定义批处理器中存储一个检查点。

PS:链接的azure例子中提到批处理,其实是批写,不是批读。

关于go - 在 golang 中批量处理来自 ms azure eventhub 的事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54012567/

相关文章:

multithreading - 使用 goroutine 运行同一程序的另一个实例?

戈朗 : Variable argument

batch-file - Batch for 循环是否可以增加步长值?

python - 在 GCP 上使用 python numpy 和 pandas 部署小批量作业

c# - 带有 eventData 对象的 EventHubTrigger C# 不起作用

http - 发出 http 请求时打开的文件太多

docker - 如何在 docker 中正确运行 golang 应用程序?

console - GIMP 批量编辑(Script-fu/Python-fu)

Azure 函数 - 事件中心触发器已停止

来自另一个帐户中的事件中心的 Azure 函数触发器