从Azure EventHub向CosmosDb馈送数据的最好方法是什么,以实现弹性和一些缓冲,以防止在繁忙时期超载我们的CosmosDb请求单元(RU)。如果请求存在,我们希望附加到文档中的数组,如果不存在,则创建一个新文档。
有很多选择,无服务器功能、流分析或云服务就是其中的一部分。我们希望重点关注弹性、缓冲和更新文档数组(如果存在)以及成本。
发布于 2017-10-03 05:04:11
我个人会使用Azure Stream Analytics,并在EventHub上应用翻滚窗口分析。根据数据后期处理的复杂程度,您可以直接进入CosmosDB,也可以进入Azure Function (https://azure.microsoft.com/en-us/blog/new-in-stream-analytics-output-to-azure-functions-built-in-anomaly-detection-etc/),然后在那里压缩数据并将其转发到CosmosDB。
应该是最便宜、最灵活、最具扩展性的解决方案。
发布于 2017-10-04 02:52:29
我在这一点上同意Sebastian87的观点。为了回答你关于Cosmos DB吞吐量配置的问题-在数据被摄取到Cosmos DB之前,你需要利用Azure函数中的一些简单计算来计算吞吐量应该是多少。由于Cosmos DB允许单独更改任何收集的任何时间(但仍占每小时内提供的最大吞吐量),因此在您预测较高的摄取率时设置它,并在您预期(或观察到)较低的任何时间设置它是有意义的。
https://stackoverflow.com/questions/46512743
复制相似问题