2015-02-11 34 views
0

我通过azure文档阅读并发现,队列的邮件大小限制为64 Kb,服务总线为256 KB。我们正在尝试开发一种应用程序,它将从某些设备读取传感器数据,调用REST服务并将其上传到云。这些数据将存储在队列中,然后转储到云数据库。Azure邮件大小限制和物联网

有可能收集的传感器数据超过256 KB ......在这种情况下,推荐的方法是什么......我们是否需要在REST服务中拆分数据 ,然后将大量数据在队列中或有任何帮助表示赞赏

+0

你可以把数据Blob存储总是其大小是否超过:

有使用HBase的与便宜的Blob存储作为垫层和Azure的机器学习作为我的分析解决方案的一部分摄入的实例256KB。 – 2015-02-11 16:16:23

+0

我需要在将来对这些数据运行分析......您的意思是将它放在blob存储中并在队列中存储引用,以便工作进程可以读取它并将其保存到数据库 – Sabarish 2015-02-11 19:06:25

+1

没错。您将数据存储在blob存储中,然后使用blob URL创建消息并将其存储在队列中。您的工作进程可以从队列中获取消息,获取blob URL,读取和处理数据。 – 2015-02-12 00:37:26

回答

2

你有几个相互冲突的技术报告任何其他建议模式

。我将首先澄清一些。

  1. 服务总线/物联网集线器不是发送呼叫。一个邮政呼叫将使用一个 宁静的服务,它是单独存在的。 IoT Hub使用从您抽象出的低延迟消息传递系统 。这些 旨在成为大容量小型数据包,并适用于大多数物联网 方案。

  2. 在其中一个消息是大于256 KB(这是一个物联网的情况很有意思,我很想 明白为什么这些消息是如此之大)的情况下,您应上传到 Blob存储。您还可以发布包

    • 如果您对您的设备访问Blob存储API的,你应该走这条路
    • 如果您没有访问到这一点,你应该张贴的大数据包发送到休息端点并且交叉你的手指使它或者将它切碎。

      1. 您可以在Blob存储上运行发布分析,我会建议使用wasb前缀,因为这些容器符合Hadoop标准,您可以在这些存储机制之上站立分析集群。

您有一个队列,我马上就可以看到没有真正的需要。

你应该看看的模式撬动:

  1. 流分析:https://azure.microsoft.com/en-us/services/stream-analytics/
  2. Azure的数据工厂:https://azure.microsoft.com/en-us/services/data-factory/

你典型的摄入将是:最多让你的数据到尽可能轻松地将云存储到超便宜的存储中,然后稍后使用群集进行分析,您可以站起来并根据需求进行拆卸。这种便宜的存储通常是一团糟,分析集群通常是某种形式的Hadoop。使用数据工厂可以在您确定要使用特定组件的情况下管理数据。http://indiedevspot.com/2015/07/09/powering-azureml-with-hadoop-hbase/