热力图的展示方法、服务器及系统技术方案

技术编号:26597593 阅读:18 留言:0更新日期:2020-12-04 21:19
本发明专利技术公开了一种热力图的展示方法、服务器及系统,该方法包括:根据历史订单数据计算各个实体对象端的用户分布数据并存储至数据仓库中;通过第一周期任务周期性计算与各个实体对象端的用户分布数据相对应的热力点聚类结果,得到第一聚类结果;通过第二周期任务周期性计算与各个实体对象端的用户分布数据相对应的热力点聚类结果,得到第二聚类结果;根据第一聚类结果以及第二聚类结果,在预设缓存中存储各个实体对象端的热力点计算结果;响应于前端应用服务器发送的热力点查询请求,将预设缓存中存储的与热力点查询请求对应的热力点计算结果发送给前端应用服务器。该方式显著提升了前端应用服务器的热力图展示速度,避免了展示时延。

【技术实现步骤摘要】
热力图的展示方法、服务器及系统
本专利技术涉及通信领域,具体涉及一种热力图的展示方法、服务器及系统。
技术介绍
热力图能够通过密度函数以特殊高亮的形式进行可视化,是一种用于表示地图中点的密度的热图,从而使人们能够独立于缩放因子感知点的密度。通过热力图能够表示用户分布情况。在现有技术中,热力图的计算过程由应用服务器负责实现。当应用服务器接收到热力图查询请求后,实时获取分布式数据库中存储的用户分布数据,根据获取到的用户分布数据实时计算热力点计算结果,进而根据热力点计算结果实时生成热力图并展示。但是,专利技术人在实现本专利技术的过程中发现,现有技术中的上述方式至少存在如下缺陷:热力点的计算过程由应用服务器实施,随着查询对象的增多,将对应用服务器的内存造成很大压力,从而使查询结果的展示过程耗费大量时延。并且,由于应用服务器本身需要提供多种业务功能,因此,热力点的实时计算过程将占用其他业务功能所需的系统资源,从而使其他业务功能出现卡顿现象。由此可见,现有的由应用服务器负责计算热力图的方式至少存在热力图显示时延长以及影响其他业务功能的弊端。
技术实现思路
鉴于上述问题,提出了本专利技术实施例以便提供一种克服上述问题或者至少部分地解决上述问题的热力图的展示方法、服务器及系统。根据本专利技术实施例的一个方面,提供了一种热力图的展示方法,应用于后端服务器,具体包括:根据获取到的历史订单数据计算各个实体对象端的用户分布数据,将各个实体对象端的用户分布数据存储至数据仓库中;通过第一周期任务周期性计算与所述数据仓库中存储的各个实体对象端的用户分布数据相对应的热力点聚类结果,得到各个实体对象端的第一聚类结果;通过第二周期任务周期性计算与所述数据仓库中存储的各个实体对象端的用户分布数据相对应的热力点聚类结果,得到各个实体对象端的第二聚类结果;根据所述第一聚类结果以及所述第二聚类结果,在预设缓存中存储各个实体对象端的热力点计算结果;响应于前端应用服务器发送的热力点查询请求,将所述预设缓存中存储的与所述热力点查询请求中包含的实体对象端对应的热力点计算结果发送给所述前端应用服务器,以供所述前端应用服务器展示与所述实体对象端相对应的热力图。可选的,所述第一周期任务的第一任务周期大于所述第二周期任务的第二任务周期;所述通过第一周期任务周期性计算与所述数据仓库中存储的各个实体对象端的用户分布数据相对应的热力点聚类结果,得到各个实体对象端的第一聚类结果包括:每当第一任务周期到达时,通过第一周期任务获取所述数据仓库中存储的各个实体对象端的全量用户分布数据,根据所述全量用户分布数据计算各个实体对象端的第一聚类结果;所述通过第二周期任务周期性计算与所述数据仓库中存储的各个实体对象端的用户分布数据相对应的热力点聚类结果,得到各个实体对象端的第二聚类结果包括:每当第二任务周期到达时,通过第二周期任务获取所述数据仓库中存储的各个实体对象端的增量用户分布数据,根据所述增量用户分布数据计算各个实体对象端的第二聚类结果。可选的,所述根据获取到的历史订单数据计算各个实体对象端的用户分布数据,将各个实体对象端的用户分布数据存储至数据仓库中具体包括:按照第一任务周期周期性获取并计算各个实体对象端的用户分布数据;以及按照第二任务周期周期性获取并计算各个实体对象端的用户分布数据,得到以第二任务周期划分的增量数据表;则所述通过第二周期任务获取所述数据仓库中存储的各个实体对象端的增量用户分布数据具体包括:根据所述以第二任务周期划分的增量数据表,获取所述数据仓库中存储的各个实体对象端的增量用户分布数据。可选的,所述根据所述第一聚类结果以及所述第二聚类结果,在预设缓存中存储各个实体对象端的热力点计算结果包括:每当第一聚类结果产生时,通过第一同步任务根据所述第一聚类结果更新预设缓存中存储的各个实体对象端的热力点计算结果;以及,每当第二聚类结果产生时,通过第二同步任务根据所述第二聚类结果更新预设缓存中存储的各个实体对象端的热力点计算结果。可选的,所述计算与所述数据仓库中存储的各个实体对象端的用户分布数据相对应的热力点聚类结果包括:将各个实体对象端的用户分布数据划分为多个数据分组,将多个数据分组分配给多个并行计算节点,由各个并行计算节点按照热力点聚类算法计算与各个数据分组相对应的分组聚类结果,根据多个分组聚类结果得到各个实体对象端的第一聚类结果和/或第二聚类结果。可选的,所述将各个实体对象端的用户分布数据划分为多个数据分组,将多个数据分组分配给多个并行计算节点包括:根据预设的资源配置参数,确定并行计算节点的数量为N,将各个实体对象端的用户分布数据划分为N个数据分组,将N个数据分组分配给N个并行计算节点;其中,N为自然数。可选的,所述由各个并行计算节点按照热力点聚类算法计算与各个数据分组相对应的分组聚类结果,根据多个分组聚类结果得到各个实体对象端的第一聚类结果和/或第二聚类结果包括:通过监控线程监控各个并行计算节点的处理进度信息;根据监控结果动态调整所述预设的资源配置参数,和/或,根据监控结果动态调整所述第一任务周期和/或第二任务周期。可选的,所述将多个数据分组分配给多个并行计算节点,由各个并行计算节点按照热力点聚类算法计算与各个数据分组相对应的分组聚类结果包括:确定与多个数据分组相对应的公共数据,将所述公共数据设置为可供各个并行计算节点引用的公共对象。可选的,所述将各个实体对象端的用户分布数据划分为多个数据分组包括:枚举与各个查询参数相对应的多个查询条件;分别针对每种查询条件,获取与该查询条件相对应的用户分布数据,将获取到的用户分布数据划分为多个数据分组;则所述根据多个分组聚类结果得到各个实体对象端的第一聚类结果和/或第二聚类结果包括:分别得到与各个查询条件相对应的各个实体对象端的第一聚类结果和/或第二聚类结果;且所述将所述热力点查询请求中包含的实体对象端的热力点计算结果发送给所述前端应用服务器包括:查询与所述热力点查询请求中包含的查询条件相对应的热力点计算结果,将查询到的热力点计算结果发送给所述前端应用服务器。可选的,所述实体对象端为门店端,所述查询参数包括:门店标识、与门店之间的距离、和/或用户类型;其中,所述用户类型包括:到店类型以及配送类型;并且,所述热力点计算结果包括:各个热力点的位置坐标以及各个热力点对应的用户人数。根据本专利技术实施例的又一个方面,提供了一种用于展示热力图的后端服务器,包括:获取模块,适于根据获取到的历史订单数据计算与各个实体对象端相对应的用户分布数据;并行计算模块,适于将各个实体对象端所对应的用户分布数据划分为多个数据分组,将多个数据分组分配给多个并行计算节点,由各个并行计算节点按照热力点聚类算法计算与各个数据分组相对应的分组聚类结果,根据多个分组聚类结果得到与各个实体对象端相对应的热力点计算结果;查询模块,适于响应于前端应用服本文档来自技高网...

【技术保护点】
1.一种热力图的展示方法,应用于后端服务器,其特征在于,具体包括:/n根据获取到的历史订单数据计算各个实体对象端的用户分布数据,将各个实体对象端的用户分布数据存储至数据仓库中;/n通过第一周期任务周期性计算与所述数据仓库中存储的各个实体对象端的用户分布数据相对应的热力点聚类结果,得到各个实体对象端的第一聚类结果;通过第二周期任务周期性计算与所述数据仓库中存储的各个实体对象端的用户分布数据相对应的热力点聚类结果,得到各个实体对象端的第二聚类结果;/n根据所述第一聚类结果以及所述第二聚类结果,在预设缓存中存储各个实体对象端的热力点计算结果;/n响应于前端应用服务器发送的热力点查询请求,将所述预设缓存中存储的与所述热力点查询请求中包含的实体对象端对应的热力点计算结果发送给所述前端应用服务器,以供所述前端应用服务器展示与所述实体对象端相对应的热力图。/n

【技术特征摘要】
1.一种热力图的展示方法,应用于后端服务器,其特征在于,具体包括:
根据获取到的历史订单数据计算各个实体对象端的用户分布数据,将各个实体对象端的用户分布数据存储至数据仓库中;
通过第一周期任务周期性计算与所述数据仓库中存储的各个实体对象端的用户分布数据相对应的热力点聚类结果,得到各个实体对象端的第一聚类结果;通过第二周期任务周期性计算与所述数据仓库中存储的各个实体对象端的用户分布数据相对应的热力点聚类结果,得到各个实体对象端的第二聚类结果;
根据所述第一聚类结果以及所述第二聚类结果,在预设缓存中存储各个实体对象端的热力点计算结果;
响应于前端应用服务器发送的热力点查询请求,将所述预设缓存中存储的与所述热力点查询请求中包含的实体对象端对应的热力点计算结果发送给所述前端应用服务器,以供所述前端应用服务器展示与所述实体对象端相对应的热力图。


2.根据权利要求1所述的方法,其特征在于,所述第一周期任务的第一任务周期大于所述第二周期任务的第二任务周期;
所述通过第一周期任务周期性计算与所述数据仓库中存储的各个实体对象端的用户分布数据相对应的热力点聚类结果,得到各个实体对象端的第一聚类结果包括:
每当第一任务周期到达时,通过第一周期任务获取所述数据仓库中存储的各个实体对象端的全量用户分布数据,根据所述全量用户分布数据计算各个实体对象端的第一聚类结果;
所述通过第二周期任务周期性计算与所述数据仓库中存储的各个实体对象端的用户分布数据相对应的热力点聚类结果,得到各个实体对象端的第二聚类结果包括:
每当第二任务周期到达时,通过第二周期任务获取所述数据仓库中存储的各个实体对象端的增量用户分布数据,根据所述增量用户分布数据计算各个实体对象端的第二聚类结果。


3.根据权利要求2所述的方法,其特征在于,所述根据获取到的历史订单数据计算各个实体对象端的用户分布数据,将各个实体对象端的用户分布数据存储至数据仓库中具体包括:按照第一任务周期周期性获取并计算各个实体对象端的用户分布数据;以及按照第二任务周期周期性获取并计算各个实体对象端的用户分布数据,得到以第二任务周期划分的增量数据表;
则所述通过第二周期任务获取所述数据仓库中存储的各个实体对象端的增量用户分布数据具体包括:根据所述以第二任务周期划分的增量数据表,获取所述数据仓库中存储的各个实体对象端的增量用户分布数据。


4.根据权利要求1所述的方法,其特征在于,所述根据所述第一聚类结果以及所述第二聚类结果,在预设缓存中存储各个实体对象端的热力点计算结果包括:
每当第一聚类结果产生时,通过第一同步任务根据所述第一聚类结果更新预设缓存中存储的各个实体对象端的热力点计算结果;以及,
每当第二聚类结果产生时,通过第二同步任务根据所述第二聚类结果更新预设缓存中存储的各个实体对象端的热力点计算结果。


5.根据权利要求1所述的方法,其特征在于,所述计算与所述数据仓库中存储的各个实体对象端的用户分布数据相对应的热力点聚类结果包括:
将各个实体对象端的用户分布数据划分为多个数据分组,将多个数据分组分配给多个并行计算节点,由各个并行计算节点按照热力点聚类算法计算与各个数据分组相对应的分组聚类结果,根据多个分组聚类结果得到各个实体对象端的第一聚类结果和/或第二聚类结果。


6.根据权利要求5所述的方法,其特征在于,所述将各个实体对象端的用户分布数据划分为多个数据分组,将多个数据分组分配给...

【专利技术属性】
技术研发人员:程文捷
申请(专利权)人:浙江口碑网络技术有限公司
类型:发明
国别省市:浙江;33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1