智慧室分区块链存储方法、系统、节点设备和定位方法与流程

文档序号:20917663发布日期:2020-05-29 13:44阅读:192来源:国知局
智慧室分区块链存储方法、系统、节点设备和定位方法与流程
本发明涉及智慧室分
技术领域
,更具体地,涉及一种智慧室分区块链存储方法、系统、节点设备和定位方法。
背景技术
:传统2g/3g时代,移动通信工作在低频段,用室外宏站信号覆盖室内和室内分布式天线系统(distributeantennasystem,das)都是解决室内覆盖行之有效的方案。4g时代,传统das仍然是解决室内覆盖的主要手段,随着移动互联网和物联网技术的发展,一些业务密集型场景(例如交通枢纽、大型场馆等)开始引入新型数字化室分系统。和传统das相比,新型数字化室分系统具有部署简单、施工协调难度小、扩容灵活、运维可视等优点,可以大大提高网络容量,提升网络运维效率。智慧室分是基于传统室分无法监控、功能价值单一,无法适应新形势下运营商对网络运营需求背景下提出的解决方案,旨在将蓝牙信标、链路损耗检测、物联网等技术与传统无源室分系统深度融合,打造可管可控的智慧型室分网络以及可提供定位及大数据运营的增值业务平台。智慧室分在传统的移动信号覆盖功能的基础上,做了多项的应用领域的扩展。其中包括了下行的链路损耗检测、基于蓝牙信号的物联信息收集及ibeacons的定位功能。由于移动室分网络非常庞大,如果将室分网络全面改造成智慧室分后,其数据吞吐量将会非常巨大,其信息化的管理系统会产生海量数据。如采用传统的中心存储方式,这种架构有如下问题:(1)基于蓝牙的室内定位及物联终端的管理都会产生大量的数据,并且作为室内定位基础的地图及天线基础信息也是海量数据,由于采用移动终端接入,终端具有地域特性,所以按照地理区域分布组合成不同的区块链节点。(2)采用传统的中心存储的方式,则会对数据服务器的性能及带宽带来较大的负荷,考虑到高可用性及负载均衡的要求,中心化的数据存储的it设备投入更是一笔巨大投入。技术实现要素:本发明旨在克服上述现有技术的至少一种缺陷(不足),提供一种智慧室分区块链存储方法、系统、节点设备和定位方法,有利于管理和存储海量的智慧室分数据。本发明采取的技术方案是:一种智慧室分区块链数据存储方法,应用于区块链节点,包括:根据地图数据和设备数据构建数据区块并进行存储,所述设备数据用于计算定位,所述地图数据用于显示所计算出的所述定位;将所述数据区块向其它所述区块链节点广播,以使各个所述区块链节点对所述数据区块进行上链存储。区块链节点根据用于计算定位的设备数据和用于显示所述计算出的所述定位的地图数据构建数据区块,再将数据区块广播给周边区块链节点,实现了区块链节点之间的数据同步和数据冗余备份,有利于对大量的智慧室分信息进行管理和存取,可以使终端用户更方便地从区块链节点获取相关的设备数据和地图数据,并根据所获取的设备数据和地图数据进行更快、更准的定位。进一步地,根据地图数据和设备数据构建数据区块,包括:根据室内的地图数据和所述室内各个区域的设备数据构建数据区块并进行存储,一个所述数据区块对应所述室内的一个区域。通过构建数据区块将室内的地图数据和室内的各个区域的设备数据按区域进行分类存储,室内地图数据和室内同一个区域的设备数据存放在一个数据区块内,由此可以将室内的设备数据和地图数据按不同区域进行管理和存取,终端用户可以根据自身所在区域从区块链节点获取对应区域的数据区块,快速地获取计算定位的设备数据和显示定位的地图数据。进一步地,所述数据区块包括区块头和区块体,将基本参数存储在所述区块头,将所述地图数据、所述设备数据存储在所述区块体,所述基本参数包括区域编号和区块版本信息。通过将区域编号和区块版本信息等基本参数存储在数据区块的区块头,将地图数据和设备数据存储在数据区块的区块体中,终端用户可以根据区块头中所存储的区域编号从不同数据区块中获取对应区域的数据区块,还可以根据区块头中的区块版本信息获取到最新更新的数据区块,从数据区块中获取地图数据和设备数据,进而能够快速地、准确地计算出终端所处的位置。进一步地,所述基本参数还包括所述地图数据的地图基本参数,所述地图基本参数包括地图名称和/或地图显示范围和/或地图尺寸和/或地图创建时间和/或地图所在行政区域。通过存储地图基本参数,可以方便地管理存储在每个数据区块的地图数据。当数据区块中的地图数据发生数据错误或者需要数据更新时,可以根据这些地图基本参数对地图数据进行维护和更新。进一步地,所述设备数据包括设备信息和操作信息,所述设备信息包括设备识别信息、设备位置信息和无线发射功率,所述操作信息包括无线链路损耗值。将设备识别信息、设备位置信息、无线发射功率和无线链路损耗值存入数据区块进行管理,数据区块存储了终端进行室内定位所需的完整信息,终端可以从区块链节点中获取设备识别信息、设备位置、无线发射功率和无线链路损耗值,从而根据获取的设备识别信息、设备位置信息、无线发射功率和无线链路损耗值计算出终端的定位。进一步地,所述操作信息还包括无线设备物联信息,所述无线设备物联信息记录所述无线设备与其它通信设备的历史通信连接。将无线设备物联信息存入数据区块进行管理,运维人员可以根据无线设备物联信息了解该无线设备具体与那些通信设备有通信连接和相关通信情况,从而对该无线设备进行维护。进一步地,所述数据区块还包括区块标识和前区块记录,将前一个所述数据区块的所述区块标识存储在所述前区块记录。数据区块包括区块标识和前区块记录,每个数据区块对应有一个区块标识,前一个数据区块的区块标识会存储在后一个数据区块的前区块记录中,由此将多个数据区块存储形成区块链。进一步地,所述操作信息还包括对所述数据区块进行写入或修改的操作者的公钥和签名,所述签名根据对所述数据区块进行写入或修改的操作者的私钥、所述前区块记录和所述设备识别信息进行加密运算后生成。对数据区块进行写入或修改的操作者具有一对公钥和私钥,根据私钥、前区块记录和设备识别信息进行加密运算后生成签名并与公钥一起存储在数据区块中的操作信息,可以防止数据被恶意篡改,提高了智慧室分数据存储的安全性。一种智慧室分区块链数据存储系统,应用于区块链节点,包括:区块构建模块,用于根据地图数据和设备数据构建数据区块并进行存储,所述设备数据用于计算定位,所述地图数据用于显示所计算出的所述定位;区块广播模块,用于将所述数据区块向其它所述区块链节点广播,以使各个所述区块链节点对所述数据区块进行上链存储。区块构建模块根据用于计算定位的设备数据和用于显示所述计算出的所述定位的地图数据构建为数据区块,区块广播模块再将数据区块广播给周边区块链节点,实现了区块链节点之间的数据同步和数据冗余备份,有利于对大量的智慧室分信息进行管理和存取,可以使终端用户更方便地从区块链节点获取相关的设备数据和地图数据,并根据所获取的设备数据和地图数据进行更快、更准的定位。一种智慧室分区块链节点设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序时实现上述智慧室分区块链存储方法。一种计算机存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述智慧室分区块链存储方法。一种智慧室分区块链定位方法,应用于终端,包括:获取初始位置;根据所述初始位置从附近的区块链节点获取智慧室分区块链存储方法中所述的数据区块;接收至少三个无线设备的无线信号;从所述数据区块中获取地图数据和所述无线设备对应的设备数据;根据所述无线信号和所述设备数据,计算出定位;根据所述地图数据,显示所计算出的所述定位。终端从区块链节点中获取设备数据和地图数据,在终端本身对获得的设备数据和地图数据进行定位运算,解决了终端定位计算在服务器执行消耗大量资源的问题,从而节省了服务器的资源,而且可以实现快速、准确的定位。与现有技术相比,本发明的有益效果为:(1)本发明将智慧室分产生的庞大信息存储在对应的数据区块,减少了服务器负荷,将定位计算放在终端本地,节省了服务器的资源,建设成本低,实用性高,而且对单个的数据区块进行分析就可实现告警分析、数据变化动态曲线。(2)通过不同区块链节点之间对智慧室分信息的数据同步和数据冗余备份,更有效地保证数据的可靠性。(3)数据区块采用数字加密签名和分布式存储,数据难以被篡改,更有效地提高数据的安全性。(4)数据区块存储了终端进行室内定位所需的完整信息,便于终端可以从区块链节点中获取这些信息进行快速、准确的定位。附图说明图1为本发明一个实施例的智慧室分区块链存储方法原理图。图2为本发明一个实施例的智慧室分区块链存储方法流程图。图3为本发明一个实施例的智慧室分区块链存储系统框图。具体实施方式本发明附图仅用于示例性说明,不能理解为对本发明的限制。为了更好说明以下实施例,附图某些部件会有省略、放大或缩小,并不代表实际产品的尺寸;对于本领域技术人员来说,附图中某些公知结构及其说明可能省略是可以理解的。实施例1在本发明一个实施例中,提供一种智慧室分区块链存储方法,应用于区块链节点,如图1和图2所示,方法具体步骤包括:s101.根据地图数据和设备数据构建数据区块并进行存储,设备数据用于计算定位,地图数据用于显示所计算出的定位;s102.将数据区块向其它区块链节点广播,以使各个区块链节点对数据区块进行上链存储。将地图数据和设备数据构建成数据区块存储在本地的区块链节点里,由此可以使区块链节点对海量的地图数据和设备数据进行管理;数据区块构建完成后区块链节点将数据区块广播给其它的区块链节点,其它的区块链节点接收到该区块链节点广播的数据区块后将数据区块进行上链存储。区块链节点根据用于计算定位的设备数据和用于显示所述计算出的所述定位的地图数据构建数据区块,再将数据区块广播给周边区块链节点,实现了区块链节点之间的数据同步和数据冗余备份,有利于对大量的智慧室分信息进行管理和存取,可以使终端用户更方便地从区块链节点获取相关的设备数据和地图数据,并根据所获取的设备数据和地图数据进行更快、更准的定位。将本发明实施例应用于具体的智慧室分系统时,可以采用低成本的服务器作为区块链节点实现本发明实施例的方法,将区块链节点和智慧室分系统的设备相结合,可以使得智慧室分系统所产生的海量数据都可以由中心化的存储方式转变为区块链的数据存储方式,这种方式可以使得智慧室分系统在项目的初期建设及最终建设成本都得到有效降低,而且是通过低成本投入实现大数据的高可用及负载均衡等应用。在一个可选的实施例中,s101中根据地图数据和设备数据构建数据区块并进行存储,具体包括:根据室内的地图数据和室内各个区域的设备数据构建数据区块并进行存储,一个数据区块对应室内的一个区域。区块链节点根据室内的地图数据和室内的各个区域的设备数据构建数据区块,室内地图数据和室内的同一个区域的设备数据存放在同一个数据区块,以使地图数据和设备数据按区域存储在区块链节点中,方便管理数据。通过构建数据区块将室内的地图数据和室内的各个区域的设备数据按区域进行分类存储,室内同一个区域的设备数据和地图数据存放在一个数据区块内,由此可以将室内的设备数据和地图数据按不同区域进行管理。室内的各个区域划分可以根据实际的情况进行布置,可以以建筑为单位,也可以以建筑内的每一层为单位,还可以是范围更细或者范围更大的区域作为一个单位进行划分,例如:可以是构建数据区块时将一栋建筑楼的同一个楼层作为一个区域,将该区域内的地图数据和所有设备数据存放在同一个数据区块里。在一个可选的实施例中,数据区块包括区块头和区块体,将基本参数存储在区块头,将地图数据、设备数据存储在区块体,基本参数包括区域编号和区块版本信息。通过将区域编号和区块版本信息等基本参数存储在数据区块的区块头,将地图数据和设备数据存储在数据区块的区块体中,终端用户可以根据区块头中所存储的区域编号从不同数据区块中获取对应区域的数据区块,还可以根据区块头中的区块版本信息获取到最新更新的数据区块,从数据区块中获取到准确的地图数据和设备数据,进而能够快速地、准确地计算出终端所处的位置。示例性地,区块头可以采用321字节的数据结构体,行政区域编号可以为国家或省或区县的编号,根据行政区域编号能够得知区块所在的国家或省或区县;区块版本信息为区块版本号,可以采用4个字节的自增型的无符号整型,区块发生任意变化都会导致区块版本号的增加,区块版本号随根据区块的变化而自动增加,运维人员可以根据区块版本号的增加得知区块发生了变化。在一个可选的实施方式中,基本参数还包括地图数据的地图基本参数,地图基本参数包括地图名称和/或地图显示范围和/或地图尺寸和/或地图创建时间和/或地图所在行政区域。示例性地,如表1所示,地图显示范围具体可以包括地图的经度、纬度和海拔高度,地图尺寸可以包括地图的宽度和高度,地图创建时间为距离1900-1-100:00:00(gmt)的秒数,为8个字节的无符号整型,通过存储地图基本参数,可以方便地管理存储在每个数据区块的地图数据。当数据区块中的地图数据发生数据错误或者需要数据更新时,可以根据这些地图基本参数对地图数据进行维护和更新。表1数据项描述长度区块版本号每次区块发生变化版本号会增14字节行政区域编号地图的唯一编号,通过utf-8编码128字节地图名称地图的唯一编号,通过utf-8编码128字节地图经度8字节地图纬度8字节地图海拔高度8字节地图宽度8字节地图高度8字节地图创建时间距离1900-1-100:00:00(gmt)的秒数8字节地图所在行政区域国家区域编码8字节在一个可选的实施例中,设备数据包括设备信息和操作信息,设备信息包括设备识别信息、设备位置信息和无线发射功率,操作信息包括无线链路损耗值。将设备识别信息、设备位置信息、无线发射功率和无线链路损耗值按区域存入数据区块进行管理,数据区块存储了终端进行室内定位所需的完整信息,终端可以从区块链节点中获取设备识别信息、设备位置、无线发射功率和无线链路损耗值,从而根据获取的设备识别信息、设备位置信息、无线发射功率和无线链路损耗值计算出终端的定位。示例性地,如表2所示为设备数据的具体信息,设备识别信息具体可以包括设备名称、设备序号和设备状态,其中设备名称为utf-8编码的字符串,为64字节,设备序号为2个字节的无符号整型,设备状态由1个字节表示(0:表示正常;1:表示损坏),根据设备的设备名称、设备序号对设备数据进行存储,方便数据管理人员对设备数据进行管理;将设备状态用0表示设备正常,1表示设备损坏,由此运维人员可以清晰地了解到当前设备的具体状态,并根据设备状态对设备进行维护;设备位置信息具体包括设备的x坐标、设备的y坐标,设备x坐标为4字节的有符号整型;设备y坐标为4字节的有符号整型,终端通过从数据区块获取设备的具体坐标信息从而能更准确的计算出设备与终端的距离;设备信息还包括设备广播包频率、设备蓝牙mac地址、设备广播包uuid、设备广播包minor和设备广播包major,对设备广播包的频率、硬件地址和软件地址进行统一存储,便于终端和/或运维人员获取设备的通信地址。表2数据项描述长度设备名称utf-8编码64字节设备序号设备的编号2字节设备状态0:表示正常;1:表示损坏1字节设备类型1字节设备x坐标4字节设备y坐标4字节设备发射功率2字节设备广播包频率2字节设备蓝牙mac地址6字节设备广播包uuid16字节设备广播包major2字节设备广播包minor2字节在一个可选的实施方式中,操作信息还包括无线设备物联信息,无线设备物联信息记录无线设备与其它通信设备的历史通信连接。数据区块存储了无线设备物联信息,从数据区块获取无线设备物联信息即可知道该无线设备与其它通信设备的历史通信连接情况。通过获取存储设备的无线设备物联信息,运维人员可以根据设备的无线设备物联信息了解该无线设备具体与那些通信设备有通信连接和相关通信情况,从而对该无线设备进行维护。在一个可选的实施方式中,数据区块还包括区块标识和前区块记录,将前一个数据区块的区块标识存储在前区块记录。数据区块包括区块标识和前区块记录,每个数据区块对应有一个区块标识,前一个数据区块的区块标识会存储在后一个数据区块的前区块记录中,由此将多个数据区块存储形成区块链。通过根据区块标识将变化前后的数据区块形成关联存储,方便管理。在一个可选的实施例中,操作信息还包括对数据区块进行写入或修改的操作者的公钥和签名,签名根据对数据区块进行写入或修改的操作者的私钥、前区块记录和设备识别信息进行加密运算后生成。对数据区块进行写入或修改的操作者具有一对公钥和私钥,当操作者对数据区块进行操作时,根据私钥、前区块记录和设备识别信息进行加密运算后生成签名并与公钥一起存储在数据区块中的操作信息,可以防止数据被恶意篡改,提高了智慧室分数据存储的安全性。示例性地,如表3所示为操作信息数据结构体,公钥是通过secp256k1非对称加密算法加密而成,签名的原文为字符串,是由前区块记录+设备序号字符串+操作时间字符串(格式为yyyymmddhhmmss)组成并通过sha256计算后得出的。表3基于上述方案,本发明的方法可以通过区块链节点对智慧室分系统产生的海量数据进行管理和存储,能够更好地从区块链节点获取室内定位所需的的完整信息,可以实现低成本投入达到大数据的高可用及负载均衡的效果。而且智慧室分系统产生信息是分布在各个区块上的,在有效减少负荷的同时由于采用了数字签名及分布式部署,数据难以篡改,系统信息也更加安全。在一个实施例中,还提供一种智慧室分区块链节点设备,包括存储器和处理器,存储器中存储有计算机程序,处理器执行计算机程序时实现上述智慧室分区块链存储方法。在一个实施例中,还提供一种计算机存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述智慧室分区块链存储方法。实施例2基于与实施例1同一个发明构思,在本实施例中,具体如图3所示为智慧室分区块链数据存储系统的系统架构图,还提供一种智慧室分区块链数据存储系统,应用于区块链节点,包括:区块构建模块,用于根据地图数据和设备数据构建数据区块,设备数据用于计算定位,地图数据用于显示所计算出的定位;区块广播模块,用于将数据区块向其它区块链节点广播,以使各个区块链节点对数据区块进行上链存储。区块构建模块根据用于计算定位的设备数据和用于显示所述计算出的所述定位的地图数据构建为数据区块,区块链节点再将数据区块广播给周边区块链节点,实现了区块链节点之间的数据同步和数据冗余备份,有利于对大量的智慧室分信息进行管理和存取,可以使终端用户更方便地从区块链节点获取相关的设备数据和地图数据,并根据所获取的设备数据和地图数据进行更快、更准的定位。在一个可选的实施例中,区块构建模块具体用于根据室内的地图数据和所述室内各个区域的设备数据构建数据区块并进行存储,一个所述数据区块对应所述室内的一个区域。通过区块构建模块构建数据区块将室内的地图数据和室内的各个区域的设备数据按区域进行分类存储,室内地图数据和室内同一个区域的设备数据存放在一个数据区块内,由此可以将室内的设备数据和地图数据按不同区域进行管理和存取,终端用户可以根据自身所在区域从区块链节点获取对应区域的数据区块,快速地获取计算定位的设备数据和显示定位的地图数据。在一个可选的实施例中,所述数据区块包括区块头和区块体,将基本参数存储在所述区块头,将所述地图数据、所述设备数据存储在所述区块体,所述基本参数包括区域编号和区块版本信息。通过将区域编号和区块版本信息等基本参数存储在数据区块的区块头,将地图数据和设备数据存储在数据区块的区块体中,终端用户可以根据区块头中所存储的区域编号从不同数据区块中获取对应区域的数据区块,还可以根据区块头中的区块版本信息获取到最新更新的数据区块,从数据区块中获取地图数据和设备数据,进而能够快速地、准确地计算出终端所处的位置。在一个可选的实施例中,所述基本参数还包括所述地图数据的地图基本参数,所述地图基本参数包括地图名称和/或地图显示范围和/或地图尺寸和/或地图创建时间和/或地图所在行政区域。通过存储地图基本参数,可以方便地管理存储在每个数据区块的地图数据。当数据区块中的地图数据发生数据错误或者需要数据更新时,可以根据这些地图基本参数对地图数据进行维护和更新。所述设备数据包括设备信息和操作信息,所述设备信息包括设备识别信息、设备位置信息和无线发射功率,所述操作信息包括无线链路损耗值。将设备识别信息、设备位置信息、无线发射功率和无线链路损耗值存入数据区块进行管理,数据区块存储了终端进行室内定位所需的完整信息,终端可以从区块链节点中获取设备识别信息、设备位置、无线发射功率和无线链路损耗值,从而根据获取的设备识别信息、设备位置信息、无线发射功率和无线链路损耗值计算出终端的定位。在一个可选的实施例中,所述操作信息还包括无线设备物联信息,所述无线设备物联信息记录所述无线设备与其它通信设备的历史通信连接。将无线设备物联信息存入数据区块进行管理,运维人员可以根据无线设备物联信息了解该无线设备具体与那些通信设备有通信连接和相关通信情况,从而对该无线设备进行维护。在一个可选的实施例中,所述数据区块还包括区块标识和前区块记录,将前一个所述数据区块的所述区块标识存储在所述前区块记录。数据区块包括区块标识和前区块记录,每个数据区块对应有一个区块标识,前一个数据区块的区块标识会存储在后一个数据区块的前区块记录中,由此将多个数据区块存储形成区块链。在一个可选的实施例中,所述操作信息还包括对所述数据区块进行写入或修改的操作者的公钥和签名,所述签名根据对所述数据区块进行写入或修改的操作者的私钥、所述前区块记录和所述设备识别信息进行加密运算后生成。对数据区块进行写入或修改的操作者具有一对公钥和私钥,根据私钥、前区块记录和设备识别信息进行加密运算后生成签名并与公钥一起存储在数据区块中的操作信息,可以防止数据被恶意篡改,提高了智慧室分数据存储的安全性。实施例3基于与实施例1同一个发明构思,在一个实施例中,还提供一种智慧室分区块链定位方法,应用于终端,包括:获取初始位置;根据初始位置从附近的区块链节点获取如实施例1中所述的数据区块;接收至少三个无线设备的无线信号;从数据区块中获取地图数据和无线设备对应的设备数据;根据无线信号和设备数据,计算出定位;根据地图数据,显示所计算出的定位。当终端需要进行自身定位时,终端首先获取自身的初始位置,再根据初始位置从附近的区块链节点获取对应的数据区块,终端通过扫描接收附近至少三个无线设备的无线信号,根据接收到的无线信号得到对应无线设备的接收功率,并从对应的数据区块中获取存储在数据区块的地图数据和对应无线设备的设备数据,根据至少三个无线设备的无线信号得到的接收功率和获取的对应的设备数据进行计算得出终端当前的定位,并将所计算出的定位根据地图数据显示在地图上。终端通过从区块链节点中获取对应无线设备的设备数据和地图数据,在终端本身对获得的设备数据和地图数据进行定位运算,解决了终端定位计算在服务器执行消耗大量资源的问题,从而节省了服务器的资源。在具体实施过程中,终端可以是手机,当终端在移动过程中需要对自身进行定位时,首先获取自身的初始位置信息,随后移动终端根据初始位置从附近网速最快的区块链节点获取对应的数据区块,通过扫描接收到附近至少三个无线设备的无线信号,无线设备可以是蓝牙天线,根据接收到的至少三个蓝牙天线的无线信号得到对应蓝牙天线的接收功率及天线id,再从网络最快的区块链节点获取对应的数据区块存储的对应设备的设备数据和地图数据,具体为获取对应设备的设备位置信息、无线发射功率和无线链路损耗值,根据获取的三个设备的设备位置信息、无线发射功率、无线链路损耗值和得到的接收功率在移动终端进行定位计算,得到当前移动终端所处的位置信息,最后将计算出的位置信息根据地图数据在地图上显示出来,将计算出的位置信息在地图上显示具体可以是在地图上显示终端图标和所处位置的经纬度和高度。显然,本发明的上述实施例仅仅是为清楚地说明本发明技术方案所作的举例,而并非是对本发明的具体实施方式的限定。凡在本发明权利要求书的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之内。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1