“数百亿”这个规模是在是太大了,平均到全国人均几十部设备,所以这不是一个实际问题,仅从思路上探讨一下。
1,首先需要能够接受设备连接的网络服务平台
这个网络服务平台包含软硬件和网络设备以及线路等,评估一下平台需求:先从设备联网特性上来讲,以100亿部设备为例,每部设备每秒收发128字节数据,那么带宽将达到1TB以上,每天86400秒意味着要产生超过100PB的数据,这基本是双11的时候国内顶尖电商平台的数据量。 从负载均衡的角度来考虑两个指标,一个是连接数,一个是单台服务器的处理能力,100亿部设备的服务器集群将达到百万台,先考虑一下这些成本能不能支付得起吧!其次是数据量增长带来的存储设备的需求,1秒钟1TB的数据量,看看1T的硬盘多少钱,就知道这不是可以忽略不计的了,另外百万台服务器需要数百名上千名以上的运维技术人员,人力成本也是巨大的,再加上机房、设备、带宽、电力等成本,投入是巨大的,只有国家层面或者是巨头企业才投得起。
2,其次是管理的思路和可行的实现方式
这么多的设备,如果想完全纳入管理体系进行管理,其核心思想离不开“分治”。
首先设备在地里位置上肯定处于不同的地方,可以按照地理位置、行政区划等方式实现分治,比如三层,每层2000多节点组成一个单元,管理会方便一些,单元内制定一套管理方案,层级间制定通信方案,将巨大的问题化整为零,是比较适合于这种大规模项目管理的方式。
落实到具体的技术上,要考虑数据分布式存储,减少不必要的通信,单元的独立与完整,容错与备份,灾难与应急等。
无论从成本还是规模和管理方式,都不是随便谁可以做到的,这么大的项目,至少需要顶级的互联网企业投入数万人的力量超过1年以上的时间才能实现。但没有哪个项目是凭空产生的,会经历从小到大,简单到复杂的成长,所以这是在是个有趣的问题,甚至我会觉得:该不是说,这几台设备价值数百亿吧?