CN113792041B - 基于Hive和Spark的遥感数据服务离线批处理系统及方法 - Google Patents
基于Hive和Spark的遥感数据服务离线批处理系统及方法 Download PDFInfo
- Publication number
- CN113792041B CN113792041B CN202110893536.0A CN202110893536A CN113792041B CN 113792041 B CN113792041 B CN 113792041B CN 202110893536 A CN202110893536 A CN 202110893536A CN 113792041 B CN113792041 B CN 113792041B
- Authority
- CN
- China
- Prior art keywords
- data
- service
- remote sensing
- layer
- hive
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000012545 processing Methods 0.000 title claims abstract description 38
- 238000000034 method Methods 0.000 title claims description 23
- 238000004364 calculation method Methods 0.000 claims abstract description 19
- 238000003860 storage Methods 0.000 claims abstract description 17
- 238000003672 processing method Methods 0.000 claims abstract description 5
- 230000006399 behavior Effects 0.000 claims description 46
- 230000008569 process Effects 0.000 claims description 14
- 238000005259 measurement Methods 0.000 claims description 9
- 230000009471 action Effects 0.000 claims description 6
- 238000000638 solvent extraction Methods 0.000 claims description 6
- 230000000007 visual effect Effects 0.000 claims description 6
- 230000008859 change Effects 0.000 claims description 4
- 230000006835 compression Effects 0.000 claims description 3
- 238000007906 compression Methods 0.000 claims description 3
- 230000001376 precipitating effect Effects 0.000 claims description 3
- 238000004458 analytical method Methods 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000003203 everyday effect Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000007619 statistical method Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 238000004140 cleaning Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003032 molecular docking Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2282—Tablespace storage structures; Management thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2462—Approximate or statistical queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/283—Multi-dimensional databases or data warehouses, e.g. MOLAP or ROLAP
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/50—Information retrieval; Database structures therefor; File system structures therefor of still image data
- G06F16/51—Indexing; Data structures therefor; Storage structures
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Probability & Statistics with Applications (AREA)
- Computing Systems (AREA)
- Fuzzy Systems (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- Information Transfer Between Computers (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供一种基于Hive和Spark的遥感数据服务离线批处理系统及其数据处理方法。该系统包括采集模块、存储模块、计算模块、数据服务接口和数据应用模块,所述计算模块包括迭代式内存计算Spark和统一资源调度管理Yarn;所述系统还包括:Hive数据仓库;所述Hive数据仓库包括原始数据ODS层、维度数据DIM层、明细数据EDW层、汇总数据CDM层和应用数据APP层。本发明使用Hive和Spark计算引擎来对遥感数据服务进行离线处理,为满足用户多样化的需求、实现主动的服务模式提供数据支撑。
Description
技术领域
本发明涉及遥感数据处理技术领域,尤其涉及一种基于Hive和Spark的遥感数据服务离线批处理系统及方法。
背景技术
随着遥感对地观测技术的不断成熟,遥感技术在军事、民用、研究等领域逐渐得到了广泛应用,遥感数据出现井喷式增长,逐渐进入遥感大数据时代。与此同时,遥感数据服务平台应运而生,主要用来实现遥感影像数据的检索与下载,算法模型、处理工具、文档资料的共享,遥感产品的生产处理与个性化定制,以及仿真过境分析等。随着用户的不断增多,平台积累了大量的用户行为数据以及业务数据,但是用户的需求却变得更加多样化,这就使得传统的服务模式难以满足用户需求的多样化。
发明内容
为了满足遥感用户的多样化需求,本发明提供一种基于Hive和Spark的遥感数据服务离线批处理系统及方法。
一方面,本发明提供一种基于Hive和Spark的遥感数据服务离线批处理系统,包括采集模块、存储模块、计算模块、数据服务接口和数据应用模块,所述计算模块包括迭代式内存计算Spark和统一资源调度管理Yarn;所述系统还包括:Hive数据仓库;所述Hive数据仓库包括原始数据ODS层、维度数据DIM层、明细数据EDW层、汇总数据CDM层和应用数据APP层;
所述原始数据ODS层,用于将采集到的遥感用户行为数据和遥感服务平台业务数据保持数据的原貌;创建支持压缩的表,通过该表按照日期对数据进行分区存储;
所述维度数据DIM层,用于统计事实度量值时所需要的多样环境;
所述明细数据EDW层,用于对遥感用户行为数据进行解析得到启动日志表、基础明细表和动作日志表;以及用于根据业务过程对保持原貌的遥感服务平台业务数据进行建模;
所述汇总数据CDM层,用于将公共型数据进行聚集沉淀,采用宽表化的处理方式将预设时间周期内的数据按照主题划分进行轻度汇总;
所述应用数据APP层,用于对要分析的指标进行统计计算;其中,所述要分析的指标包括预设时间周期的活跃数、下单总次数、下单用户数、各地区下单量排行、各地区检索量排行和各产品检索量与下单量。
进一步地,所述原始数据ODS层保持数据的原貌,具体包括:仅以一个字段log来存储遥感用户行为数据的检索行为或者下载行为;以及根据遥感服务平台业务数据的原表结构存储业务数据。
进一步地,所述明细数据EDW层对遥感服务平台业务数据进行建模的过程包括:在遥感数据服务平台业务中,选取需要分析的订单业务;选取数据明细粒度;选择订单业务的识别维度,所述识别维度包括用户维度、地区维度、产品维度和时间维度;确定分析订单业务时所需要衡量的指标度量值。
进一步地,所述汇总数据CDM层在对数据按照主题划分的过程中,所述主题类型包括用户主题、地区主题、产品主题和卫星主题;其中:
所述用户主题,用于统计用户的登录次数、检索次数、下载次数、下单次数;
所述地区主题,用于统计指定地区的下单次数、检索次数、下载次数;
所述产品主题,用于统计指定产品的检索次数、下载次数、下单次数;
所述卫星主题,用于统计各卫星的检索次数。
进一步地,所述存储模块包括:分布式消息队列Kafka、关系型数据库、Hive和分布式文件系统。
进一步地,所述采集模块包括日志数据采集组件Flume和业务数据同步工具;
所述日志数据采集组件Flume,用于通过LogBack将遥感服务平台的前端埋点所采集到的遥感用户行为数据写入到文件,并存储至日志服务器中;以及用于通过分布式消息队列Kafka将日志服务器中的遥感用户行为数据存储至分布式文件系统;
所述业务数据同步工具,用于将遥感服务平台业务数据库中的业务数据按照对应的同步策略直接同步到分布式文件系统。
进一步地,所述同步策略包括:
对于第一类型业务表,采用全量同步的策略;所述第一类型业务表是指数据量小,并且每个时间周期内既会有新数据的添加,又会有旧数据的修改的业务表;
对于第二类型业务表,采用增量同步的策略;所述第二类型业务表是指数据量大,并且每个时间周期内只会有新数据的添加的业务表;
对于第三类型业务表,采用新增及变化的同步策略;所述第三类型业务表是指数据量大,并且每个时间周期内既会有新数据的添加,又会有数据变化的业务表;
对于特殊业务表,采用只同步一次的同步策略,所述特殊业务表是指每个时间内不会有数据变化的业务表。
进一步地,所述业务数据同步工具采用DataX或Sqoop。
进一步地,所述遥感数据服务离线批处理系统中的各模块之间采用Azkaban进行自动化全流程调度,以及采用zookeeper进行分布式协调。
另一方面,本发明提供一种如上述的基于Hive和Spark的遥感数据服务离线批处理系统的数据处理方法,包括:
步骤1:对遥感数据服务平台进行前端埋点,通过采集模块采集遥感用户行为数据和遥感服务平台业务数据;
步骤2:将采集到的遥感用户行为数据和遥感服务平台业务数据存储至存储模块;
步骤3:通过原始数据ODS层将存储模块中的遥感用户行为数据和遥感服务平台业务数据保持数据的原貌,并支持压缩的表,通过该表按照日期对数据进行分区存储;
步骤4:通过明细数据EDW层对来自原始数据ODS层的遥感用户行为数据进行解析得到启动日志表、基础明细表和动作日志表;以及通过明细数据EDW层根据业务过程对来自原始数据ODS层的遥感服务平台业务数据进行建模;
步骤5:通过汇总数据CDM层将明细数据EDW层处理后的数据和维度数据DIM层处理的数据中的公共型数据进行聚集沉淀,采用宽表化的处理方式将预设时间周期内的数据按照主题划分进行轻度汇总;
步骤6:通过应用数据APP层根据汇总数据CDM层中的数据和明细数据EDW层中的数据对要分析的指标进行统计计算;其中,所述要分析的指标包括预设时间周期的活跃数、下单总次数、下单用户数、各地区下单量排行、各地区检索量排行和各产品检索量与下单量;
步骤7:发布数据服务接口,搭建可视化界面,请求数据接口地址,进行可视化展示;以及将相关数据对接用户画像系统或推荐系统,实现主动服务模式。
本发明的有益效果:
本发明通过对遥感平台用户行为进行埋点采集,构建行为数据和平台业务数据采通道集、搭建离线数据仓库,统计分析数据,发现其中潜在的价值信息,能够在用户检索之前提前对热点区域进行数据缓存,减少用户在检索时的延迟时间,降低成本;还可以主动推送热点遥感产品,让用户更快的获得感兴趣的产品,同时还可以辅助卫星遥感部门分析各产品的应用情况,对相关产品及算法做出优化,从而更好地服务于遥感领域。本发明为满足用户多样化的需求、实现主动服务模式提供了数据支撑。
附图说明
图1为本发明实施例提供的基于Hive和Spark的遥感数据服务离线批处理系统的架构层级图;
图2为本发明实施例提供的基于Hive和Spark的遥感数据服务离线批处理系统的数据处理方法的流程图;
图3为本发明实施例提供的维度建模中事实表与维度表关系图;
图4为本发明实施例提供的基于Hive和Spark的遥感数据服务离线批处理系统的集群规划示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例1
如图1所示,本发明实施例提供的基于Hive和Spark计算引擎的遥感数据服务离线批处理系统包括采集模块、存储模块、计算模块、数据服务接口和数据应用模块,所述计算模块包括迭代式内存计算Spark和统一资源调度管理Yarn;所述系统还包括:Hive数据仓库;所述Hive数据仓库包括原始数据ODS层、维度数据DIM层、明细数据EDW层、汇总数据CDM层和应用数据APP层;
所述原始数据ODS层,用于将采集到的遥感用户行为数据和遥感服务平台业务数据保持数据的原貌;创建支持压缩的表,通过该表按照日期对数据进行分区存储;
具体地,所述原始数据ODS层保持数据的原貌,具体包括:仅以一个字段log来存储遥感用户行为数据的检索行为或者下载行为;以及根据遥感服务平台业务数据的原表结构存储业务数据。
所述维度数据DIM层,用于统计事实度量值时所需要的多样环境;
所述明细数据EDW层,用于对遥感用户行为数据进行解析得到启动日志表、基础明细表和动作日志表;以及用于根据业务过程对保持原貌的遥感服务平台业务数据进行建模;
具体地,所述明细数据EDW层对遥感服务平台业务数据进行建模的过程包括:在遥感数据服务平台业务中,选取需要分析的订单业务;选取数据明细粒度;选择订单业务的识别维度,所述识别维度包括用户维度、地区维度、产品维度和时间维度;确定分析订单业务时所需要衡量的指标度量值。
所述汇总数据CDM层,用于将公共型数据进行聚集沉淀,采用宽表化的处理方式将预设时间周期内的数据按照主题划分进行轻度汇总;
具体地,所述汇总数据CDM层在对数据按照主题划分的过程中,所述主题类型包括用户主题、地区主题、产品主题和卫星主题;其中:
所述用户主题,用于统计用户的登录次数、检索次数、下载次数、下单次数;
所述地区主题,用于统计指定地区的下单次数、检索次数、下载次数;
所述产品主题,用于统计指定产品的检索次数、下载次数、下单次数;
所述卫星主题,用于统计各卫星的检索次数。
所述应用数据APP层,用于对要分析的指标进行统计计算;其中,所述要分析的指标包括预设时间周期的活跃数、下单总次数、下单用户数、各地区下单量排行、各地区检索量排行和各产品检索量与下单量。
作为一种可实施方式,本发明实施例中,所述存储模块包括:分布式消息队列Kafka、关系型数据库、Hive和分布式文件系统;在此基础上,本发明实施例中的所述采集模块包括日志数据采集组件Flume和业务数据同步工具;所述日志数据采集组件Flume,用于通过LogBack将遥感服务平台的前端埋点所采集到的遥感用户行为数据写入到文件,并存储至日志服务器中;以及用于通过分布式消息队列Kafka将日志服务器中的遥感用户行为数据存储至分布式文件系统;所述业务数据同步工具,用于将遥感服务平台业务数据库中的业务数据按照对应的同步策略直接同步到分布式文件系统。所述业务数据同步工具采用DataX或Sqoop。
作为一种可实施方式,所述同步策略包括:
对于第一类型业务表,采用全量同步的策略;第一类型业务表是指数据量不大,每个时间周期(例如每天)内既会有新数据的添加,又会有旧数据的修改的业务表;所述第一类型业务表包括编码字典表、影像数据表、产品表、产品品类表、算法表、模型工具表;
对于第二类型业务表,采用增量同步的策略;第二类型业务表是指数据量大,并且每个时间周期(例如每天)内只会有新数据的添加的业务表;所述第二类型业务表包括订单状态表、订单详情表、上传表、下载表;
对于第三类型业务表,采用新增及变化的同步策略;第三类型业务表是指数据量大,每个时间周期(例如每天)内既会有新数据的添加,又会有数据变化的业务表,所述第三类型业务表包括用户表、订单表;
对于特殊业务表,采用只同步一次的同步策略,所述特殊业务表是指每个时间内不会有数据变化的业务表,例如地区表、省份表。
在本发明实施例中,所述遥感数据服务离线批处理系统中的各模块之间采用Azkaban进行自动化全流程调度,以及采用zookeeper进行分布式协调。
如图4所示,本发明实施例还提供了一种基于Hive和Spark计算引擎的遥感数据服务离线批处理系统的集群示意图。
本发明提供的基于Hive和Spark计算引擎的遥感数据服务离线批处理系统,主要应用在遥感数据服务平台下,通过对用户行为以及业务数据进行统计分析,得出热点产品、热点区域等指标,为用户多样化的需求提供数据支撑。主要涉及遥感服务平台前端埋点、行为数据源和业务数据源的采集、存储、清洗、数据仓库的分层、计算、统计分析、数据接口的发布以及可视化等。
实施例2
如图2所示,本发明实施例还提供一种基于Hive和Spark的遥感数据服务离线批处理系统的数据处理方法,包括以下步骤:
S1:对遥感数据服务平台进行前端埋点,通过采集模块采集遥感用户行为数据和遥感服务平台业务数据;
具体地,前端埋点采集的数据包括系统特征、访问特征、来源特征、检索及下载特征;其中,系统特征包括:所采用的操作系统、浏览器、域名和访问速度等;访问特征包括:访问的URL、点击的页面标签<a>及标签属性;来源特征包括来访IP地址等;检索及下载特征包括:覆盖方式、尺度规格、区域、时间、来源、产品品种、影像数据等;
通过前端埋点收集遥感用户行为数据的过程具体为:在遥感数据服务平台的前端页面编写JS代码,以便用户对相关参数进行选择时,收集用户行为数据,当触发检索或下载条件时,将用户选择过的行为数据以JSON格式发送到指定的HTTP地址中。
S2:将采集到的遥感用户行为数据和遥感服务平台业务数据存储至存储模块;
作为一种可实施方式,存储模块包括分布式消息队列Kafka、关系型数据库、Hive和分布式文件系统;采集模块包括日志数据采集组件Flume和业务数据同步工具。
在此基础上,针对遥感用户行为数据,日志数据采集组件Flume通过LogBack将遥感用户行为数据写入到文件,并存储至日志服务器中,然后通过分布式消息队列Kafka将日志服务器中的遥感用户行为数据存储至分布式文件系统。如图2所示,为了防止在数据量很大的情况下,数据的发送速率和数据的接收速率不一致,添加Kafka层作为数据的缓冲处理,将数据发送到rs_user _log主题中,并在上层Flume中直接选用kafka Channel进行对接。消费Kafka数据,以预设时间周期为单位(例如以天为单位)存储到分布式文件系统;并自定义时间拦截器,确保当天的日志数据存储在对应路径中(需要说明的是,由于Flume默认使用系统时间作为发送时间,所以自定义时间拦截器,以日志数据中的时间为基准)。在Kafka和分布式文件系统之间添加一层Flume作为中间层,使用HDFSSink发送到分布式文件系统。
针对遥感服务平台业务数据,业务数据同步工具DataX或Sqoop将遥感服务平台业务数据库中的业务数据按照对应的同步策略直接同步到分布式文件系统。作为一种可实施方式,所述同步策略包括:对于第一类型业务表,采用全量同步的策略;所述第一类型业务表包括编码字典表、影像数据表、产品表、产品品类表、算法表、模型工具表;对于第二类型业务表,采用增量同步的策略;所述第二类型业务表包括订单状态表、订单详情表、上传表、下载表;对于第三类型业务表,采用新增及变化的同步策略;所述第三类型业务表包括用户表、订单表;对于特殊业务表,采用只同步一次的同步策略,所述特殊业务表包括地区表、省份表。
步骤S3:利用Zookeeper搭建具有高可用性的分布式文件存储系统HDFS,采用3副本机制保证数据存储的可靠性,并设置任务运行模式为Yarn。
步骤S4:使用Hive对存储在文件系统中的数据进行表的映射,将没有集成Hive的Spark纯净jar放在lib目录下,采用SparkonHive作为执行引擎,由Spark来负责SQL的解析,底层去执行DAG有向无环图来完成任务的调度。
步骤S5:如图3所示,依照维度建模理论,使用星型模型来构建数据仓库,并进行分层处理。具体包括以下子步骤:
S51:通过原始数据ODS层将存储模块中的遥感用户行为数据和遥感服务平台业务数据保持数据的原貌,并支持压缩的表,通过该表按照日期对数据进行分区存储;
S52:通过明细数据EDW层对来自原始数据ODS层的遥感用户行为数据进行解析得到启动日志表、基础明细表和动作日志表;以及通过明细数据EDW层根据业务过程对来自原始数据ODS层的遥感服务平台业务数据进行建模;
具体地,所述明细数据EDW层对遥感服务平台业务数据进行建模的过程包括:在遥感数据服务平台业务中,选取需要分析的订单业务;选取数据明细粒度;选择订单业务的识别维度,所述识别维度包括用户维度、地区维度、产品维度和时间维度;确定分析订单业务时所需要衡量的指标度量值(主要为次数);
为降低数据获取的复杂度,减少多表之间的关联,所述明细数据EDW层还以星型模型为标准,对多级维度表进行维度退化,保证事实表周围均为一级维度,如:影像数据表和等级表退化为影像信息维度表,卫星表和载荷表退化为卫星表,省份表和地区表退化为地区表,产品表和品类表退化为产品表。
对于具有缓慢变化特性的维度表,如用户表,对其设计拉链存储,首先初始化拉链表,在用户表的末尾添加开始日期和结束日期,次日获取到新增和变化的数据后,仍先在数据的末尾添加上开始和结束日期,然后用初始化的拉链表去左连接新增和变化的新表,若关联上,则修改初始化拉链表中的结束日期为当前日期的前一天。
S53:通过汇总数据CDM层将明细数据EDW层处理后的数据和维度数据DIM层处理的数据中的公共型数据进行聚集沉淀,采用宽表化的处理方式将预设时间周期内的数据按照主题划分进行轻度汇总;
该层各主题宽表中的字段是从各维度的角度去联系事实表,关注事实表中的度量值,通过与各维度表关联的事实表,获得不同的事实表的度量值。
S54:通过应用数据APP层根据汇总数据CDM层中的数据和明细数据EDW层中的数据对要分析的指标进行统计计算;其中,所述要分析的指标包括预设时间周期的活跃数、下单总次数、下单用户数、各地区下单量排行(热点订购区域)、各地区检索量排行(热点检索区域)和各产品检索量与下单量(热点产品);
本步骤从遥感产品生产定制业务和使用角度将数据进行有序有结构的存储,依照维度建模理论,对遥感用户行为数据和遥感业务数据进行建模,使用星型模型来构建数据仓库,并利用空间换时间的理念来进行分层处理,通过中间层数据来减少重复的计算,增加结果的可用性,减少出问题的风险,同时可以快速的查询所需要的数据。
S6:发布数据服务接口,搭建可视化界面,请求数据接口地址,进行可视化展示;以及将相关数据对接用户画像系统或推荐系统,实现主动服务模式。
基于SpringBoot搭建服务工程,使用maven进行构建,采用Controller-Service-Dao三层架构发布数据服务接口。
本发明采用上述技术方案,使用Hive和Spark计算引擎来对遥感数据服务进行离线处理。通过对用户行为数据以及业务数据的计算与分析,发现其中潜在的价值信息,辅助卫星遥感部门分析各产品应用情况,从而对服务平台做出进一步的改进,同时也为满足用户多样化的需求、实现主动的服务模式提供数据支撑。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.基于Hive和Spark的遥感数据服务离线批处理系统,包括采集模块、存储模块、计算模块、数据服务接口和数据应用模块,其特征在于,所述计算模块包括迭代式内存计算Spark和统一资源调度管理Yarn;所述系统还包括:Hive数据仓库;所述Hive数据仓库包括原始数据ODS层、维度数据DIM层、明细数据EDW层、汇总数据CDM层和应用数据APP层;
所述原始数据ODS层,用于将采集到的遥感用户行为数据和遥感服务平台业务数据保持数据的原貌;创建支持压缩的表,通过该表按照日期对数据进行分区存储;
所述维度数据DIM层,用于统计事实度量值时所需要的多样环境;
所述明细数据EDW层,用于对遥感用户行为数据进行解析得到启动日志表、基础明细表和动作日志表;以及用于根据业务过程对保持原貌的遥感服务平台业务数据进行建模;
所述汇总数据CDM层,用于将公共型数据进行聚集沉淀,采用宽表化的处理方式将预设时间周期内的数据按照主题划分进行轻度汇总;
所述应用数据APP层,用于对要分析的指标进行统计计算;其中,所述要分析的指标包括预设时间周期的活跃数、下单总次数、下单用户数、各地区下单量排行、各地区检索量排行和各产品检索量与下单量。
2.根据权利要求1所述的基于Hive和Spark的遥感数据服务离线批处理系统,其特征在于,所述原始数据ODS层保持数据的原貌,具体包括:仅以一个字段log来存储遥感用户行为数据的检索行为或者下载行为;以及根据遥感服务平台业务数据的原表结构存储业务数据。
3.根据权利要求1所述的基于Hive和Spark的遥感数据服务离线批处理系统,其特征在于,所述明细数据EDW层对遥感服务平台业务数据进行建模的过程包括:在遥感数据服务平台业务中,选取需要分析的订单业务;选取数据明细粒度;选择订单业务的识别维度,所述识别维度包括用户维度、地区维度、产品维度和时间维度;确定分析订单业务时所需要衡量的指标度量值。
4.根据权利要求1所述的基于Hive和Spark的遥感数据服务离线批处理系统,其特征在于,所述汇总数据CDM层在对数据按照主题划分的过程中,所述主题类型包括用户主题、地区主题、产品主题和卫星主题;其中:
所述用户主题,用于统计用户的登录次数、检索次数、下载次数、下单次数;
所述地区主题,用于统计指定地区的下单次数、检索次数、下载次数;
所述产品主题,用于统计指定产品的检索次数、下载次数、下单次数;
所述卫星主题,用于统计各卫星的检索次数。
5.根据权利要求1所述的基于Hive和Spark的遥感数据服务离线批处理系统,其特征在于,所述存储模块包括:分布式消息队列Kafka、关系型数据库、Hive和分布式文件系统。
6.根据权利要求5所述的基于Hive和Spark的遥感数据服务离线批处理系统,其特征在于,所述采集模块包括日志数据采集组件Flume和业务数据同步工具;
所述日志数据采集组件Flume,用于通过LogBack将遥感服务平台的前端埋点所采集到的遥感用户行为数据写入到文件,并存储至日志服务器中;以及用于通过分布式消息队列Kafka将日志服务器中的遥感用户行为数据存储至分布式文件系统;
所述业务数据同步工具,用于将遥感服务平台业务数据库中的业务数据按照对应的同步策略直接同步到分布式文件系统。
7.根据权利要求6所述的基于Hive和Spark的遥感数据服务离线批处理系统,其特征在于,所述同步策略包括:
对于第一类型业务表,采用全量同步的策略;所述第一类型业务表是指数据量小,并且每个时间周期内既会有新数据的添加,又会有旧数据的修改的业务表;
对于第二类型业务表,采用增量同步的策略;所述第二类型业务表是指数据量大,并且每个时间周期内只会有新数据的添加的业务表;
对于第三类型业务表,采用新增及变化的同步策略;所述第三类型业务表是指数据量大,并且每个时间周期内既会有新数据的添加,又会有数据变化的业务表;
对于特殊业务表,采用只同步一次的同步策略,所述特殊业务表是指每个时间内不会有数据变化的业务表。
8.根据权利要求6所述的基于Hive和Spark的遥感数据服务离线批处理系统,其特征在于,所述业务数据同步工具采用DataX或Sqoop。
9.根据权利要求1所述的基于Hive和Spark的遥感数据服务离线批处理系统,其特征在于,所述遥感数据服务离线批处理系统中的各模块之间采用Azkaban进行自动化全流程调度,以及采用zookeeper进行分布式协调。
10.如权利要求1至9任一所述的基于Hive和Spark的遥感数据服务离线批处理系统的数据处理方法,其特征在于,包括:
步骤1:对遥感数据服务平台进行前端埋点,通过采集模块采集遥感用户行为数据和遥感服务平台业务数据;
步骤2:将采集到的遥感用户行为数据和遥感服务平台业务数据存储至存储模块;
步骤3:通过原始数据ODS层将存储模块中的遥感用户行为数据和遥感服务平台业务数据保持数据的原貌,并支持压缩的表,通过该表按照日期对数据进行分区存储;
步骤4:通过明细数据EDW层对来自原始数据ODS层的遥感用户行为数据进行解析得到启动日志表、基础明细表和动作日志表;以及通过明细数据EDW层根据业务过程对来自原始数据ODS层的遥感服务平台业务数据进行建模;
步骤5:通过汇总数据CDM层将明细数据EDW层处理后的数据和维度数据DIM层处理的数据中的公共型数据进行聚集沉淀,采用宽表化的处理方式将预设时间周期内的数据按照主题划分进行轻度汇总;
步骤6:通过应用数据APP层根据汇总数据CDM层中的数据和明细数据EDW层中的数据对要分析的指标进行统计计算;其中,所述要分析的指标包括预设时间周期的活跃数、下单总次数、下单用户数、各地区下单量排行、各地区检索量排行和各产品检索量与下单量;
步骤7:发布数据服务接口,搭建可视化界面,请求数据接口地址,进行可视化展示;以及将相关数据对接用户画像系统或推荐系统,实现主动服务模式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110893536.0A CN113792041B (zh) | 2021-08-04 | 2021-08-04 | 基于Hive和Spark的遥感数据服务离线批处理系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110893536.0A CN113792041B (zh) | 2021-08-04 | 2021-08-04 | 基于Hive和Spark的遥感数据服务离线批处理系统及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113792041A CN113792041A (zh) | 2021-12-14 |
CN113792041B true CN113792041B (zh) | 2024-04-09 |
Family
ID=78877137
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110893536.0A Active CN113792041B (zh) | 2021-08-04 | 2021-08-04 | 基于Hive和Spark的遥感数据服务离线批处理系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113792041B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114490810A (zh) * | 2021-12-31 | 2022-05-13 | 新奥数能科技有限公司 | 用户行为数据统计方法、装置、设备及存储介质 |
CN117609289A (zh) * | 2024-01-22 | 2024-02-27 | 山东浪潮数据库技术有限公司 | 一种基于宽表的能源数据处理系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017071134A1 (zh) * | 2015-10-28 | 2017-05-04 | 北京汇商融通信息技术有限公司 | 分布式跟踪系统 |
CN108874982A (zh) * | 2018-06-11 | 2018-11-23 | 华南理工大学 | 一种基于Spark大数据框架离线实时处理数据的方法 |
CN112527886A (zh) * | 2021-02-09 | 2021-03-19 | 中关村科学城城市大脑股份有限公司 | 一种基于城市大脑的数据仓库系统 |
-
2021
- 2021-08-04 CN CN202110893536.0A patent/CN113792041B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017071134A1 (zh) * | 2015-10-28 | 2017-05-04 | 北京汇商融通信息技术有限公司 | 分布式跟踪系统 |
CN108874982A (zh) * | 2018-06-11 | 2018-11-23 | 华南理工大学 | 一种基于Spark大数据框架离线实时处理数据的方法 |
CN112527886A (zh) * | 2021-02-09 | 2021-03-19 | 中关村科学城城市大脑股份有限公司 | 一种基于城市大脑的数据仓库系统 |
Non-Patent Citations (1)
Title |
---|
高校数据仓库多维数据建模分析;张军;王芬芬;;智能计算机与应用;20200501(第05期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN113792041A (zh) | 2021-12-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106126641B (zh) | 一种基于Spark的实时推荐系统及方法 | |
CN105701216B (zh) | 一种信息推送方法及装置 | |
US8645390B1 (en) | Reordering search query results in accordance with search context specific predicted performance functions | |
CN107451861B (zh) | 一种大数据下用户上网特征识别的方法 | |
US7310632B2 (en) | Decision-theoretic web-crawling and predicting web-page change | |
US7761423B1 (en) | System and method for indexing a network of interrelated elements | |
US8065619B2 (en) | Customized today module | |
US8527585B2 (en) | Prereading method and system for web browser | |
US20090164408A1 (en) | Method, System and Computer Program for Managing Delivery of Online Content | |
CN113792041B (zh) | 基于Hive和Spark的遥感数据服务离线批处理系统及方法 | |
CN102667761A (zh) | 可扩展的集群数据库 | |
US20100205168A1 (en) | Thread-Based Incremental Web Forum Crawling | |
CN106339394B (zh) | 一种信息处理方法及装置 | |
US10162855B2 (en) | Systems and methods for optimizing data analysis | |
CN110717093B (zh) | 一种基于Spark的电影推荐系统及方法 | |
CN105976161A (zh) | 一种基于时间轴上的智能推荐日历及基于用户的呈现方法 | |
JP2007526537A (ja) | 持続的にイベントデータを記憶および提供するためのサーバアーキテクチャおよび方法 | |
JP2008508575A (ja) | エコシステムを使用した集約および検索の方法、並びに、それらの関連技術 | |
CN101833587A (zh) | 网络视频搜索系统 | |
CN111552885B (zh) | 实现自动化实时消息推送运营的系统及其方法 | |
CN111159341A (zh) | 基于用户投资理财偏好的资讯推荐方法及装置 | |
CN109284435A (zh) | 面向互联网的用户交互痕迹捕获、存储和检索的系统及方法 | |
CN114443671A (zh) | 推荐模型的更新方法、装置、计算机设备和存储介质 | |
Dixit et al. | Automatic recommendation for online users using web usage mining | |
CN107357919A (zh) | 行为日志查询系统及方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |