写点什么

IoT 高级设备检索

作者:阿里云AIoT
  • 2022-12-08
    浙江
  • 本文字数:1010 字

    阅读完需:约 3 分钟

场景特性

     每个业务场景都有自己特有数据特性,IoT 也不例外。单纯从设备检索的角度切入来看,IoT 的设备检索特性如下:

           1. 亿级数据

           2. 数据高频变更

           3. 时序特性

           4. 无冷热特征

           5. 结构松散

           6. 数据异构

数据 Dump 层

     整体思路和多数检索场景类似:全量数据+增量数据。由于底层用了多套云检索引擎,因此整个 Dump 层天然具备云原生的能力,与此同时,我们采用了影子库、主备集群、读写分离、配置化、全链路监控等手段,来保障数据的吞吐、时延、稳定、高效。


AB50B995-1011-49F0-ABB7-0A441D0CA3A4.png


物模型检索

      物模型是物理空间中的实体(如传感器、车载装置、楼宇、工厂等)在云端的数字化表示,从属性、服务和事件三个维度,分别描述了该实体是什么、能做什么、可以对外提供哪些信息。因此相对于设备的元数据(名称等),物模型数据的检索是极其重要的一部分。然而,虽然单个设备的物模型属性数量是有限的,但是不同的设备的物模型属性数是完全不一样的,这就导致最终最终设备的物模型的属性是不可穷尽的,但是我们的索引表的宽度是有限的。因此,就需要用有限的索引列存储无限的物模型数据。

       通过结合物模型的特点:数据定义明确、整体数量不可穷尽、单设备可穷尽,将单设备的物模型信息与索引进行映射,多设备复用相同索引,实现物模型数据的检索。


C6608870-0156-4EB1-9CEB-5AA0D29079F2.png


SQL-Like 检索能力

     云上的产品 ToB 的比重更高,使用我们云平台的大多数用户都有一定技术背景,SQL 在技术人员普及度又极高,为了降低用户的使用成本,我们提供了 SQL-Like 的检索能力,用户能够像查询数据库一样来检索数据。与此同时,我们底层用了多套检索引擎,因此我们希望在上层使用 SQL 检索的方式来屏蔽底层引擎的差异。简而言之,上层使用 SQL 语法,下层适配多套检索引擎。

为此,我们设计了一套:适配多引擎、业务自定义、SQL 检索框架。整体架构上,参考了Apache Calcite

SQL-Helper:我们提供了 SQL 拼装工具,用户可以像写 JAVA 那样完成 SQL 书写,防止 SQL 拼写错误带来的调试效率问题;

Adapter:适配层模块,基于底层引擎进行适配、路由;

Parser:SQL 解析模块;

Completer:语句补全、替换等;

Validater:语句校验模块;

Tanslator:语句转义为底层引擎请求,并进行参数优化;


7EB50980-8A96-49BC-828F-896695A597FA.png


使用文档

   https://help.aliyun.com/document_detail/185713.html?spm=a2c4g.11174283.6.712.2d924c07H2j7X7

阿里云物联网平台客户交流群

用户头像

阿里云AIoT

关注

物联网内容搬运者 2022-04-22 加入

还未添加个人简介

评论

发布
暂无评论
IoT高级设备检索_数据库_阿里云AIoT_InfoQ写作社区