Eclipse IoT开发者调查结果已揭晓!
作者:David G. Simmons / 公司,用例,开发者
2018年4月19日
导航至
对于那些不知道的人来说,InfluxData自去年年底以来一直是Eclipse基金会的成员。我们加入是因为有几个Eclipse IoT项目已经基于InfluxDB,或者将其用作其底层数据存储。谁知道呢?开源产品往往就是这样。你不知道谁在使用它,以及用它来做什么,直到他们来购买许可证——而Eclipse不太可能这样做。
但这与为什么我要写这篇文章几乎没有关系。你看,Eclipse基金会的年度IoT开发者调查结果本周公布了。我们一直期待着这些结果,它们并没有令人失望!让我先说,结果中并没有什么令人震惊的发现——至少对我来说是这样。如果您对整个报告感兴趣,请随时阅读这里。我将简要介绍一些我认为特别有趣的发现,这些发现与InfluxData有关。您还可以查看2017、2016和2015调查的结果,以了解更大的趋势。还有一场网络研讨会将在4月19日星期四举行,您绝对不能错过。
有趣的趋势
我很感兴趣地看到,谷歌不仅没有获得动力,实际上在Azure和AWS的竞争中失去了地盘。谷歌进入市场并不总是至少获得显著的市场份额。话虽如此,看到AWS以24.1%的份额主导市场,这并不令人惊讶。我们在这里的InfluxData是AWS合作伙伴网络的一部分,与AWS有着紧密的合作关系。
首次,物联网开发者最关注的问题之一竟然是数据收集和分析——比去年增长了50%,达到了18%。安全性仍然位居榜首,这是理所当然的!我们在这里的InfluxData很高兴看到更多的物联网开发者开始将数据收集和分析视为物联网部署的重要问题。我已说过十多年,如果你不根据你收集的物联网数据采取行动,那么收集它就没有意义,很高兴看到更广泛的物联网社区也开始关注这一点。
似乎对于许多开发者来说,连接性和互操作性也开始被视为“解决”了的问题。我从事物联网行业已经很长时间了,看到连接性和互操作性的趋势逐渐减弱是一个受欢迎的迹象。我认为对数据收集和分析的关注增加,对InfluxData来说是一个机遇,因为我一直认为InfluxData是物联网最佳、最简单、最灵活的数据收集和分析平台。
我还看到,作为物联网消息协议的HTTP使用量下降,这让我有些惊讶,但MQTT的持续主导地位并没有让我感到意外。我很高兴,随着MQTT和AMQP作为物联网消息协议的增长,InfluxDB通过Telegraf支持了它们。随着这些协议的扩展,我们会扩展对它们的原生支持。我还注意到CoAP的受欢迎程度似乎有所下降。Web sockets似乎是新的宠儿,突然崛起,占据了第三的位置。
数据库
你们一直在等我说到这个部分,对吧?我知道我在等!物联网数据库的部分对我来说特别有趣。如果你考虑到这一点,一个像MySQL这样的传统SQL数据库仍然占主导地位并不那么令人惊讶。时序数据库是相对较新的领域,许多开发者只是使用他们最熟悉的工具。SQL数据库存在已久,所以许多开发者可能只是更习惯于使用它们。MongoDB在物联网中的流行仍然让我困惑。我自己也曾经因为不知道其他选择而使用MongoDB构建和部署物联网项目。MongoDB相对容易设置和配置——尽管在它上面构建前端需要大量的编码。但后来我发现了时序数据库,我就再也没有回头。
人们使用MongoDB的一个原因是设置简单,但我会挑战任何人在5分钟内完成MongoDB的设置,并在浏览器中运行一个系统统计仪表盘。我用InfluxDB就做到了这一点。[点击查看](https://vimeo.com/253841605)。我想这可能可以被视为一种挑战,所以如果你这样看待它,请随意尝试证明我是错的。
但让我挠头的原因是MongoDB在物联网中的性能。我昨天在Twitter上关于这一点发了一篇长篇大论,但我会在这里再说一遍,以防你没有在Twitter上关注我——你真的应该关注!现在就关注我!以下是一些在考虑MongoDB用于物联网时需要记住的性能数据
配置:AWS c4.4xlarge:Intel Xeon E5-2666 v3 2.9GHz,16 vCPU,30GB RAM,1x EBS Provisioned IOPS SSD 120GB
数据库 | 摄取率(值/秒) | 查询持续时间 | 查询/秒 | 磁盘大小 |
InfluxDB v1.4.2 | 1,432,630 | 1.22毫秒 | 820.47 | 145MB |
MongoDB v5.6.3 | 24,897 | 14.03毫秒 | 71.27 | 16.7GB |
对于那些不想自己计算的人来说,这是57倍更快的数据摄入,11.5倍更快的查询速度和每秒查询次数,以及与MongoDB相比近100倍更低的磁盘使用率。现在,请精确地告诉我你为什么还要选择MongoDB,可以吗?也许是为了你的传感器元数据吧。但对于你的传感器数据呢?你的时序传感器数据?不,不行的。
现在,让我们看看图表
目前,排名第三的位置是个很好的位置,尤其是考虑到我们与下一个最受欢迎的TSDB的关系。但我们应该远远领先MongoDB,并在MySQL上取得进展。自从我还是个孩子的时候,就一直有人告诉我:“用合适的工具来完成工作!”别用螺丝刀敲钉子。(我承认,我在这方面犯过错误。)所以,不要用通用事务型数据库来处理时序数据。当然,也不要用文档数据库来处理时序数据。这就像用螺丝刀去钉铁路钉子,即使是我也不会尝试这样做!当然,你可以做到,但这会花上10倍的时间,并需要100倍的努力。
新格言:朋友们,别让你的朋友用MongoDB处理物联网数据!
完整结果
如果你对查看调查的完整结果感兴趣,而不仅仅是听我的话,请随意查看它的 SlideShare。如果你对处理原始数据感兴趣,因为你就是那种数据极客,你可以下载原始结果作为 Google电子表格。如果你对Benjamin Cabé与Mike Milinkovitch讨论结果感兴趣,那么赶快!周四4月19日的网络研讨会报名。如果你在日期之后阅读这篇文章,链接也会带你去往录制版本,所以不要错过!