哪些物联网服务可用于在云中存储/发送/发布通用数据?


16

哪些物联网服务可用于在云中存储/发送/发布(以及相反的操作)少量通用数据?

例如,我正在寻找一种设备可以在云中存储值的服务。其他一些实体(另一个设备,带有一些JS代码的网站,Web服务器,移动应用程序)可以检索此值。

它可能是某种异步通信,例如用于存储和检索小于键和值对的东西,小于255字节,整数,字符串,最多是一个小的JSON对象。该服务可以提供REST API(因此可以通过多种语言进行访问),其中包含一些用于身份验证的令牌以及要存储的密钥和值。

用例的详细示例是:

家里有一个温度传感器,我希望它将值存储在云中(家外某处)。这样,无论我的家庭连接是否断开,我都可以访问它。Morevoer,这将避免保留和维护专用服务器+ portForwarding + DynamicDNS。

到目前为止,我还找不到类似的东西,但偶尔,我发现了一些我想要描述的例子:

还有哪些其他类似的(免费/开放)替代方案?


@BenceKaulics我认为这两种用例都适用。专业的解决方案可能意味着更高的标准性和可靠性。实验解决方案可能是一个有趣的开源项目。
urnenfeld'1

我不想成为一个破坏性的运动,但我不认为这是物联网的要求,更像是我们需要其他站点的Web服务。使用任何您喜欢的东西-您自己的网站,免费托管,Amazon Web Services等。您尚未真正告诉我们您要实现的目标。例如,您要编写任何服务器软件的代码吗?没有细节,只有温暖,模糊的感觉,因此很难回答您。
Mawg说恢复Monica's

2
@Mawg它具有Web服务标签(我没有创建)。正如所给的参考一样,该用例是针对物联网的。它要求提供可用的服务,尽管这可以通过简单的php + db实现,但其目的并不是重新发明轮子,而是要了解IoT社区知道的服务。但是,请让我知道您认为哪个社区更合适。
urnenfeld'1

这是一个接近的电话。我承认,有时我会在Stack Overflow上发帖,在该网站上其他网站会更正确。但是,SO的受众更大,所以我有更多的机会得到答复。与其他网站总是有一些重叠之处,我们将不得不逐步解决。+1(表示不犯罪),现在您知道安全站点了。问题*仍然可以使用更多细节:-)
Mawg说恢复Monica的时间为

2
@Mawg当然没有冒犯:)。我真的花了一些时间思考问题的位置...之前我确实尝试过提出更多的问题,现在让我们看看,我添加了确切的用例和试验性解决方案。
urnenfeld '17

Answers:


10

看一下这些服务:

这两个服务都将接受来自设备的简单键/值数据。我相信自从您提到它们以来,它们都已经准备好为粒子设备导入库。


7

许多云提供商(如亚马逊,微软,谷歌,IBM等)试图通过提供更轻松的方法将传感器数据发送/存储/分析到其云中来吸引物联网空间。甚至他们也将收购硬件供应商以扩大其在物联网领域的范围。

除了AWS之外,我没有使用任何其他服务,因此我可以解释我在AWS方面的经验以及我们如何将其集成以用于生产用途。


场景:

我们有数百个传感器,每个传感器每分钟向本地网关发送184-428字节的数据,该网关将数据聚合并存储在本地,然后将相同的数据发送到AWS云。我们还有特殊情况的传感器,这些传感器将数据直接发送到云。

云服务

我们使用AWS IoT,AWS S3,AWS DynamoDB,AWS Lambda,AWS API Gateway,AWS SNS,AWS Cloudwatch,AWS RedShift构建完整的解决方案。基本上,这些不是特定于IoT(AWS IoT除外)的,因为我们可以将其用于移动,Web。

网关使用AWS IoT SDK使用MQTT,HTTP或WebSockets协议与AWS IoT连接,认证和交换消息(我们正在使用通过MQTT连接的节点JS SDK)。我们是设备网关本地的MQTT经纪人,并将其桥接到AWS IoT端点无需仅使用AWS触发器存储数据就写一行完成的代码)。


6

它仅用于实验或测试用途,但将来可能会改变。

因此,我的建议是使用MQTT,更确切地说是其Mosquitto实现。他们托管了一个测试代理,您可以将订户和发布者客户端连接到该代理。(这是有关Windows 7上安装过程的指南

请注意以下几点:

您可以自由地将其用于任何应用程序,但请勿滥用或依赖它进行任何重要的操作。您还应该构建客户端以应对代理重新启动。

但是基本上,您可以将温度数据发布到此代理。

在订户客户端,我最近使用了这个Android应用程序。它是一个非常基本的应用程序,仍在开发中,但出于测试目的,它非常好。接收到的消息显示在仪表板上,没有什么仅是裸值。

我已经开始将这两种方法都用作我的MQTT学习过程的第一步,并且发现这两种方法都非常适合初学者。


1
MQTT会不是更适合LAN上下文的解决方案?是否遇到隐私/安全/多用户之类的问题?
urnenfeld'1

@urnenfeld MQTT可以支持您的网站,移动应用程序和“其他设备”的要求,因为您可以全部订阅。同样可以肯定的是,您将来还会希望从其他设备发送数据,而不仅仅是温度数据,因此即使只有多发布者单用户网络,多用户功能也是一个很好的IMO。安全性和隐私性也应该始终是一个问题。对于LAN,也许更适合,但如果您照顾好安全性,则可以使您的经纪人随处可见,而不是专家。
Bence Kaulics'1

1
嗯,此测试代理是测试代理,因此不应用于正在运行的应用程序。但是想法就在这里:您可以从防火墙打开MQTT代理的端口,并从任何地方进行连接。
Goufalite

很抱歉,OP希望存储数据,MQTT只是一个使者,但您可以使用它将数据发送到专用服务器。要检索值,客户端必须向MQTT发送查询以通过发布检索该值。MQTT很棒,但是Web服务在这里占有更好的位置……
Goufalite

@Goufalite是的,存储数据更加复杂。
Bence Kaulics

5

有两个组成部分:

  1. 您如何存储数据?没有真正的方法可以使“通用”数据服务真正满足所有需求。您想要的就是所谓的“时间序列数据库”,其中有数百个,因为有关存储数据的每个细节都至关重要。(如果规模不大,只需将其存储在任何旧数据库中,它将工作一段时间。)

    之所以编写每个时间序列数据库,是因为其他数据库没有按照他们想要的方式做。例如,考虑Graphite如何存储其数据:每个度量标准(例如,来自一个来源的温度)都存储在固定大小的文件中。无论您多久发送一次度量标准,或者发送多长时间,该文件都是固定大小的。

    不利的一面是,较旧的数据的分辨率较低,并且在您定义的固定间隔(例如1年)之后,数据将被丢弃。但是好处是,绘制一天和一年的图表一样快,并且指标不会随着时间的推移而增长。

    在其他存储系统中,生成一年的图形可能涉及获取数百万个数据点,并且可能需要大量的数据存储。

    Graphite的最大缺点是每个指标都会创建一个新文件,因此,如果您有动态指标(例如云盒来去去),则可能不合适。

    Prometheus相比,Prometheus的度量标准主要按时间存储。您可以有很多动态指标,这很好。但是,请勿长期存储这些指标,这将需要永久的时间来重新读取它们。

    没有一种尺寸能适合所有尺寸。

    PS Graphana是可视化数据的绝佳方法。它具有适用于大多数时间序列数据库的插件。

  2. 谁来存储您的数据?成千上万地方那些你所提到的。在云中建立一个时间序列数据库很容易,但要赚钱真的很困难,这些公司中的大多数会在一段时间后倒闭或开始进行价格欺诈。(即使保持价格稳定也是对价格的欺骗-因为计算成本在不断下降。)很多时候,他们发现他们吸引的新客户数量不尽如人意,因此他们试图提高价格(以幌子为幌子)。更改其定价模式)。事实证明,存储每个人的数据要花很多钱……

    我建议自我托管,或使用信誉良好的云提供商,例如AWS CloudWatch。(如果您有很多指标,则价格昂贵,但少于50个指标则免费!)


这个想法是要从“千个地方”中选出最好的。我已经收集了集合(即使做了我自己),这将某个张贴在这里
urnenfeld

3

uBeac是我们开发的一种新的免费软件可视化工具,它是Beta版。它不是开源的,但是完全可以免费使用。

您可以定义网关,并且将获得唯一的URI。您可以在网关或设备中设置URI,以向其发送HTTP / MQTT数据。

这些是其某些功能:

  • 团队,建筑物,平面图定义
  • 实时数据可视化
  • 使用不同的小部件的自定义仪表板设计
  • 定义传感器类型,单位和前缀地图可视化
  • ...

它支持通用Json数据格式以及不同的预定义网关。如果您不想使用预定义的有效载荷格式,则可以使用它们来开发自定义有效载荷处理。


嗨,@ Amir,我们注意到到目前为止,您的答案是彼此重复的,并且正在推广您的产品。可以回答与您的产品相关的问题,但是请务必阅读帮助中心中的自我宣传指南。调整您对当前问题的答案也是一个好主意,而不是发布相同的文本以确保您实际上是在完全回答问题,而不仅仅是宣传您的产品。谢谢。
Aurora0001

1

我很惊讶这里没有人提到Dweet。这是一种让事物进行交流的超级简单,超级有趣的方式。您应该确定尝试一下,因为嘿,它是免费的!


1
确实提出了该建议,但节制将其删除。这项服务的有趣之处之一是,您甚至都不需要注册,它们可以显示您的数据。在另一方,您的数据相当公开:)
urnenfeld '19

0

flespi提供免费和商业的云服务:

强制性免责声明:我正在为开发flespi平台的公司工作。尽管我会尽我最大的努力保持客观性,但还是一如既往地在Internet上,但请仔细检查此答案中的所有信息,以排除可能影响您决定的偏见。


同样,在推荐服务时,请声明与服务的任何连接(例如,您为flespi工作)
hardillb
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.