CN114936214A - 数据实时更新方法、装置、设备及存储介质 - Google Patents
数据实时更新方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN114936214A CN114936214A CN202210277909.6A CN202210277909A CN114936214A CN 114936214 A CN114936214 A CN 114936214A CN 202210277909 A CN202210277909 A CN 202210277909A CN 114936214 A CN114936214 A CN 114936214A
- Authority
- CN
- China
- Prior art keywords
- data
- logistics
- real
- time
- preset
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 60
- 238000003860 storage Methods 0.000 title claims abstract description 42
- 238000012545 processing Methods 0.000 claims abstract description 105
- 238000004458 analytical method Methods 0.000 claims abstract description 37
- 238000007781 pre-processing Methods 0.000 claims abstract description 24
- 230000004931 aggregating effect Effects 0.000 claims abstract description 13
- 230000002776 aggregation Effects 0.000 claims description 63
- 238000004220 aggregation Methods 0.000 claims description 63
- 238000012544 monitoring process Methods 0.000 claims description 25
- 238000001914 filtration Methods 0.000 claims description 23
- 238000007405 data analysis Methods 0.000 claims description 12
- 238000013500 data storage Methods 0.000 claims description 6
- 238000006116 polymerization reaction Methods 0.000 claims description 6
- 238000004141 dimensional analysis Methods 0.000 claims description 2
- 238000004590 computer program Methods 0.000 claims 1
- 238000012360 testing method Methods 0.000 description 20
- 230000008676 import Effects 0.000 description 12
- 230000008569 process Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 9
- 238000004364 calculation method Methods 0.000 description 8
- 239000000284 extract Substances 0.000 description 8
- 238000012549 training Methods 0.000 description 6
- 238000012937 correction Methods 0.000 description 5
- 238000009826 distribution Methods 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000012795 verification Methods 0.000 description 3
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 238000013499 data model Methods 0.000 description 2
- 238000002955 isolation Methods 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000008520 organization Effects 0.000 description 2
- 238000005192 partition Methods 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000005856 abnormality Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 238000010223 real-time analysis Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 238000012916 structural analysis Methods 0.000 description 1
- 238000000547 structure data Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 239000013077 target material Substances 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
- 238000005303 weighing Methods 0.000 description 1
Images
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/23—Updating
- G06F16/2379—Updates performed during online database operations; commit processing
-
- 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/21—Design, administration or maintenance of databases
- G06F16/215—Improving data quality; Data cleansing, e.g. de-duplication, removing invalid entries or correcting typographical errors
-
- 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/23—Updating
- G06F16/2365—Ensuring data consistency and integrity
-
- 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/23—Updating
- G06F16/2372—Updates performed during offline database operations
-
- 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/2455—Query execution
- G06F16/24553—Query execution of query operations
- G06F16/24554—Unary operations; Data partitioning operations
- G06F16/24556—Aggregation; Duplicate elimination
-
- 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/25—Integrating or interfacing systems involving database management systems
-
- 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/284—Relational databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/08—Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
- G06Q10/083—Shipping
- G06Q10/0838—Historical data
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Probability & Statistics with Applications (AREA)
- Economics (AREA)
- Quality & Reliability (AREA)
- Computational Linguistics (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Development Economics (AREA)
- Fuzzy Systems (AREA)
- Entrepreneurship & Innovation (AREA)
- Human Resources & Organizations (AREA)
- Marketing (AREA)
- Operations Research (AREA)
- Strategic Management (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明涉及物流技术领域,公开了一种数据实时更新方法、装置、设备及存储介质。本方法包括:通过Apache Flink对获取的初始物流明细数据进行预处理,得到目标物流明细数据;对目标物流明细数据进行聚合,得到压缩物流数据;对压缩物流数据进行维度分析,得到多维度物流数据;对多维度物流数据进行统计,得到实时物流数据表;获取离线物流数据,并将离线物流数据加载至配置表,得到物流配置数据;将物流配置数据分布式导入实时物流数据表,并通过实时物流数据表更新离线物流数据表。本方案通过将物流数据实时更新至离线表,保证了数据的一致性,提高了针对物流进出站海量物流数据的处理效率低下的技术问题。
Description
技术领域
本发明涉及物流技术领域,尤其涉及一种数据实时更新方法、装置、设备及存储介质。
背景技术
随着快递行业的日益增长,物流快递数据的单日票件量已达亿级,面对如此大的数据量,我们不仅有票件数据,还有智能硬件、比如说车辆摄像头等一些监控方面的数据,我们要对这些数据进行处理,我们需要有一个交互的分析平台。而在某些紧急情况下,分拨中心存在断网、事故等原因造成数据表更新不及时,而系统中的离线数据表又无法精准预测实时数据情况,造成物流订单的延误、错漏。
所以分拨中心拥有一个数据实时预测表是非常有必要的,分拨中心作为在物流环节中最为重要的一环,公司需要从数据层面对分拨中心的操作效率进行监控,及时找到它在操作中出现的问题,进行纠正,从而提升我们的物流服务质量。
发明内容
本发明的主要目的是将物流数据实时更新至离线表,保证了数据的一致性的同时,提高了针对物流进出站海量物流数据的处理效率低下的技术问题。
本发明第一方面提供了一种数据实时更新方法,包括:获取初始物流明细数据,并通过大数据处理引擎Apache Flink对所述初始物流明细数据进行数据预处理,得到目标物流明细数据;对所述目标物流明细数据进行聚合去重处理,得到压缩物流数据;对所述压缩物流数据进行维度分析处理,得到多维度物流数据;对所述多维度物流数据进行统计,得到实时物流数据表;获取分拨中心的离线物流数据,并将所述离线物流数据加载至预设配置表,得到物流配置数据;将所述物流配置数据分布式导入所述实时物流数据表,并通过所述实时物流数据表更新预置离线物流数据表。
可选地,在本发明第一方面的第一种实现方式中,所述获取初始物流明细数据,并通过大数据处理引擎Apache Flink对所述初始物流明细数据进行数据预处理,得到目标物流明细数据包括:获取初始物流明细数据,并将所述初始物流明细数据存储至消息队列;通过大数据处理引擎Apache Flink对所述消息队列中的初始物流明细数据进行数据解析,得到已解析的物流明细数据;基于预设过滤规则对所述已解析的物流明细数据进行过滤处理,得到目标物流明细数据,并对所述目标物流明细数据进行缓存处理。
可选地,在本发明第一方面的第二种实现方式中,所述对所述目标物流明细数据进行聚合去重处理,得到压缩物流数据包括:提取所述目标物流明细数据中的多个属性标识和所述属性标识对应的属性参数,并对各所述属性标识进行聚合处理,得到聚合标识;基于所述聚合标识查询预置标识参照表,并根据查询的结果判断所述聚合标识是否在所述标识参照表中存在;若存在,则将所述聚合标识中对应的各属性参数剔除;若不存在,则将所述聚合标识中对应的各属性参数进行聚合处理,得到压缩物流数据。
可选地,在本发明第一方面的第三种实现方式中,所述对所述压缩物流数据进行维度分析处理,得到多维度物流数据包括:通过预设实时流处理维度模型按照预设的多个业务场景,对所述压缩物流数据进行拆分处理,得到多个业务场景物流数据;按照预设的指标维度对所述多个业务场景物流数据进行细粒度拆分,得到多维度物流数据,并将所述多维度物流数据存储至各业务场景对应的明细表中。
可选地,在本发明第一方面的第四种实现方式中,所述对所述多维度物流数据进行统计,得到实时物流数据表包括:对报表生成请求进行参数解析,得到多个业务指标和多个物流数据统计字段,并分别对所述业务指标进行分析,确定各业务指标对应的目标业务场景;基于所述目标业务场景,对所述目标业务场景对应的业务维度进行分析,得到与各业务指标相对应的目标业务维度;按照所述目标业务维度从所述各业务场景对应的明细数据表中提取目标维度物流数据;对所述业务指标和所述目标维度物流数据进行聚合处理,得到数据宽表,基于所述数据宽表和所述多个物流数据统计字段,得到实时物流数据,并根据所述实时物流数据生成实时物流数据表。
可选地,在本发明第一方面的第五种实现方式中,所述将所述物流配置数据分布式导入所述实时物流数据表包括:若预置异步方法为异步线程方式,则根据所述物流配置数据在预置分布式消息队列中的存储队列数量,从预置线程池中调用对应数量的线程各存储队列中;根据所述线程的结构数据存储协议,分别将各所述存储队列中顺序存储的物流配置数据异步导入所述实时物流数据表中。
可选地,在本发明第一方面的第六种实现方式中,在所述将所述物流配置数据分布式导入所述实时物流数据表,并通过所述实时物流数据表更新预置离线物流数据表之后,还包括:通过所述实时物流数据表中的物流明细数据和所述离线物流数据表中的物流指标数据,计算所述分拨中心的效能指标;根据所述效能指标,对所述分拨中心的操作效率进行监控。
本发明第二方面提供了一种数据实时更新装置,包括:预处理模块,用于获取初始物流明细数据,并通过大数据处理引擎Apache Flink对所述初始物流明细数据进行数据预处理,得到目标物流明细数据;聚合模块,用于对所述目标物流明细数据进行聚合去重处理,得到压缩物流数据;分析模块,用于对所述压缩物流数据进行维度分析处理,得到多维度物流数据;统计模块,用于对所述多维度物流数据进行统计,得到实时物流数据表;加载模块,用于获取分拨中心的离线物流数据,并将所述离线物流数据加载至预设配置表,得到物流配置数据;更新模块,用于将所述物流配置数据分布式导入所述实时物流数据表,并通过所述实时物流数据表更新预置离线物流数据表。
可选地,在本发明第二方面的第一种实现方式中,所述预处理模块具体用于:获取初始物流明细数据,并将所述初始物流明细数据存储至消息队列;通过大数据处理引擎Apache Flink对所述消息队列中的初始物流明细数据进行数据解析,得到已解析的物流明细数据;基于预设过滤规则对所述已解析的物流明细数据进行过滤处理,得到目标物流明细数据,并对所述目标物流明细数据进行缓存处理。
可选地,在本发明第二方面的第二种实现方式中,所述聚合模块具体用于:提取所述目标物流明细数据中的多个属性标识和所述属性标识对应的属性参数,并对各所述属性标识进行聚合处理,得到聚合标识;基于所述聚合标识查询预置标识参照表,并根据查询的结果判断所述聚合标识是否在所述标识参照表中存在;若存在,则将所述聚合标识中对应的各属性参数剔除;若不存在,则将所述聚合标识中对应的各属性参数进行聚合处理,得到压缩物流数据。
可选地,在本发明第二方面的第三种实现方式中,所述分析模块具体用于:通过预设实时流处理维度模型按照预设的多个业务场景,对所述压缩物流数据进行拆分处理,得到多个业务场景物流数据;按照预设的指标维度对所述多个业务场景物流数据进行细粒度拆分,得到多维度物流数据,并将所述多维度物流数据存储至各业务场景对应的明细表中。
可选地,在本发明第二方面的第四种实现方式中,所述统计模块包括:
确定单元,用于对报表生成请求进行参数解析,得到多个业务指标和多个物流数据统计字段,并分别对所述业务指标进行分析,确定各业务指标对应的目标业务场景;分析单元,用于基于所述目标业务场景,对所述目标业务场景对应的业务维度进行分析,得到与各业务指标相对应的目标业务维度;提取单元,用于按照所述目标业务维度从所述各业务场景对应的明细数据表中提取目标维度物流数据;统计单元,用于对所述业务指标和所述目标维度物流数据进行聚合处理,得到数据宽表,基于所述数据宽表和所述多个物流数据统计字段,得到实时物流数据,并根据所述实时物流数据生成实时物流数据表。
可选地,在本发明第二方面的第五种实现方式中,所述更新模块具体用于:若预置异步方法为异步线程方式,则根据所述物流配置数据在预置分布式消息队列中的存储队列数量,从预置线程池中调用对应数量的线程各存储队列中;根据所述线程的结构数据存储协议,分别将各所述存储队列中顺序存储的物流配置数据异步导入所述实时物流数据表中。
可选地,在本发明第二方面的第六种实现方式中,所述数据实时更新装置还包括:计算模块,用于通过所述实时物流数据表中的物流明细数据和所述离线物流数据表中的物流指标数据,计算所述分拨中心的效能指标;监控模块,用于根据所述效能指标,对所述分拨中心的操作效率进行监控。
本发明第三方面提供了一种数据实时更新设备,包括:存储器和至少一个处理器,所述存储器中存储有指令,所述存储器和所述至少一个处理器通过线路互连;
所述至少一个处理器调用所述存储器中的所述指令,以使得所述数据实时更新设备执行上述的数据实时更新方法的各个步骤。
本发明的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述的数据实时更新方法的各个步骤。
本发明提供的技术方案中,通过Apache Flink对获取的初始物流明细数据进行预处理,得到目标物流明细数据;对目标物流明细数据进行聚合,得到压缩物流数据;对压缩物流数据进行维度分析,得到多维度物流数据;对多维度物流数据进行统计,得到实时物流数据表;获取离线物流数据,并将离线物流数据加载至配置表,得到物流配置数据;将物流配置数据分布式导入实时物流数据表,并通过实时物流数据表更新离线物流数据表。本方案通过将物流数据实时更新至离线表,保证了数据的一致性,提高了针对物流进出站海量物流数据的处理效率低下的技术问题。
附图说明
图1为本发明提供的数据实时更新方法的第一个实施例示意图;
图2为本发明提供的数据实时更新方法的第二个实施例示意图;
图3为本发明提供的数据实时更新方法的第三个实施例示意图;
图4为本发明提供的数据实时更新方法的第四个实施例示意图;
图5为本发明提供的数据实时更新方法的第五个实施例示意图;
图6为本发明提供的数据实时更新装置的第一个实施例示意图;
图7为本发明提供的数据实时更新装置的第二个实施例示意图;
图8为本发明提供的数据实时更新设备的一个实施例示意图。
具体实施方式
本发明实施例提供了一种数据实时更新方法、装置、设备及存储介质,本发明的技术方案中,首先通过Apache Flink对获取的初始物流明细数据进行预处理,得到目标物流明细数据;对目标物流明细数据进行聚合,得到压缩物流数据;对压缩物流数据进行维度分析,得到多维度物流数据;对多维度物流数据进行统计,得到实时物流数据表;获取离线物流数据,并将离线物流数据加载至配置表,得到物流配置数据;将物流配置数据分布式导入实时物流数据表,并通过实时物流数据表更新离线物流数据表。本方案通过将物流数据实时更新至离线表,保证了数据的一致性,提高了针对物流进出站海量物流数据的处理效率低下的技术问题。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”或“具有”及其任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
为便于理解,下面对本发明实施例的具体流程进行描述,请参阅图1,本发明实施例中数据实时更新方法的第一个实施例包括:
101、获取初始物流明细数据,并通过大数据处理引擎Apache Flink对初始物流明细数据进行数据预处理,得到目标物流明细数据;
本实施例中,服务器从预设的数据源中实时采集物流明细数据,并将物流明细数据存储至消息队列中。其中,预设的数据源用于提供快递公司扫描操作数据、车辆进出站记录数据、车辆全球定位系统GPS数据、监控视频流数据、组织架构员工信息等基础数据。物流明细数据包括物流扫描数据、物流车辆进出站数据、物流视频监控特征数据和物流日志数据,物流扫描数据、物流车辆进出站数据、物流视频监控特征数据和物流日志数据均为非结构化数据类型的物流明细数据。
本实施例中,服务器通过大数据分析引擎Flink对消息队列中的物流扫描数据、物流车辆进出站数据、物流视频监控特征数据和/或物流日志数据进行数据解析和数据过滤处理,得到目标物流明细数据。进一步地,当初始物流数据为物流扫描数据时,服务器通过Flink对实时上报的物流扫描数据进行数据解析,并识别多个完整的语句片段;当初始物流数据为物流车辆进出站数据时,服务器通过Flink对物流车辆进出站数据进行数据解析,得到车辆位置信息和车辆运输信息;当初始物流数据为物流视频监控特征数据时,服务器通过Flink对流视频监控特征数据删除相同的视频特征数据,得到多个视频数据;当初始物流数据为物流日志数据时,服务器通过Flink根据预设的操作类型从二进制日志文件binlog(也就是,物流日志数据)中提取对应的IS对象简谱(javascript object notation,JSON)字符,并从JSON字符中提取目标操作数据,预设的操作类型包括写入类型、修改类型和删除类型。进一步地,服务器还可以定时采集缓慢变化维度数据。然后,服务器对完整的语句片段、车辆位置信息、车辆运输信息、多个视频数据和目标操作数据进行数据过滤和数据修正处理,得到目标物流明细数据,并将目标物流明细数据存储至在分布式非关系型数据库MySQL中。
102、对目标物流明细数据进行聚合去重处理,得到压缩物流数据;
本实施例中,针对物流进出站实时录入的数据流,可能存在重复录入的情况,常规处理方法为存储至数据库之后,再进行去重处理,此处直接在进行入库之前,先对数据流进行去重,而且为保证数据流的去重效率,采用聚合去重的方法对数据流进行去重。其中,数据流包括业务员对快件进行扫描入库的一维码信息,车辆进出站信息,快件录单信息,物流预测信息等。
另外,在针对数据流的聚合去重处理,先将数据流中的每个数据划分为两个部分,一部分是每个数据的标识,另一部分是数据的具体参数;在第一步聚合中,先将每个数据的标识进行聚合处理,得到用于去重的键值,查询是否存在相同键值的数据,则可以实现对数据流的去重;在第二步聚合中,将键值中标识对应的每一个数据进行聚合,即可得到压缩物流数据并进行后续的存储和处理。
103、对压缩物流数据进行维度分析处理,得到多维度物流数据;
本实施例中,服务器从MySQL中提取压缩物流数据;服务器通过预设的实时流处理维度模型(例如,Flink-sink模型)按照预设的数据指标体系对压缩物流数据进行业务场景、维度、指标分析处理,得到多维度物流数据,多维度物流数据为结构化数据类型的多维指标数据,多维度物流数据为结构化数据类型的多维指标数据;服务器将多维度物流数据存储至预设的明细数据表中,预设的明细数据表与预设的业务场景相对应。
需要说明的是,通过预设的实时流处理维度模型为预先训练好的实时流数据处理模型。服务器按照预设的业务业务场景、预设的业务维度和预设的业务指标构建预设的数据指标体系,并将预设的数据指标体系存储至mysql镜像库中,以实现物流数据实时处理的及时性和一致性。预设的业务业务场景、预设的业务维度和预设的业务指标之间存在关联映射关系。
104、对多维度物流数据进行统计,得到实时物流数据表;
本实施例中,各预设的业务系统根据各自需求(也就是,应用报表生成请求)从消息队列中获取相关业务指标(也就是,预设的业务指标),形成实时物流数据表,实时物流数据表用于指示按照相关业务指标实现物流数据的实时分析监控。应用报表生成请求为终端根据实际业务需求设置并发送的访问请求。
具体的,服务器接收应用报表生成请求,对应用报表生成请求进行参数解析,得到已解析参数,服务器对已解析参数进行校验,得到校验结果,当校验结果为校验通过时,服务器从已解析参数中读取多个业务指标和多个物流数据统计字段,并通过多个业务指标匹配预设的数据库,得到各业务指标对应的目标业务场景;服务器基于各业务指标对应的目标业务场景从预设的业务场景维度关系表中查询与各业务指标相对应的目标业务维度;服务器按照目标业务维度从各业务场景对应的明细数据表中提取目标维度物流数据;服务器通过预设的聚合函数Doris对多个业务指标和目标维度物流数据进行聚合处理,得到指标扁平化的数据宽表,服务器基于多个物流数据统计字段对指标扁平化的数据宽表进行数据分析和统计处理,得到物流数据统计结果;服务器按照物流数据统计结果生成实时物流数据表,并将实时物流数据表存储至预设的文件目录中。各预设的业务系统具有各自对应的文件目录。
进一步地,服务器还可以采用离线作业实现聚合处理(例如,3-5分钟的离线跑批处理),避免实时应用实时物流数据表和明细数据表同步更新,由于时间差异导致实时物流数据表不一致的情况。
105、获取分拨中心的离线物流数据,并将离线物流数据加载至预设配置表,得到物流配置数据;
本实施例中,对于离线物流数据,可以通过Duplicate的数据模型进行存储,不需要设置主键,并且无需进行聚合,直接将离线物流数据加载到配置表中进行配置即可。
具体的,如果是Hive中的数据源,可以采用Broker Load的方式加载离线物流数据,如果是MySQL中的数据源,则可以采用ODBC的方式记载离线物流数据。另外,离线物流数据可以包括中心进出站的进出车频次、路由信息和行车路线等固定设置的数据。
本实施例中,通过预先设置好的配置表,获取离线物流数据进行初步划分,得到预置配置结构的物流配置信息,包括发车时间、清场频次、路由配置等;然后将物流配置信息写入离线数表,即可进一步对物流配置信息进行划分,得到物流指标信息,可以包括票件遗失、票件时效、落货状态、车辆进出站时间、出站预测时间和下一站进站时间等。
106、将物流配置数据分布式导入实时物流数据表,并通过实时物流数据表更新预置离线物流数据表。
本实施例中,通过异步方法,对物流配置数据进行导入,可以提升物流配置数据导入的效率和降低数据库的计算压力。通过一个分布式系统对物流配置数据进行组织,将不同的物流配置数据放入对应的存储队列中,将各类型的物流配置数据异步有序地导入预置实时物流数据表中,导入后,物流配置数据整理为物流明细数据。而且当物流配置数据导入实时物流数据表后,通过常规筛选逻辑,将实时物流数据表中的目标物流明细数据筛选出来,实时写入离线数表或者设定更新时间,比如每隔5分钟进行更新,即可得到新的物流指标信心。
具体的,分布式系统可以采用Kafka消息队列,通过订阅方式,将各类型的物流配置数据分配到对应的消息队列中,有序异步地处理每一个物流配置数据,将物流配置数据导入至实时物流数据表中,得到物流明细数据,提升实时物流数据表的导入效率。其中,物流明细数据可以包括卸车明细、装车明细、中心进出站明细、订单明细和明细预测信息等。
另外,数据实时数据表处于DWD(data warehouse detail,细节数据层)层,是数据流去重压缩之后,物流配置数据存储至数据库之前的隔离层,先对物流配置数据进行初步的整理,并未进行存储。
具体的,对于实时物流数据表中的物流明细数据,还进一步写入到离线数表中,对离线数表中的物流指标信息进行更新,离线数表中相比于实时录入的数据,还增加了车辆、录单、预测等相关信息,具有中心进出站当前业务需求的关键信息。
具体的,对于离线数表中原始的物流指标信息的生成,可以直接从结构化仓库数据工具中,比如MySQL或者Hive获取预先设置的物流进出的离线参数,通过一个配置表对离线参数进行整理,即可得到物流指标信息。
本发明实施例中,通过Apache Flink对获取的初始物流明细数据进行预处理,得到目标物流明细数据;对目标物流明细数据进行聚合,得到压缩物流数据;对压缩物流数据进行维度分析,得到多维度物流数据;对多维度物流数据进行统计,得到实时物流数据表;获取离线物流数据,并将离线物流数据加载至配置表,得到物流配置数据;将物流配置数据分布式导入实时物流数据表,并通过实时物流数据表更新离线物流数据表。本方案通过将物流数据实时更新至离线表,保证了数据的一致性,提高了针对物流进出站海量物流数据的处理效率低下的技术问题。
请参阅图2,本发明实施例中数据实时更新方法的第二个实施例包括:
201、获取初始物流明细数据,并将初始物流明细数据存储至消息队列;
本实施例中,服务器从预设的数据源中实时采集初始物流数据,并将初始物流数据存储至消息队列中。其中,预设的数据源用于提供快递公司扫描操作数据、车辆进出站记录数据、车辆全球定位系统GPS数据、监控视频流数据、组织架构员工信息等基础数据。初始物流数据包括物流扫描数据、物流车辆进出站数据、物流视频监控特征数据和物流日志数据,物流扫描数据、物流车辆进出站数据、物流视频监控特征数据和物流日志数据均为非结构化数据类型的物流数据。
进一步地,服务器接收终端实时上报的物流扫描数据和物流车辆进出站数据,物流扫描数据包括物流订单数据和物流配送数据,物流车辆进出站数据包括物流车辆位置数据、电子地磅称重数据和物流车辆签到数据;服务器通过预设的视频采集接口,按照根据各视频监控对应的网络连接地址和网络端口轮询采集高清视频流(也就是,监控视频流数据),并对高清视频流依次进行截取视频数据快照和提取视频特征,得到物流视频监控特征数据;服务器定时获取各类数据库的二进制日志文件binlog,并对binlog进行结构解析,得到物流日志数据。服务器在采集初始物流数据过程中,还分别清理预设的数据源中的异常数据。
202、通过大数据处理引擎Apache Flink对消息队列中的初始物流明细数据进行数据解析,得到已解析的物流明细数据;
本实施例中,大数据分析引擎可以为分布式流数据流引擎Flink,还可以为分布式流式处理框架storm,具体此处不做限定。可选的,服务器通过大数据分析引擎按照预设的数据格式对消息队列中的初始物流数据进行数据解析处理,得到已解析的物流明细数据,预设的数据格式可以为JS对象简谱(javascript object notation,JSON),还可以为其他数据格式,具体此处不做限定。例如,服务器通过Flink和java库函数,按照JSON数据格式将格式化的kafka-json字符串(也就是,初始物流数据)进行解析,得到已解析的物流明细数据。
203、基于预设过滤规则对已解析的物流明细数据进行过滤处理,得到目标物流明细数据,并对目标物流明细数据进行缓存处理;
本实施例中,服务器从预设的过滤规则信息中提取多个过滤条件字段,并按照多个过滤条件字段对已解析的物流数据进行过滤处理,得到不符合过滤规则的物流数据,预设的过滤规则信息预先存储在预设的内存数据库(例如远程字典服务MySQL等内存数据库)中,例如,服务器按照运单号、中心编码和用户手机号(也就是,多个过滤条件字段)对已解析的物流数据进行过滤处理,得到不符合过滤规则的物流数据,多个过滤条件字段还可以包括快件重量等字段,具体此处不做限定;服务器对不符合过滤规则的物流数据匹配对应的修正策略,并根据修正策略对不符合过滤规则的物流数据进行数据修正,得到目标物流数据,并对目标物流数据进行缓存处理。例如,不符合过滤规则的物流数据包括车辆位置信息偏离预设的配送轨迹信息时,服务器通过修正策略对车辆位置信息进行纠偏处理,得到目标物流数据,然后服务器将目标物流数据存储至预设的内存数据库中。
204、提取目标物流明细数据中的多个属性标识和属性标识对应的属性参数,并对各属性标识进行聚合处理,得到聚合标识;
本实施例中,提取出数据流中的属性标识和对应的属性参数,比如单号的属性标识和对应的属性参数包括发件人的姓名、地址、电话号码和收件人的姓名、地址、电话号码,以及快件类型、运费等。
205、基于聚合标识查询预置标识参照表,并根据查询的结果判断聚合标识是否在标识参照表中存在;
本实施例中,通过Redis将过往录入的标识信息记录为记录标识参照表,当聚合标识信息中以及在标识参照表中存在,则可以确定对应的数据以及存在,进行去重。
具体的,比如数据的标识信息包括:中心进出站ID1、装卸货月台ID2、处理业务员ID3、发车凭证ID4和单号ID5,则将各标识信息进行聚合,得到键值:ID1_ID2_ID3_ID4_ID5,判断是否已经存在相同的键值ID1_ID2_ID3_ID4_ID5,以确定是否有相同的数据。
206、若存在,则将聚合标识中对应的各属性参数剔除;
本实施例中,判断是否已经存在相同的键值ID1_ID2_ID3_ID4_ID5,以确定是否有相同的数据;然后针对ID1_ID2_ID3_ID4_ID5,将对应的中心进出站明细、装卸货月台信息、处理业务员的身份信息、发货凭证对应的货品装卸车信息、单号中的具体物流参数进行聚合。
207、若不存在,则将聚合标识中对应的各属性参数进行聚合处理,得到压缩物流数据;
本实施例中,将对应的中心进出站明细、装卸货月台信息、处理业务员的身份信息、发货凭证对应的货品装卸车信息、单号中的具体物流参数进行聚合,即可得到对应的压缩物流数据。
优选地,将数据流的聚合去重的执行过程构建成月台效率模型,在数据流进行写入前对数据流进行自动化去重;数据流可以采用Aggregate模型中的SUM聚合类型,借助Redis进行聚合去重,得到的压缩物流数据格式为Bitmap。
208、对压缩物流数据进行维度分析处理,得到多维度物流数据;
209、对多维度物流数据进行统计,得到实时物流数据表;
210、获取分拨中心的离线物流数据,并将离线物流数据加载至预设配置表,得到物流配置数据;
211、将物流配置数据分布式导入实时物流数据表,并通过实时物流数据表更新预置离线物流数据表。
本实施例中步骤208-211与第一实施例中的步骤103-106类似,此处不再赘述。
本发明实施例中,通过Apache Flink对获取的初始物流明细数据进行预处理,得到目标物流明细数据;对目标物流明细数据进行聚合,得到压缩物流数据;对压缩物流数据进行维度分析,得到多维度物流数据;对多维度物流数据进行统计,得到实时物流数据表;获取离线物流数据,并将离线物流数据加载至配置表,得到物流配置数据;将物流配置数据分布式导入实时物流数据表,并通过实时物流数据表更新离线物流数据表。本方案通过将物流数据实时更新至离线表,保证了数据的一致性,提高了针对物流进出站海量物流数据的处理效率低下的技术问题。
请参阅图3,本发明实施例中数据实时更新方法的第三个实施例包括:
301、获取初始物流明细数据,并通过大数据处理引擎Apache Flink对初始物流明细数据进行数据预处理,得到目标物流明细数据;
302、对目标物流明细数据进行聚合去重处理,得到压缩物流数据;
303、通过预设实时流处理维度模型按照预设的多个业务场景,对压缩物流数据进行拆分处理,得到多个业务场景物流数据;
本实施例中,服务器从MySQL中提取目标物流数据;服务器通过预设的实时流处理维度模型(例如,Flink-sink模型)按照预设的数据指标体系对目标物流数据进行业务场景、维度、指标分析处理,得到多维度物流数据,多维度物流数据为结构化数据类型的多维指标数据,多维度物流数据为结构化数据类型的多维指标数据;服务器将多维度物流数据存储至预设的明细数据表中,预设的明细数据表与预设的业务场景相对应。
预设的实时流处理维度模型为预先训练好的,对物流数据进行实时流式处理的模型,并能够实现实时物流数据的可伸缩、高吞吐量和容错流处理。例如,预设的实时流处理维度模型可以为快速计算引擎spark模型,也可以为实时计算框架sparkstreaming模型,具体此处不做限定。进一步地,服务器获取样本数据集,并按照预设比例对样本数据集划分为训练数据集和测试数据集,预设比例可以为6:4,也可以为5:5,具体此处不做限定;服务器基于训练数据集对预设的初始模型(例如,spark初始模型)进行模型训练,得到已训练模型(例如,已训练的spark模型);服务器根据测试数据集对已训练模型进行模型测试,得到测试结果,当测试结果为测试通过时,将已训练模型设置为预设的实时流处理维度模型。具体的,服务器根据测试结果确定已训练模型的准确率;若已训练模型的准确率大于或等于预置准确率阈值,则服务器确定测试结果为测试通过;若已训练模型的准确率小于预置准确率阈值,则服务器确定测试结果为测试未通过。例如,预置准确率阈值为0.935(也可以为93.5%),若已训练模型的准确率为0.944,则服务器确定测试结果为测试通过,若已训练模型的准确率为0.832,则服务器确定测试结果为测试未通过,服务器从测试数据集中提取测试失败的测试数据,并将测试失败的测试数据更新至训练数据集中,得到已更新的训练数据集,服务器通过已更新的训练数据集对已训练模型进行迭代优化,得到最终训练好的模型,并将最终训练好的模型设置为预设的实时流处理维度模型。
304、按照预设的指标维度对多个业务场景物流数据进行细粒度拆分,得到多维度物流数据,并将多维度物流数据存储至各业务场景对应的明细表中;
本实施例中,服务器通过预设的实时流处理维度模型按照预设的多个业务场景对目标物流数据进行拆分处理,得到多个业务场景物流数据,每个业务场景物流数据具有对应的业务场景标签,例如,物流基础数据业务场景对应的物流数据具有基础数据标签,车辆轨迹业务场景对应的物流数据具有车辆轨迹标签,物流监控业务场景具有物流监控标签,以及物流配送业务场景对应的物流数据具有物流配送标签;服务器按照预设的指标维度对多个业务场景物流数据进行细粒度拆分,得到多维度物流数据,服务器将多维度物流数据存储至各业务场景对应的明细数据表中,多维度物流数据为结构化数据类型的多维指标数据。其中,预设的指标维度用于指示预先按照各业务场景配置好的维度信息和指标信息。进一步地,服务器根据维度信息和指标信息对多个业务场景物流数据进行细粒度拆分,得到多维度物流数据,明细数据表的内容用于指示目标业务或者目标业务的子业务分类。
305、对多维度物流数据进行统计,得到实时物流数据表;
306、获取分拨中心的离线物流数据,并将离线物流数据加载至预设配置表,得到物流配置数据;
307、将物流配置数据分布式导入实时物流数据表,并通过实时物流数据表更新预置离线物流数据表。
本实施例中步骤301-302、305-307与第一实施例中的步骤101-102、104-106类似,此处不再赘述。
本发明实施例中,通过Apache Flink对获取的初始物流明细数据进行预处理,得到目标物流明细数据;对目标物流明细数据进行聚合,得到压缩物流数据;对压缩物流数据进行维度分析,得到多维度物流数据;对多维度物流数据进行统计,得到实时物流数据表;获取离线物流数据,并将离线物流数据加载至配置表,得到物流配置数据;将物流配置数据分布式导入实时物流数据表,并通过实时物流数据表更新离线物流数据表。本方案通过将物流数据实时更新至离线表,保证了数据的一致性,提高了针对物流进出站海量物流数据的处理效率低下的技术问题。
请参阅图4,本发明实施例中数据实时更新方法的第四个实施例包括:
401、获取初始物流明细数据,并通过大数据处理引擎Apache Flink对初始物流明细数据进行数据预处理,得到目标物流明细数据;
402、对目标物流明细数据进行聚合去重处理,得到压缩物流数据;
403、对压缩物流数据进行维度分析处理,得到多维度物流数据;
404、对报表生成请求进行参数解析,得到多个业务指标和多个物流数据统计字段,并分别对业务指标进行分析,确定各业务指标对应的目标业务场景;
本实施例中,应用报表生成请求为终端根据实际业务需求设置并发送的访问请求,例如,应用报表生成请求用于统计快递网点A的视频监控异常次数。可选的,服务器接收应用报表生成请求,对应用报表生成请求进行参数解析,得到多个业务指标和多个物流数据统计字段,并对多个业务指标进行分析,服务器确定各业务指标对应的目标业务场景。
405、基于目标业务场景,对目标业务场景对应的业务维度进行分析,得到与各业务指标相对应的目标业务维度;
本实施例中,服务器对多个业务指标进行相关性分析和归类处理,得到业务场景标签,服务器按照业务场景标签确定各业务指标对应的目标业务场景;服务器基于各业务指标对应的目标业务场景获取并分析目标业务场景对应的业务维度,得到与各业务指标相对应的目标业务维度。
406、按照目标业务维度从各业务场景对应的明细数据表中提取目标维度物流数据;
本实施例中,服务器按照目标业务维度从各业务场景对应的明细数据表中提取目标维度物流数据,目标维度物流数据包括维度字段和维值字段。
407、对业务指标和目标维度物流数据进行聚合处理,得到数据宽表,基于数据宽表和多个物流数据统计字段,得到实时物流数据,并根据实时物流数据生成实时物流数据表;
本实施例中,服务器对多个业务指标和目标维度物流数据进行聚合处理,得到指标扁平化的数据宽表,例如,服务器通过预设的聚合函数(例如Doris)对多个业务指标和目标维度物流数据进行聚合处理,避免各应用写入各自的数据,导致同一个指标数据在不同应用中存在不一致的情况,服务器基于指标扁平化的数据宽表和多个物流数据统计字段生成实时物流数据汇总报表,并将实时物流数据汇总报表存储至预设的文件目录中。服务器通过预设的实时流处理维度模型实时进行物流数据采集和分析,达到秒级监控和分析报告,极大地提高了物流数据的时效,满足物流业务对各种事件快速响应的数据支撑。
408、获取分拨中心的离线物流数据,并将离线物流数据加载至预设配置表,得到物流配置数据;
409、将物流配置数据分布式导入实时物流数据表,并通过实时物流数据表更新预置离线物流数据表。
本实施例中步骤401-403、408-409与第一实施例中的步骤101-103、105-106类似,此处不再赘述。
本发明实施例中,通过Apache Flink对获取的初始物流明细数据进行预处理,得到目标物流明细数据;对目标物流明细数据进行聚合,得到压缩物流数据;对压缩物流数据进行维度分析,得到多维度物流数据;对多维度物流数据进行统计,得到实时物流数据表;获取离线物流数据,并将离线物流数据加载至配置表,得到物流配置数据;将物流配置数据分布式导入实时物流数据表,并通过实时物流数据表更新离线物流数据表。本方案通过将物流数据实时更新至离线表,保证了数据的一致性,提高了针对物流进出站海量物流数据的处理效率低下的技术问题。
请参阅图5,本发明实施例中数据实时更新方法的第五个实施例包括:
501、获取初始物流明细数据,并通过大数据处理引擎Apache Flink对初始物流明细数据进行数据预处理,得到目标物流明细数据;
502、对目标物流明细数据进行聚合去重处理,得到压缩物流数据;
503、对压缩物流数据进行维度分析处理,得到多维度物流数据;
504、对多维度物流数据进行统计,得到实时物流数据表;
505、获取分拨中心的离线物流数据,并将离线物流数据加载至预设配置表,得到物流配置数据;
506、若预置异步方法为异步线程方式,则根据物流配置数据在预置分布式消息队列中的存储队列数量,从预置线程池中调用对应数量的线程各存储队列中;
本实施例中,分布式系统可以采用Kafka消息队列,通过订阅方式,将各类型的物流明细数据分配到对应的消息队列中,有序异步地处理每一个压缩物流数据,将物流明细数据导入至实时数据表中,得到物流明细数据,提升实时物流数据表的导入效率。其中,物流明细数据可以包括卸车明细、装车明细、中心进出站明细、订单明细和明细预测信息等。
另外,物流实时数据表处于DWD(data warehouse detail,细节数据层)层,是数据流去重压缩之后,压缩物流数据存储至数据库之前的隔离层,先对压缩物流数据进行初步的整理,并未进行存储。
具体的,对于实时物流数据表中的物流明细数据,还进一步写入到离线数表中,对离线数表中的物流指标信息进行更新,离线数表中相比于实时录入的数据,还增加了车辆、录单、预测等相关信息,具有中心进出站当前业务需求的关键信息。
其中,中心进出站的数据处理架构具体可以采用Doris架构,包括数据库存储工具、FE(前端节点)和BE(后端节点)三层,数据库存储工具可以包括Kafka、Hive、MySQL等,FE负责制定数据解析、生成、调度的查询计划,BE负责执行对应的查询计划,以及进行数据存储,FE和BE都具有可线性扩展性,可以根据需求进行拓展。
此处对物流配置数据的导入为BE层,其中,异步方法可以包括异步线程方式和异步请求方式,此处若为异步线程方式,则可以采用Uniq的数据模型,具体通过Routine Load的方式,直接将Kafka中各存储队列存储的压缩物流数据顺序导入实时物流数据表,可以对导入数据进行自定义监控和自动恢复。
507、根据线程的结构数据存储协议,分别将各存储队列中顺序存储的物流配置数据异步导入实时物流数据表中;
本实施例中,此处采用结构数据存储协议,比如MySQL协议,将实时物流数据表中所需的数据进行存储和分区。Routine Load(例行导入)通过结构数据存储协议,直接将压缩物流数据直接一一导入实时物流数据表中。通过MySQL协议提交例行导入作业,生成一个常驻线程,不间断的从数据源(如Kafka)中读取压缩物流数据,并通过MySQL协议中的SQL语法导入到实时物流数据表中。
508、通过实时物流数据表中的物流明细数据和离线物流数据表中的物流指标数据,计算分拨中心的效能指标;
本实施例中,实时物流数据表和离线数表中初步对物流明细数据和物流指标信息进行整理,此处进一步对物流明细数据和物流指标信息进行进一步的整合,即可得到衡量当前中心进出站效能的基础数据,即进出效率切片和进出状态信息。此处采用的物流明细数据和物流指标信息的格式为Bitmap,故不需要额外对数据进行group by。
其中,采用数据切片技术,将获取目标类型的物流明细数据均匀分布到不同的计算节点上,通过预先设置好的算法对物流明细数据进行计算,即可得到对应的进出效率切片;进出效率切片与物流明细数据中物流的进出量和时间相关,不同物流进出类型的进出量与进出时间的比值即为气进出效率切片,将各物流进出类型进行分区处理,实现数据计算的横向扩展,有效降低各计算节点的访问负载,提高数据访问速度和并发量。比如卸车效率切片可以通过卸载车辆的数量和卸车所用时间的比值进行计算。.
509、根据效能指标,对分拨中心的操作效率进行监控。
本实施例中,进一步对进出效率切片和进出状态信息进行计算,得到最终的用于衡量中心进出站的效能指标,分为进出效率类型和进出汇总统计两种计算方式,其中,进出效率类型计算得到的效能指标用于衡量中心进出站的进出效率,进出汇总统计计算得到的效能指标用于衡量中心站的进出承载量。
具体的,根据预置算法的计算变量,选取需求的进出效率切片,对对应的效能指标进行计算;根据预置算法的统计变量,选取需求的进出状态信息,对对应的效能指标进行计算。比如比如选取订单效率切片计算物流挑拣的矩阵效率,选取票件遗失的数量、票件总数量,进行遗失统计。
具体的,效能指标可以包括矩阵效率、月台效率、员工效率和装卸车进度等,以及遗失统计、延误统计和落货统计等。该类型数据存储于ADS(Application Data Store)层,并采用物化视图的方式进行汇总,使得数据同步更新,并提升查询效率。
另外,还可以采用月台实时状态模型,选取当前中心进出站将物化视图中的各项效能指标映射到物流进出站的数字孪生主看板中,以供管理人员实时监控和调度。
本实施例中步骤501-505与第一实施例中的101-105类似,此处不再赘述。
在本发明实施例中,通过Apache Flink对获取的初始物流明细数据进行预处理,得到目标物流明细数据;对目标物流明细数据进行聚合,得到压缩物流数据;对压缩物流数据进行维度分析,得到多维度物流数据;对多维度物流数据进行统计,得到实时物流数据表;获取离线物流数据,并将离线物流数据加载至配置表,得到物流配置数据;将物流配置数据分布式导入实时物流数据表,并通过实时物流数据表更新离线物流数据表。本方案通过将物流数据实时更新至离线表,保证了数据的一致性,提高了针对物流进出站海量物流数据的处理效率低下的技术问题。
上面对本发明实施例中数据实时更新方法进行了描述,下面对本发明实施例中数据实时更新装置进行描述,请参阅图6,本发明实施例中数据实时更新装置的第一个实施例包括:
预处理模块601,用于获取初始物流明细数据,并通过大数据处理引擎ApacheFlink对所述初始物流明细数据进行数据预处理,得到目标物流明细数据;
聚合模块602,用于对所述目标物流明细数据进行聚合去重处理,得到压缩物流数据;
分析模块603,用于对所述压缩物流数据进行维度分析处理,得到多维度物流数据;
统计模块604,用于对所述多维度物流数据进行统计,得到实时物流数据表;
加载模块605,用于获取分拨中心的离线物流数据,并将所述离线物流数据加载至预设配置表,得到物流配置数据;
更新模块606,用于将所述物流配置数据分布式导入所述实时物流数据表,并通过所述实时物流数据表更新预置离线物流数据表。
本发明实施例中,通过Apache Flink对获取的初始物流明细数据进行预处理,得到目标物流明细数据;对目标物流明细数据进行聚合,得到压缩物流数据;对压缩物流数据进行维度分析,得到多维度物流数据;对多维度物流数据进行统计,得到实时物流数据表;获取离线物流数据,并将离线物流数据加载至配置表,得到物流配置数据;将物流配置数据分布式导入实时物流数据表,并通过实时物流数据表更新离线物流数据表。本方案通过将物流数据实时更新至离线表,保证了数据的一致性,提高了针对物流进出站海量物流数据的处理效率低下的技术问题。
请参阅图7,本发明实施例中数据实时更新装置的第二个实施例,该数据实时更新装置具体包括:
预处理模块601,用于获取初始物流明细数据,并通过大数据处理引擎ApacheFlink对所述初始物流明细数据进行数据预处理,得到目标物流明细数据;
聚合模块602,用于对所述目标物流明细数据进行聚合去重处理,得到压缩物流数据;
分析模块603,用于对所述压缩物流数据进行维度分析处理,得到多维度物流数据;
统计模块604,用于对所述多维度物流数据进行统计,得到实时物流数据表;
加载模块605,用于获取分拨中心的离线物流数据,并将所述离线物流数据加载至预设配置表,得到物流配置数据;
更新模块606,用于将所述物流配置数据分布式导入所述实时物流数据表,并通过所述实时物流数据表更新预置离线物流数据表。
本实施例中,所述预处理模块601具体用于:
获取初始物流明细数据,并将所述初始物流明细数据存储至消息队列;
通过大数据处理引擎Apache Flink对所述消息队列中的初始物流明细数据进行数据解析,得到已解析的物流明细数据;
基于预设过滤规则对所述已解析的物流明细数据进行过滤处理,得到目标物流明细数据,并对所述目标物流明细数据进行缓存处理。
本实施例中,所述聚合模块602具体用于:
提取所述目标物流明细数据中的多个属性标识和所述属性标识对应的属性参数,并对各所述属性标识进行聚合处理,得到聚合标识;
基于所述聚合标识查询预置标识参照表,并根据查询的结果判断所述聚合标识是否在所述标识参照表中存在;
若存在,则将所述聚合标识中对应的各属性参数剔除;
若不存在,则将所述聚合标识中对应的各属性参数进行聚合处理,得到压缩物流数据。
本实施例中,所述分析模块603具体用于:
通过预设实时流处理维度模型按照预设的多个业务场景,对所述压缩物流数据进行拆分处理,得到多个业务场景物流数据;
按照预设的指标维度对所述多个业务场景物流数据进行细粒度拆分,得到多维度物流数据,并将所述多维度物流数据存储至各业务场景对应的明细表中。
本实施例中,所述统计模块604包括:
确定单元6041,用于对报表生成请求进行参数解析,得到多个业务指标和多个物流数据统计字段,并分别对所述业务指标进行分析,确定各业务指标对应的目标业务场景;
分析单元6042,用于基于所述目标业务场景,对所述目标业务场景对应的业务维度进行分析,得到与各业务指标相对应的目标业务维度;
提取单元6043,用于按照所述目标业务维度从所述各业务场景对应的明细数据表中提取目标维度物流数据;
统计单元6044,用于对所述业务指标和所述目标维度物流数据进行聚合处理,得到数据宽表,基于所述数据宽表和所述多个物流数据统计字段,得到实时物流数据,并根据所述实时物流数据生成实时物流数据表。
本实施例中,所述更新模块606具体用于:
若预置异步方法为异步线程方式,则根据所述物流配置数据在预置分布式消息队列中的存储队列数量,从预置线程池中调用对应数量的线程各存储队列中;
根据所述线程的结构数据存储协议,分别将各所述存储队列中顺序存储的物流配置数据异步导入所述实时物流数据表中。
本实施例中,所述数据实时更新装置还包括:
计算模块607,用于通过所述实时物流数据表中的物流明细数据和所述离线物流数据表中的物流指标数据,计算所述分拨中心的效能指标;
监控模块608,用于根据所述效能指标,对所述分拨中心的操作效率进行监控。
本发明实施例中,通过Apache Flink对获取的初始物流明细数据进行预处理,得到目标物流明细数据;对目标物流明细数据进行聚合,得到压缩物流数据;对压缩物流数据进行维度分析,得到多维度物流数据;对多维度物流数据进行统计,得到实时物流数据表;获取离线物流数据,并将离线物流数据加载至配置表,得到物流配置数据;将物流配置数据分布式导入实时物流数据表,并通过实时物流数据表更新离线物流数据表。本方案通过将物流数据实时更新至离线表,保证了数据的一致性,提高了针对物流进出站海量物流数据的处理效率低下的技术问题。
上面图6和图7从模块化功能实体的角度对本发明实施例中的数据实时更新装置进行详细描述,下面从硬件处理的角度对本发明实施例中数据实时更新设备进行详细描述。
图8是本发明实施例提供的一种数据实时更新设备的结构示意图,该数据实时更新设备800可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(central processing units,CPU)810(例如,一个或一个以上处理器)和存储器820,一个或一个以上存储应用程序833或数据832的存储介质830(例如一个或一个以上海量存储设备)。其中,存储器820和存储介质830可以是短暂存储或持久存储。存储在存储介质830的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对数据实时更新设备800中的一系列指令操作。更进一步地,处理器810可以设置为与存储介质830通信,在数据实时更新设备800上执行存储介质830中的一系列指令操作,以实现上述各方法实施例提供的数据实时更新方法的步骤。
数据实时更新设备800还可以包括一个或一个以上电源840,一个或一个以上有线或无线网络接口850,一个或一个以上输入输出接口860,和/或,一个或一个以上操作系统831,例如Windows Serve,Mac OS X,Unix,Linux,FreeBSD等等。本领域技术人员可以理解,图8示出的数据实时更新设备结构并不构成对本申请提供的数据实时更新设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
本发明还提供一种计算机可读存储介质,该计算机可读存储介质可以为非易失性计算机可读存储介质,该计算机可读存储介质也可以为易失性计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令在计算机上运行时,使得计算机执行上述数据实时更新方法的步骤。
所述领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种数据实时更新方法,其特征在于,所述数据实时更新方法包括:
获取初始物流明细数据,并通过大数据处理引擎Apache Flink对所述初始物流明细数据进行数据预处理,得到目标物流明细数据;
对所述目标物流明细数据进行聚合去重处理,得到压缩物流数据;
对所述压缩物流数据进行维度分析处理,得到多维度物流数据;
对所述多维度物流数据进行统计,得到实时物流数据表;
获取分拨中心的离线物流数据,并将所述离线物流数据加载至预设配置表,得到物流配置数据;
将所述物流配置数据分布式导入所述实时物流数据表,并通过所述实时物流数据表更新预置离线物流数据表。
2.根据权利要求1所述的数据实时更新方法,其特征在于,所述获取初始物流明细数据,并通过大数据处理引擎Apache Flink对所述初始物流明细数据进行数据预处理,得到目标物流明细数据包括:
获取初始物流明细数据,并将所述初始物流明细数据存储至消息队列;
通过大数据处理引擎Apache Flink对所述消息队列中的初始物流明细数据进行数据解析,得到已解析的物流明细数据;
基于预设过滤规则对所述已解析的物流明细数据进行过滤处理,得到目标物流明细数据,并对所述目标物流明细数据进行缓存处理。
3.根据权利要求1所述的数据实时更新方法,其特征在于,所述对所述目标物流明细数据进行聚合去重处理,得到压缩物流数据包括:
提取所述目标物流明细数据中的多个属性标识和所述属性标识对应的属性参数,并对各所述属性标识进行聚合处理,得到聚合标识;
基于所述聚合标识查询预置标识参照表,并根据查询的结果判断所述聚合标识是否在所述标识参照表中存在;
若存在,则将所述聚合标识中对应的各属性参数剔除;
若不存在,则将所述聚合标识中对应的各属性参数进行聚合处理,得到压缩物流数据。
4.根据权利要求3所述的数据实时更新方法,其特征在于,所述对所述压缩物流数据进行维度分析处理,得到多维度物流数据包括:
通过预设实时流处理维度模型按照预设的多个业务场景,对所述压缩物流数据进行拆分处理,得到多个业务场景物流数据;
按照预设的指标维度对所述多个业务场景物流数据进行细粒度拆分,得到多维度物流数据,并将所述多维度物流数据存储至各业务场景对应的明细表中。
5.根据权利要求1所述的数据实时更新方法,其特征在于,所述对所述多维度物流数据进行统计,得到实时物流数据表包括:
对报表生成请求进行参数解析,得到多个业务指标和多个物流数据统计字段,并分别对所述业务指标进行分析,确定各业务指标对应的目标业务场景;
基于所述目标业务场景,对所述目标业务场景对应的业务维度进行分析,得到与各业务指标相对应的目标业务维度;
按照所述目标业务维度从所述各业务场景对应的明细数据表中提取目标维度物流数据;
对所述业务指标和所述目标维度物流数据进行聚合处理,得到数据宽表,基于所述数据宽表和所述多个物流数据统计字段,得到实时物流数据,并根据所述实时物流数据生成实时物流数据表。
6.根据权利要求1所述的数据实时更新方法,其特征在于,所述将所述物流配置数据分布式导入所述实时物流数据表包括:
若预置异步方法为异步线程方式,则根据所述物流配置数据在预置分布式消息队列中的存储队列数量,从预置线程池中调用对应数量的线程各存储队列中;
根据所述线程的结构数据存储协议,分别将各所述存储队列中顺序存储的物流配置数据异步导入所述实时物流数据表中。
7.根据权利要求1-6中任一项所述的数据实时更新方法,其特征在于,在所述将所述物流配置数据分布式导入所述实时物流数据表,并通过所述实时物流数据表更新预置离线物流数据表之后,还包括:
通过所述实时物流数据表中的物流明细数据和所述离线物流数据表中的物流指标数据,计算所述分拨中心的效能指标;
根据所述效能指标,对所述分拨中心的操作效率进行监控。
8.一种数据实时更新装置,其特征在于,所述数据实时更新装置包括:
预处理模块,用于获取初始物流明细数据,并通过大数据处理引擎Apache Flink对所述初始物流明细数据进行数据预处理,得到目标物流明细数据;
聚合模块,用于对所述目标物流明细数据进行聚合去重处理,得到压缩物流数据;
分析模块,用于对所述压缩物流数据进行维度分析处理,得到多维度物流数据;
统计模块,用于对所述多维度物流数据进行统计,得到实时物流数据表;
加载模块,用于获取分拨中心的离线物流数据,并将所述离线物流数据加载至预设配置表,得到物流配置数据;
更新模块,用于将所述物流配置数据分布式导入所述实时物流数据表,并通过所述实时物流数据表更新预置离线物流数据表。
9.一种数据实时更新设备,其特征在于,所述数据实时更新设备包括:存储器和至少一个处理器,所述存储器中存储有指令,所述存储器和所述至少一个处理器通过线路互连;
所述至少一个处理器调用所述存储器中的所述指令,以使得所述数据实时更新设备执行如权利要求1-7中任一项所述的数据实时更新方法的各个步骤。
10.一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-7中任一项所述的数据实时更新方法的各个步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210277909.6A CN114936214A (zh) | 2022-03-21 | 2022-03-21 | 数据实时更新方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210277909.6A CN114936214A (zh) | 2022-03-21 | 2022-03-21 | 数据实时更新方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114936214A true CN114936214A (zh) | 2022-08-23 |
Family
ID=82862304
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210277909.6A Pending CN114936214A (zh) | 2022-03-21 | 2022-03-21 | 数据实时更新方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114936214A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116109223A (zh) * | 2023-04-11 | 2023-05-12 | 合肥新鸟科技有限公司 | 一种商家智能物流数据管理方法和系统 |
CN117235079A (zh) * | 2023-11-16 | 2023-12-15 | 中国人民财产保险股份有限公司 | 数据处理方法、装置及设备 |
CN117520408A (zh) * | 2023-11-01 | 2024-02-06 | 广州市玄武无线科技股份有限公司 | 一种用于doris的数据增量统计方法、装置、设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111651510A (zh) * | 2020-05-14 | 2020-09-11 | 拉扎斯网络科技(上海)有限公司 | 数据处理方法、装置、电子设备和计算机可读存储介质 |
CN113220756A (zh) * | 2021-03-25 | 2021-08-06 | 上海东普信息科技有限公司 | 物流数据实时处理方法、装置、设备及存储介质 |
CN113420028A (zh) * | 2021-06-25 | 2021-09-21 | 上海东普信息科技有限公司 | 物流进出站的效能监控方法、装置、设备及存储介质 |
-
2022
- 2022-03-21 CN CN202210277909.6A patent/CN114936214A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111651510A (zh) * | 2020-05-14 | 2020-09-11 | 拉扎斯网络科技(上海)有限公司 | 数据处理方法、装置、电子设备和计算机可读存储介质 |
CN113220756A (zh) * | 2021-03-25 | 2021-08-06 | 上海东普信息科技有限公司 | 物流数据实时处理方法、装置、设备及存储介质 |
CN113420028A (zh) * | 2021-06-25 | 2021-09-21 | 上海东普信息科技有限公司 | 物流进出站的效能监控方法、装置、设备及存储介质 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116109223A (zh) * | 2023-04-11 | 2023-05-12 | 合肥新鸟科技有限公司 | 一种商家智能物流数据管理方法和系统 |
CN117520408A (zh) * | 2023-11-01 | 2024-02-06 | 广州市玄武无线科技股份有限公司 | 一种用于doris的数据增量统计方法、装置、设备及存储介质 |
CN117235079A (zh) * | 2023-11-16 | 2023-12-15 | 中国人民财产保险股份有限公司 | 数据处理方法、装置及设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114936214A (zh) | 数据实时更新方法、装置、设备及存储介质 | |
CN113220756A (zh) | 物流数据实时处理方法、装置、设备及存储介质 | |
Ayhan et al. | Predictive analytics with aviation big data | |
CN111475509A (zh) | 一种基于大数据的用户画像和多维分析系统 | |
CN111858274B (zh) | 一种大数据评分系统稳定性监控方法 | |
CN109697456A (zh) | 业务分析方法、装置、设备及存储介质 | |
CN107808306A (zh) | 基于标签库的业务对象的切分方法、电子装置及存储介质 | |
CN106951360A (zh) | 数据统计完整度计算方法和系统 | |
CN109308290B (zh) | 一种基于cim的高效数据清洗转换方法 | |
CN111552885A (zh) | 实现自动化实时消息推送运营的系统及其方法 | |
CN113420028A (zh) | 物流进出站的效能监控方法、装置、设备及存储介质 | |
CN108108448B (zh) | 一种生成全国道路画像的方法及系统 | |
CN111339052A (zh) | 一种非结构化日志数据处理方法及装置 | |
CN116955853A (zh) | 订单签收时间预计查询方法、装置、设备及存储介质 | |
CN113095647A (zh) | 一种车辆审查系统 | |
CN113191708A (zh) | 物流配送监控方法、装置、设备及存储介质 | |
CN106779245B (zh) | 基于事件的民航需求预测方法和装置 | |
CN112214459A (zh) | 基于事件机制的资源处理流程日志收集系统 | |
CN116757591A (zh) | 一种已揽件包裹状态批量跟踪方法、装置、设备及存储介质 | |
CN116109219A (zh) | 一种物流异常事件的处理方法、装置和设备 | |
CN111782657B (zh) | 数据处理方法及装置 | |
CN114723516A (zh) | 基于成单数据的用户相似度计算方法及系统 | |
CN114781961A (zh) | 基于聚合模型的数据监控方法、装置、设备和存储介质 | |
CN114970972A (zh) | 基于大数据的智慧跑圈方法、装置、设备和存储介质 | |
CN105893599A (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 |