IoT物联网海量设备监控运维的挑战和实现方案

随着大量物联网场景开始涌现,海量碎片化设备和巨量时序数据给物联网平台带来了一系列新的要求和新的技术挑战。

监控运维的技术挑战

灵活多变的监控需求

物联网平台监控场景面临的是上亿级别的海量设备,相比传统的IT运维,被监控的对象数量增加了好几个数量级。随着业务的飞速发展,面对平台动辄数十亿甚至百亿级别时序数据,我们该如何有效的监控与管理?而随着物联网时序数据量爆发式的增长,传统的线图、直方图、散点图等数据展示方法,很难直接让运维人员找到数据背后的异常或隐藏瓶颈。如何针对不同业务或者不同监控对象,找到更合适的数据看板以及展现形式,成为物联网平台必须解决的问题。

PB级日志数据分析处理

物联网平台是一个复杂的分布式系统,设备消息上下行、设备控制链路都非常复杂,涉及到了非常多的云端系统。而传统的日志信息也往往有多个来源,例如营销活动打点、用户访问、应用日志,并且来自于ECS服务器、容器、移动端、网页端等多种渠道,需要多渠道、多维度、多种处理方法。

物联网场景中日志系统面临着极大的规模挑战,面对上亿在线的设备所产生的数据,系统应具备利用这些日志快速解决问题的能力,这也就要求系统能处理大量数据,且实时性要求高。同时,为了充分发掘日志内容的业务价值,需要结合设备运维场景对多渠道日志做全面分析,监控异常设备指标,定位系统问题,分析出相应的异常调用链路。

海量设备监控运维的技术方案

自定义监控大盘

0969e694f3ce2bd34f0963454bddce1e.png

传统的物联网平台提供了诸如实时在线设备、上下行消息总量、规则引擎消息流转次数等有限几个系统指标,只能满足客户的基本运维需求。客户根据不同的业务需求,需要监控的数据指标往往存在差异,传统的实时监控指标很难满足客户的日常运维需求。

物联网平台的自定义监控大盘提供了设备、消息、物模型、规则引擎和OTA升级相关指标数据的实时监控服务,指标维度可以选择物联网平台的所有产品或指定的单个产品,指标聚合支持最小、最大和平均等聚合方法,聚合粒度可选择不 同的时间频率,基本满足了客户日常运维的刚性需求。

为保证客户最佳的实时监控使用体验,这里主要通过以下几个关键技术,解决实时监控所面临的数据规模和个性化所带来的技术挑战:

1) 链路的规范性 

数据平台对ODPS离线数据和SLS实时数据进行实时筛选、合并和计算,统一计算后将结果输出给云监控,从而实现了系统指标和用户自定义指标数据链路和指标计算的统一性。

2) 计算的实时性

数据平台引入实时数仓Hologres,对衍生指标和原始指标建立了全局加速表,实现了数据的全链路实时化改造,通过Flink将指标聚合计算做到了秒级延时,将原来报表的展示延时从30秒下降到1秒以内。

3) 诊断的联动性

针对大盘指标提供了可配置可组合的下钻能力,帮助精准圈选出故障相关的异常数据,让数据下钻和后续算法平台输出的根因分析模型形成了联动,既可以帮助发现数据共性,同时还能缩小后续故障分析中的数据计算量,一定程度上提高计算效率。

消息轨迹监控

消息轨迹解决了上下行链路中问题定位的难题,客户可根据TraceID或MessageId,追踪任意一条消息在物联网平台流转的全路径,还可根据出现的故障节点快速分析、定位问题。为保证最佳的链路诊断使用体验,这里主要通过以下几个关键技术,解决消息轨迹所面临的日志存储成本、时序错位和查询性能瓶颈所带来的技术挑战:

1) 链路业务抽象

物联网平台是一个复杂的分布式系统,设备数据上报、下行控制链路都非常复杂,涉及到了云端非常多的内部系统,这些复杂度无需暴露给用户,用户无法理解,对问题分析也会存在干扰。另外,系统内部的日志输出内容较多占用了非常多的存储,格式本身也不统一,随时可能存在变化,从而无法针对日志做深入的分析。

为消除用户的理解成本,在分布式链路中,物联网平台梳理出了消息上下行链路中的关键系统,按照日志聚合规范输出了关键调用节点信息,面向客户可理解的业务原语输出了诊断信息,帮助客户快速识别出链路上的异常节点,并根据错误码的提示进行问题诊断和修复。

6720f16c34de0f4417faaf3c13bc872f.png

2) 推断链路时序

全链路租户日志信息来自于多个不同的分布式系统,打印日志的时间戳非常接近,消息轨迹采集的是按规范输出的业务日志,将系统、模块之间的调用逻辑顺序通过规则配置沉淀下来,通过TraceId或MessageId获取具体租户业务日志时,可以根据逻辑顺序重新绘制出调用链路时序,而无需依赖时间戳。

3) 提升查询性能

租户日志虽然是针对业务特性精简过的日志,但物联网平台上下行链路每天都会产生巨大的日志量(PB级别),考虑到日志存储成本当前物联网平台只会存储7天的租户日志,即使这样,在所有的租户日志中查询一条特定链路的信息也面临精准性和性能的挑战。针对租户日志查询条件,平台对字段进行了索引加速查询性能,同时也支持用户将租户日志导出到自己的SLS空间长期保存。

阿里云IoT物联网平台性能指标

f8ea9608377e11d7fd8801817fee95eb.png

更多内容,回复"白皮书" 获取PDF完整版。

往期推荐

☞ 中国云计算第一股关停 IoT云服务

☞ 2022年IoT平台趋势:私有化部署

☞ 国内MCU行业发展研究报告

☞ 2021年4G通信模组企业排行

☞ 艾瑞 2021中国 IoT物联网平台研究

☞ 云厂商的[IoT物联网平台]不香了吗?

682d0e91b459ba88174ec99151024c09.gif

676bd5ccdcdbbefca2467b1de86abb03.gif

3d4d55ec3e47a1da48650af8790b0241.gif

01d3bcf65db3140dbab7ed40639588c7.gif

a95f67a17495997f9c25b9f53561db20.gif

<think>嗯,用户想了解Excel中的VLOOKUP函数的用法参数含义。首先,我需要回忆一下VLOOKUP的基本结构。VLOOKUP是垂直查找函数,用于在表格的首列查找指定的值,然后返回该行中指定列的数据。它的四个参数分别是查找值、表格范围、列索引号匹配模式。 接下来,我得确认每个参数的具体作用。第一个参数是lookup_value,也就是用户要查找的值,比如产品ID或者姓名。第二个参数是table_array,即查找的范围,这里要注意的是,查找值必须位于这个范围的第一列,否则函数无法正确工作。第三个参数是col_index_num,也就是用户想要返回的数据在表格范围中的第几列,这个列数是从表格范围的第一列开始算起的,不是整个工作表的列。第四个参数是range_lookup,决定是精确匹配还是近似匹配,通常用FALSE或0来指定精确匹配,避免错误。 然后,用户可能需要一个具体的例子来理解如何使用。比如,假设有一个产品价格表,用户想根据产品ID查找对应的价格。这时候,VLOOKUP就可以在ID列查找,然后返回价格列的数据。同时,要提醒用户注意表格范围最好使用绝对引用,比如$A$2:$C$100,这样在拖动公式时范围不会变化。 可能遇到的问题也需要考虑。比如,如果查找值不在表格的第一列,或者列索引号超过了表格的列数,函数会返回错误。此外,数据格式不一致也可能导致问题,比如查找值是数字,而表格中是文本格式的数字,这时候需要统一格式。还有,当出现#N/A错误时,可能是查找值不存在,或者匹配模式设置不正确,需要检查参数是否正确。 用户可能还会问到如何避免常见的错误,比如部分数据匹配出错的情况。这时候需要检查是否有多余的空格,或者数据格式不一致,或者表格范围没有锁定导致拖动时偏移。此外,XLOOKUP作为VLOOKUP的升级版,可能在某些情况下更方便,比如可以向左查找或者返回多列数据,这也是可以提及的内容。 最后,整理步骤,从基础语法到参数说明,再到具体案例,逐步引导用户理解如何使用VLOOKUP函数。同时,提供常见错误解决方法,帮助用户在实际应用中避免问题。如果有必要,还可以比较VLOOKUP其他查找函数的区别,比如HLOOKUP或XLOOKUP,但根据用户的问题,主要集中在VLOOKUP本身即可。</think>### Excel VLOOKUP函数详解 #### 一、基础语法与参数说明 VLOOKUP函数的语法为: $$=VLOOKUP(lookup\_value, table\_array, col\_index\_num, [range\_lookup])$$ 包含4个参数: 1. **lookup_value**(必填):要查找的值(如单元格引用或具体值) 2. **table_array**(必填):包含数据的表格范围(必须包含查找列返回列) 3. **col_index_num**(必填):返回值所在列的序号(从table_array第一列开始计数) 4. **range_lookup**(可选):匹配类型 - `TRUE`/`1`:近似匹配(默认值,需数据升序排列) - `FALSE`/`0`:精确匹配(常用选项) [^1][^2] #### 二、使用步骤演示(工资表查询案例) 假设需要根据员工编号查询工资: 1. 建立查询单元格(如`B12`) 2. 输入公式: ```excel =VLOOKUP(A12, $A$2:$D$100, 4, 0) ``` - `A12`:待查询的员工编号 - `$A$2:$D$100`:锁定数据区域(绝对引用) - `4`:返回第4列(工资列) - `0`:精确匹配 [^2][^3] #### 三、常见错误与解决方法 | 错误现象 | 原因 | 解决方案 | |---------|------|---------| | #N/A | 查找值不存在 | 检查数据源或改用`IFERROR`容错 | | #REF! | 列序号超出范围 | 确认col_index_num ≤ 表格列数 | | 部分匹配失败 | 数据格式不一致 | 统一数值/文本格式 | | 结果错位 | 表格未锁定 | 使用`$`符号固定区域引用 | [^3][^4] #### 四、进阶技巧 1. **多条件查询**: 使用辅助列合并多个条件字段 ```excel =VLOOKUP(A2&B2, $D$2:$F$100, 3, 0) ``` 2. **通配符匹配**: `"*"`匹配任意字符,`"?"`匹配单个字符 ```excel =VLOOKUP("张*", $A$2:$C$100, 3, 0) ``` 3. **跨表查询**: 引用其他工作表数据 ```excel =VLOOKUP(A2, Sheet2!$A$2:$D$100, 4, 0) ``` [^1][^4]
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值