华为云用户手册

  • 技术特点 完整的事务一致性 体现在数据插入或者更新后提交即可见,不存在时延;并发更新后数据保证强一致,不会出现乱序导致的结果预期不一致。 查询性能好 多表关联等复杂AP查询场景下,更完善的分布式查询计划与分布式执行器带来的性能优势,支持复杂的子查询和存储过程。 入库快 彻底解决列存CU锁冲突问题,支持高并发的更新入库操作,典型场景下,并发更新性能是之前的百倍以上。 高压缩 数据在MERGE进入列存主表后,按列存储具有天然的压缩优势,能极大地节省磁盘空间与IO资源。 查询加速 支持主键等传统索引能力去重和加速点查,也支持分区、多维字典、局部排序等方式进一步加速AP查询。
  • 注意事项 列存表与HStore表都暂不支持SELECT FOR UPDATE语法。 对HStore表执行SELECT查询时,会扫描列存主表CU上的数据、Delta表上I记录中的数据、内存中每行数据更新信息,并将三种信息合并后返回。 在通过主键索引或唯一索引查询数据的场景中: 对于传统列存表,唯一索引会同时存储行存Delta表上的数据位置信息(blocknum,offset)与列存主表的数据位置信息(cuid,offset),数据MERGE到主表后又会插入新的索引元组,索引会持续膨胀。 对于HStore表,由于实现了全局CUID的统一分配,索引元组中始终只存储(cuid,offset), 数据MERGE后不会产生新的索引元组。
  • 语法格式 1 2 3 4 5 6 7 8 910 [ WITH [ RECURSIVE ] with_query [, ...] ]SELECT [/*+ plan_hint */] [ ALL | DISTINCT [ ON ( expression [, ...] ) ] ]{ * | {expression [ [ AS ] output_name ]} [, ...] }[ FROM from_item [, ...] ][ WHERE condition ][ GROUP BY grouping_element [, ...] ][ HAVING condition [, ...] ][ { UNION | INTERSECT | EXCEPT | MINUS } [ ALL | DISTINCT ] select ][ ORDER BY {expression [ [ ASC | DESC | USING operator ] | nlssort_expression_clause ] [ NULLS { FIRST | LAST } ]} [, ...] ][ { [ LIMIT { count | ALL } ] [ OFFSET start [ ROW | ROWS ] ] } | { LIMIT start, { count | ALL } } ]
  • 参数说明 DISTINCT [ ON ( expression [, ...] ) ] 从SELECT的结果集中删除所有重复的行,使结果集中的每行都是唯一的。 ON ( expression [, ...] ) 只保留那些在给出表达式上运算出相同结果的行集合中的第一行。 SELECT列表 指定查询表中列名,可以是部分列或者是全部(使用通配符*表示)。 通过使用子句AS output_name可以为输出字段取个别名,这个别名通常用于输出字段的显示。 FROM子句 为SELECT声明一个或者多个源表。 WHERE子句 WHERE子句构成一个行选择表达式,用来缩小SELECT查询的范围。condition是返回值为布尔型的任意表达式,任何不满足该条件的行都不会被检索。 WHERE子句中可以通过指定“(+)”操作符的方法将表的连接关系转换为外连接。但是不建议用户使用这种用法,因为这并不是SQL的标准语法,在做平台迁移的时候可能面临语法兼容性的问题。同时,使用“(+)”有很多限制。 GROUP BY子句 将查询结果按某一列或多列的值分组,值相等的为一组。 HAVING子句 与GROUP BY子句配合用来选择特殊的组。HAVING子句将组的一些属性与一个常数值比较,只有满足HAVING子句中的逻辑表达式的组才会被提取出来。 ORDER BY子句 对SELECT语句检索得到的数据进行升序或降序排序。
  • 约束限制 当需要使用HStore表时,需要同步修改以下几个参数的默认值,否则会导致HStore表性能严重劣化。 推荐的参数修改配置是:autovacuum_max_workers_hstore=3,autovacuum_max_workers=6,autovacuum=true。 当前HStore与列存都不支持使用Vacuum清理索引脏数据,在频繁Update场景可能会导致索引膨胀,后续版本会支持。
  • 约束限制 当需要使用HStore表时,需要同步修改以下几个参数的默认值,否则会导致HStore表性能严重劣化。 推荐的参数修改配置是:autovacuum_max_workers_hstore=3,autovacuum_max_workers=6,autovacuum=true。 8.2.1及以上版本支持列存索引脏数据清理,频繁更新入库的场景下能有效控制索引空间,提高入库与查询性能。 当使用HStore异步排序功能时,有两点需要注意。 异步排序期间可能会阻塞部分数据的DML操作,最大的阻塞粒度为异步排序的行数阈值,因此在反复DML的场景下不建议使用此功能。 自动异步排序与列存vacuum互斥,当autovacuum流程中满足列存vacuum的条件,则直接跳过流程中的异步排序,等待下次触发(极端场景下因为反复大批量DML操作的执行,列存vacuum会不停被触发,因此异步排序总是无法被触发)。
  • enable_hstoreopt_insert_sort 参数说明:用于控制HStore Opt表是否开启入库排序(包括Vaccum Full)。 该参数仅9.1.0.100及以上版本支持。 参数类型:SIGHUP 取值范围:布尔型 on表示开启入库排序。 off表示在异步排序开启(autovacuum_asyncsort_time_limit大于0)时,关闭入库排序(包括Vacuum Full),异步排序关闭时,入库排序(包括Vacuum Full) 仍然启用。 默认值:on
  • autovacuum_max_workers 参数说明:设置能同时运行的自动清理线程的最大数量,该参数的取值上限与max_connections和job_queue_processes大小有关。 参数类型:SIGHUP 取值范围:整型 最小值为0,表示不会自动进行autovacuum。 理论最大值为262143,实际最大值为动态值。计算公式为“262143 - max_inner_tool_connections - max_connections - job_queue_processes - 辅助线程数 – autovacuum的launcher线程数 - 1”,其中辅助线程数和autovacuum的launcher线程数由两个宏来指定,当前版本的默认值分别为20和2。 默认值:4
  • autovacuum_compaction_rows_limit 参数说明:小CU的阈值,存活元组数小于这个值的就会被认为是小CU。该参数仅8.2.1.300及以上集群版本支持。 参数类型:USERSET 取值范围:整型,-1~5000 默认值:2500 版本低于9.1.0.100,禁止设置该参数,否则可能会导致主键数据重复。 版本低于9.1.0.100,默认值为-1,表示关闭0CU开关。 9.1.0.100版本,该参数默认值为0。 9.1.0.200及以上版本,该参数默认值为2500。 该参数不建议自行修改,如需修改请联系技术支持。
  • autovacuum_max_workers_hstore 参数说明:设置Autovacuum_max_workers里面,能同时运行的专用于清理hstore的自动清理线程的最大数量。 参数类型:SIGHUP 取值范围:整型 默认值:1 当需要使用hstore表时,一定要同步修改以下几个参数的默认值,否则会导致hstore表性能严重劣化,推荐的修改配置是: autovacuum_max_workers_hstore=3,autovacuum_max_workers=6,autovacuum=true。
  • enable_hstore_keyby_upsert 参数说明:用于控制是否开启hstore表对于批量upsert的特定优化,针对前端可以保证不会并发upsert到同一行且是全列upsert的场景,建议开启,性能会有较大提升,该参数仅8.3.0及以上集群版本支持。 参数类型:USERSET 取值范围:布尔型 on表示开启对hstore表上的upsert特定优化。 off表示关闭对hstore表上的upsert特定优化,走老的流程。 默认值:off
  • gtm_option 参数说明: GaussDB (DWS)场景下,指定GTM运行模式。该参数仅8.2.1及以上集群版本支持。 GTM模式:常规模式,由GTM统一管理运行中的事务,以及XID和 CS N的分配工作。 GTM-Lite模式:GTM只负责XID的分配和CSN的更新,不再负责全局事务管理。GTM-Lite模式适用于高并发,短查询的TP场景,可以在保证事务一致性的情况下提升查询性能。 GTM-Free模式:分布式事务只支持写外部一致性,不具有读外部一致性。实时数仓场景下设置该模式不生效。 参数类型:POSTMASTER 取值范围:枚举类型 gtm或0:表示开启GTM模式。 gtm-lite或1:表示开启GTM-Lite模式。 gtm-free或2:表示开始GTM-Free模式。 默认值:gtm GaussDB(DWS)实例和GTM实例都有相同含义的gtm_option参数,对于GTM和GTM-Lite两种模式,一定要在gaussdb和gtm上设置为相同的模式,否则会出现业务报错无法执行的问题。 GTM-Free模式可以通过enable_gtm_free = on或gtm_option = gtm-free的任一方法开启。 设置非GTM-Free模式时,enable_gtm_free 必须设置为off。 GTM-Free模式仅在混合云与ESL场景设置后生效。
  • 场景说明 本文介绍如何通过设备发放将共享实例中的存量设备数据同步到专享实例。 相比于共享实例,专享实例运行在用户指定的虚拟私有云内,用户可以使用独立分配的公网和私网IP接入 物联网平台 。用户购买的资源完全独享,资源安全性和隔离性更高,是企业设备上云的首选,实例详情介绍参考华为云 设备接入IoTDA 实例介绍。 若用户已经开通共享实例,设备也在共享实例上运行,但是用户想让设备运行在专享实例上,可以将存量设备同步到用户购买的专享实例(企业版)中管理。通过设备发放,可以很方便地将共享实例中的设备同步到新的专享实例。
  • 注意事项 使用设备发放服务跨实例同步设备时,如果是指定资源空间和设备同步,同步数据仅包括设备连接新实例认证需要的身份信息,包括产品、证书和设备;不包括原实例中的设备分组、服务端订阅、规则引擎配置和平台日志等;支持同步设备的状态。 目前除了支持资源空间和设备的同步,还能指定插件的同步。 设备同步成功后,可以通过设备发放获取到新实例的地址,也可以直接更新设备固件,对接新的实例。如果用户的设备不支持更新固件,也没有对接设备发放,那么可以提交工单说明诉求。 设备同步到新实例后,应用侧调用设备接入实例API管理设备时,所有相关API调用的InstanceId需修改为新实例ID。
  • 操作步骤 默认用户已经开通过共享版设备接入。访问 设备接入服务 ,单击“立即使用”进入“设备接入控制台”,通过“设备接入”进入到“设备发放服务”页面,单击“授权开通”对服务进行授权。 开通专享实例,参考设备接入实例开通管理。 根据业务进行同步操作,如果设备量大,选择按照资源空间同步。 进入设备发放“设备数据同步”界面,单击右上角“创建同步任务”。 图1 创建同步任务 同步方式选择“按资源空间整体同步”,将所有必填选项选择完毕后,单击“确认创建”即可,设备发放会自动把对应资源空间的产品、证书和设备数据同步过去。 图2 创建内部region按资源空间整体迁移任务 如果设备量小,可以选择“指定设备同步”方式。 进入“设备数据同步”界面,单击右上角“创建同步任务”。 图3 创建同步任务 同步方式选择“指定设备同步”,将所有必填选项选择完毕后,单击“确认创建”。设备发放会自动把对应产品下的设备数据同步过去,同步后的设备状态保持一致。 图4 创建华为云内部region按指定设备id迁移任务 单击“任务ID”或者“详情”,可以看到刚创建的任务的详细内容,并且可以使用“高级搜索”对同步设备进行过滤查询操作。 图5 设备迁移任务详情页高级搜索 当同步任务类型为“指定设备同步”时,此类任务下所有同步设备均属于同一应用、同一产品。因此在进行同步设备列表的“高级搜索”时,搜索项“所属产品”和“所属资源空间”均为空。 在设备同步详情页,可以查看单个设备的信息和设备的发放记录。 图6 设备迁移任务详情页
  • 业务场景说明 自建MQTT Broker基于MQTT协议的上行数据和下行指令的业务定义如下: 表1 业务场景 业务场景 通信Topic 报文Payload 设备上报数据 /aircondition/data/up { "temperature": 26.0 } 服务端控制指令 /aircondition/cmd { "switch": "off" } 设备使用一机一密的认证方式。 设备通过Topic上报数据,通过消息流转功能将数据转发到后端服务。 服务端通过消息下发接口下发消息给设备。
  • 2.设备端 域名 切换 完成平台端配置后,需要进行设备端业务开发。完整的设备开发流程可参考设备侧开发。本章节以Paho-MQTT开源MQTT客户端为例,介绍在设备迁移场景下,设备侧如何在只修改接入地址的情况下,实现设备建立MQTT连接、Topc订阅、消息发布等功能。 //接入华为云IoT的域名,在控制台的"总览"界面的"平台接入地址"中获取“设备侧”的MQ TTS 接入地址。String server = "ssl://******.st1.iotda-device.cn-north-4.myhuaweicloud.com:8883"; // Paho MQTT客户端。MqttClient myMqttClient = new MqttClient(server, "myClientId", persistence); // Paho MQTT连接参数。MqttConnectOptions connOpts = new MqttConnectOptions(); connOpts.setCleanSession(true); connOpts.setKeepAliveInterval(120); connOpts.setUserName("myUserName"); connOpts.setPassword("myPassword".toCharArray()); myMqttClient.connect(connOpts); System.out.println("Broker: " + broker + " Connected");// Paho MQTT消息订阅。myMqttClient.subscribe("/aircondition/cmd", new MyMessageListener());// Paho MQTT发布消息。String topic = "/aircondition/data/up"; String content = "{\"temperature\": 26.0 }"; MqttMessage message = new MqttMessage(content.getBytes()); message.setQos(0); myMqttClient.publish(topic, message);
  • 设备触发放流程 配置连接参数。 证书认证设备如何使用MQTT.fx接入设备发放请参见MQTT X509证书认证接入示例。 MQTT Broker Profile Settings Broker Address填写设备发放设备侧接入地址,Broker Port填写设备发放设备侧接入端口,Client ID按规则([设备ID]_0_0_[10位日期时间])填写,具体规则参见MQTT CONNECT连接鉴权。 SSL/TLS 由于设备使用证书认证方式,“Enable SSL/TLS”勾选开启,选择Self signed certificates,CA File填写用于签发设备发放设备侧接入SSL/TLS通道证书的CA证书路径,Client Certificate File和Client Key File填写使用已上传并验证了的CA证书签发的设备证书和设备证书私钥路径。如证书为PEM格式,请勾选“PEM Formatted”。 具体配置请参见下图: “User Credentials”的“User Name”字段填写设备ID。具体配置参见下图: 连接鉴权。 连接参数配置完成后,单击“Connnect”。若右上角圆圈呈现绿色,说明设备已成功上设备发放平台。 订阅接收引导消息Topic。 参照设备接收引导信息填写用于接收引导地址的Topic,单击“Subscribe”订阅该Topic。若订阅Topic填写框下方的已订阅Topic列表中存在该Topic,则订阅成功。 发送请求引导消息。 参照设备请求引导消息填写发送请求引导消息的Topic,单击“Publish”向该Topic推送消息。 查看订阅的Topic,很快在订阅Topic下,接收到了目的接入点的设备侧接入地址。 进入函数服务控制台,通过查看使用的函数的日志,可看出自定义策略发放设备过程中,该函数被成功触发且正确执行。 进入到设备发放控制台,可查看到一条该设备的发放记录。 图5 设备详情页 至此,您已成功完成了,使用设备发放和函数服务将证书认证的设备通过自定义策略触发函数将设备发放到指定的设备接入实例中。
  • 示例场景 某企业的网关产品下有一批网关设备,单个网关设备下挂载了约400个子设备,用户需要实时关注这批网关设备的状态,确保子设备正常上报数据,同时由于网关设备和物联网平台通过4G网络建立连接,存在由于网络抖动导致频繁告警的问题,因此用户认为短暂的离线后上线属于正常场景,不希望感知这种场景。 通过以下示例可以实现监控该网关产品下所有网关设备在离线持续时间达到5分钟后通过物联网平台上报告警,在设备上线持续时间达到1分钟后恢复该告警,同时发送邮件或短信通知给指定的手机号码。 操作步骤如下:
  • 验证操作 方法一: 您可以使用MQTT.fx模拟设备验证。 使用MQTT.fx模拟恒温空调,并连接到物联网平台。操作方法请参考在线开发MQTT协议的模拟智慧路灯。 选择“Subscribe”页签,输入订阅设备影子的topic=$oc/devices/{device_id}/sys/shadow/get/response/#,其中{device_id}与步骤6的设备ID保持一致,单击“Subscribe”按钮。 选择“Publish”页签,输入请求设备影子的Topic=$oc/devices/{device_id}/sys/shadow/get/request_id={request_id}。 输入一条获取设备影子的请求,单击“Publish”按钮。 示例: {"object_device_id": "**********","service_id": temperature"} 选择“Subscribe”页签,看到平台下发的设备影子数据。 方法二: 您可以使用配置设备接入服务时注册的真实设备接入平台,设备会收到平台下发的设备影子,修改空调的预设温度值。
  • 实现原理 方案总体架构框图如下: 协议转换网关是一个网关,可以部署在云上或者本地。第三方协议设备作为协议转换网关的子设备接入平台。 协议转换网关一般由三部分组成: 第三方协议接入。完成第三方协议的解析,鉴权。 协议转换。负责完成第三方协议数据和平台格式数据的互相转换。 上行:把第三方协议数据转成平台格式数据,并调用设备SDK接口进行上报。 下行:收到平台下行数据时,转换为第三方协议数据转发给第三方协议设备。 设备SDK。即平台提供的设备接入SDK,提供了网关的通用功能实现,用户可以在此基础上实现自己的网关。
  • 业务流程 在物联网平台上注册网关,详细方法请参考设备注册。 网关上电,连接到平台,连接所需的鉴权参数在注册网关时获取。 用户在平台上注册子设备时,平台下发添加子设备事件到网关。网关收到后,保存子设备信息到本地并持久化(SDK提供了默认的持久化实现,用户可以自定义扩展)。 第三方协议设备连接到网关。网关根据子设备信息对设备进行鉴权。 设备上报数据到网关。网关转换为平台格式数据后,调用SDK的上报子设备属性/消息 的接口上报给平台。 平台向设备下发命令。网关收到后,转换为第三方协议,转发给子设备。设备收到后对命令进行处理。
  • 下发切换网络的命令 本文使用MQTT.fx模拟设备接收命令。 在MQTT.fx,选择Subscribe页签,输入订阅命令的topic “$oc/devices/{device_id}/sys/commands/#”,单击“Subscribe”。更多命令下发格式请参考命令topic订阅。(您可以使用真实设备订阅topic) 在控制台设备详情页,进入“云端下发”页签,选择“命令下发”,单击“下发同步命令”。 您也可以调用API下发命令,详细请参考同步命令下发。 图2 命令下发-MQTT 在MQTT.fx的Subscribe页,接收到平台下发的命令。 图3 接收平台下发命令 使用串口工具发送AT指令完成网络切换。 安装USB驱动: 运行exe文件,根据界面提示进行安装。 不同厂家匹配的USB驱动版本不同,请联系厂家获取符合要求的驱动程序。 驱动安装成功后,连接开发板的USB接口到PC,并打开电源,可在设备管理器中查看到枚举出的串口设备。 使用串口工具切换网络。 运行exe文件,根据界面提示进行安装。 不同厂家匹配的串口工具版本不同,请联系厂家获取符合要求的串口工具。 打开串口工具,选择步骤2枚举的AT串口,波特率设置为115200,单击“Open Port”。 注:请确保设置正确,否则AT命令不能够被解析或者解析出错。 输入“AT+HWICCIDENABLE”完成网络切换。切换成功后,您可以前往 全球SIM联接 服务控制台 “SIM卡管理“,单击“服务详情”查看正在使用中的套餐。
  • 属性上报 本文使用MQTT.fx模拟设备上报网络信号强度等数据。 选择Publish页签,输入设备属性上报的topic“$oc/devices/{device_id}/sys/properties/report”,其中{device_id}与注册设备时获取的设备ID保持一致,您可以使用真实设备上报属性。在下方填写上报的属性,单击Publish按钮。具体可参考设备属性上报。 在控制台“设备列表”中找到该设备,单击“查看”,进入设备详情页。在设备详情页看到最新上报的数据。您也可以调用API查看最新上报数据,详细请参考查询设备影子数据。 图1 查看上报数据-MobileConnection
  • 购买模组和eSIM卡 访问全球SIM联接服务,单击“购买eSIM”,购买模组和eSIM卡。 模组型号选择“移远EC20 CEHDLG” 。 登录全球SIM联接控制台,订购套餐,您可以选择单卡订购或者批量订购。 单卡订购:选择左侧导航栏的“SIM卡管理”,单击某个SIM卡右侧的“服务管理”,然后选择套餐服务并单击“立即订购”。 批量订购:选择左侧导航栏的“SIM卡管理”,导出需要订购套餐的SIM卡,下载批量订购的模板,编辑完批量订购文档后,上传,完成批量套餐订购。
  • 创建产品 访问设备接入服务,单击“立即使用”进入设备接入控制台。选择您的实例,单击实例卡片进入。 选择左侧导航栏的“产品”,单击左侧的“创建产品”,参考下表填写产品的基本信息。 基本信息 所属资源空间 在下拉框选择所属资源空间。 产品名称 自定义填写,如SwitchNetwork 协议类型 MQTT 数据格式 JSON 所属行业 在下拉框选择相应的行业。 设备类型 使用平台预置的产品模型,会自动关联设备类型,不需要再输入设备类型。 3. 进入产品详情,单击“导入库模型”,在标准模型列表中选择“MobileDevice”,单击“确定”。 MobileDevice模型中MobileConnection服务的属性说明 属性名称 描述 示例内容 iccid SIM卡标识 898604421920C0XXXX imsi 国际移动用户识别码 460046240XXXXX imei 国际移动设备识别码 86761100XXXXXXXX operator 移动设备的网络运营商(MCC+MNC) 46000 rssi 接收的信号强度 -40 cellId 蜂窝小区ID 1106525 lac 位置区码 12345 networkType 网络类型 2G,3G,4G,5G,NB-IoT modelType 模组型号 EC20 CEHDLG
  • 开发切网命令转换成AT指令 设备支持自动切网功能,需要进行设备侧开发。 设备收到平台下发的切换网络命令如下: { "paras":{ "iccid":"xxxx" }, "service_id":"MobileConnection", "command_name":"SWITCH_NETWORK"} 注:xxxx为SIM卡标识,其他内容固定不变。 设备收到命令后,执行切网指令: AT+HWICCIDENABLE=xxxx 注:xxxx为SIM卡标识。
  • 业务场景说明 假设路灯设备上报一条光照强度(luminance)消息;支持远程控制路灯开关状态的命令(switch)。 表1 业务场景 业务场景 物模型样例 设备属性上报数据 { "service_id": "BasicData", "properties": { "luminance": 30 } } 服务端控制指令 { "command_name": "switch", "service_id": "LightControl", "paras": { "value": "ON" } } 设备使用一机一密的认证方式。 设备集成了第三方云SDK,采用物模型通信进行属性上报。 服务端集成了第三方云SDK,进行指令下发。
  • 验证操作 方法一: 您可以使用MQTT.fx模拟设备验证。 使用MQTT.fx分别模拟煤气探测器设备和推窗器,并连接到物联网平台。操作方法请参考在线开发MQTT协议的模拟智慧路灯。 打开模拟推窗器的MQTT.fx,订阅平台下发的命令。 选择“Subscribe”页签。 输入订阅平台下发命令的Topic=$oc/devices/{device_id}/sys/commands/#(其中与步骤2获取的设备ID保持一致。)。 单击“Subscribe”按钮,完成平台命令下发订阅。 图5 创建MQTT订阅 切换到模拟煤气探测的MQTT.fx,上报属性。 选择“Publish”页签。 输入属性上报的Topic:“$oc/devices/{device_id}/sys/properties/report(其中{deviceId}与步骤1获取的设备ID保持一致。)。 上报1条“gaslevel”大于6的属性。 样例: { "services": [{ "service_id": "gaslevel", "properties": { "gaslevel": 45 } } ]} 单击“Publish”按钮上报属性值。 图6 MQTT属性上报 切换到模拟推窗器的MQTT.fx,选择“Subscribe”页签。可以看到收到平台下发的“switch”取值为“on”的命令。 图7 查看下发命令 方法二: 您可以使用配置设备接入服务时注册的真实设备接入平台,上报“gaslevel”大于6的数据。设备会收到一条“switch”取值为“on”的命令,自动推开窗户。
  • 创建煤气监测产品 访问设备接入服务,单击“立即使用”进入设备接入控制台。选择您的实例,单击实例卡片进入。 选择左侧导航栏的“产品”。 单击左侧的“创建产品”,创建煤气浓度监测产品,填写参数后,单击“确定”。 表1 创建产品参数示例 基本信息 产品名称 自定义,如gasdevice。 协议类型 选择“MQTT” 数据格式 选择“JSON” 所属行业 自定义 设备类型 在基本信息页面,单击“自定义模型”,参考下表,完成产品模型配置。gaslevel服务用于监控煤气浓度,windowswitch服务用于执行开关窗命令。 表2 煤气浓度监测产品模型参数示例 服务ID 参数类型 添加参数说明内容 gaslevel 属性 属性名称:gaslevel 数据类型:int 访问权限:可读 取值范围:0~100 windowswitch 命令 命令名称:switch 下发参数名称:switch 数据类型:enum 枚举值:on,off
共100000条
提示

您即将访问非华为云网站,请注意账号财产安全