CN114201498A - 一种数据处理方法、装置、电子设备及可读存储介质 - Google Patents
一种数据处理方法、装置、电子设备及可读存储介质 Download PDFInfo
- Publication number
- CN114201498A CN114201498A CN202111574081.2A CN202111574081A CN114201498A CN 114201498 A CN114201498 A CN 114201498A CN 202111574081 A CN202111574081 A CN 202111574081A CN 114201498 A CN114201498 A CN 114201498A
- Authority
- CN
- China
- Prior art keywords
- data
- processing
- configuration
- data source
- data processing
- 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
- 238000003860 storage Methods 0.000 title claims abstract description 28
- 238000003672 processing method Methods 0.000 title claims abstract description 23
- 238000012545 processing Methods 0.000 claims abstract description 224
- 238000000034 method Methods 0.000 claims abstract description 43
- 230000008569 process Effects 0.000 claims abstract description 25
- 230000002776 aggregation Effects 0.000 claims abstract description 18
- 238000004220 aggregation Methods 0.000 claims abstract description 18
- 238000004458 analytical method Methods 0.000 claims abstract description 6
- 238000007621 cluster analysis Methods 0.000 claims description 14
- 230000000903 blocking effect Effects 0.000 claims description 8
- 238000004140 cleaning Methods 0.000 claims description 7
- 238000009826 distribution Methods 0.000 claims description 7
- 238000004422 calculation algorithm Methods 0.000 claims description 6
- 230000015556 catabolic process Effects 0.000 claims description 3
- 230000007704 transition Effects 0.000 claims 1
- 230000010354 integration Effects 0.000 abstract description 4
- 238000013523 data management Methods 0.000 description 6
- 238000013500 data storage Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 230000008676 import Effects 0.000 description 5
- 238000013475 authorization Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 4
- 238000006243 chemical reaction Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 238000012216 screening Methods 0.000 description 3
- 238000004590 computer program Methods 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012384 transportation and delivery Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
- 238000005406 washing 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/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/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/24—Querying
- G06F16/242—Query formulation
- G06F16/2433—Query languages
- G06F16/244—Grouping and aggregation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
- G06F18/232—Non-hierarchical techniques
- G06F18/2321—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
- G06F18/23213—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions with fixed number of clusters, e.g. K-means clustering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/31—Programming languages or programming paradigms
- G06F8/315—Object-oriented languages
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Databases & Information Systems (AREA)
- Evolutionary Computation (AREA)
- Evolutionary Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Quality & Reliability (AREA)
- Probability & Statistics with Applications (AREA)
- Computing Systems (AREA)
- Stored Programmes (AREA)
Abstract
本发明实施例提供了一种数据处理方法、装置、电子设备及可读存储介质,其中,所述方法包括:在接收到用户的第一输入的情况下,根据所述第一输入,配置数据源集,所述数据源集包括多个数据源;在接收到用户的第二输入的情况下,根据所述第二输入及所述数据源集中各所述数据源的库表,配置处理策略;根据所述处理策略,从各所述数据源获取原始数据集进行处理,以完成数据汇聚及存储。本发明实施例解决了传统的数据整合思路不便于对复杂异构数据源进行数据处理及分析的问题。
Description
技术领域
本发明涉及数据批量处理技术领域,特别是涉及一种基于Java的数据处理方法、装置、电子设备及可读存储介质备。
背景技术
在企业信息化建设过程中,由于各业务系统建设和实施数据管理系统的阶段性、技术性以及其它经济和人为因素等因素影响,企业积累了大量采用不同存储方式的业务数据,它们构成了企业的异构数据源。
传统的数据整合思路是建立企业数据中心,将数据从各个系统抽取过来进行集中,再统一提供数据服务。但是随着数据量急剧增加,特别是非结构化数据的增加,传统企业数据中心存在成本高、建模困难、数据搬迁困难、数据整合成本高、非结构化数据整合困难等问题,不便于对异构数据源进行数据处理及分析。
在面对复杂数据处理任务时,传统思路需要使用多线程进行数据处理,以提高数据数据处理效率。在对不同数据源、不同业务、不同类型的数据进行聚类区分,且要处理不同需求的不同业务时,不仅需要增加大量代码,也增加了系统运算压力,使得任务进度被严重拖慢。
发明内容
鉴于上述问题,提出了本发明以便提供解决上述问题或者至少部分地解决上述问题的一种基于Java的数据处理方法、装置、电子设备及可读存储介质。
第一方面,本发明实施例提供了一种基于Java的数据处理方法,所述方法包括:
在接收到用户的第一输入的情况下,根据所述第一输入,配置数据源集,所述数据源集包括多个数据源;
在接收到用户的第二输入的情况下,根据所述第二输入及所述数据源集中各所述数据源的库表,配置处理策略;
根据所述处理策略,从各所述数据源获取原始数据集进行处理,以完成数据汇聚及存储。
可选地,所述的方法中,根据所述第二输入及所述数据源集中各数据源的库表,配置处理策略,包括:
根据所述第二输入及所述数据源集中各所述数据源的库表,选择针对各所述数据源的数据服务类型、配置数据处理方式及数据处理层级配置;
其中,所述数据服务类型选自聚类分析处理和数据更新服务;
所述数据处理方式选自批处理、分时处理、实时处理和分配处理中的一种;
所述数据处理层级配置包括各数据处理层级的层级信息及分类条件。
可选地,所述的方法中,根据所述处理策略,从各所述数据源获取原始数据集进行处理,包括:
根据所述数据处理层级配置,处理各所述数据源,得到各层级的原始数据集及带标记的数据对象,所述标记用于区分数据服务类型及数据处理方式;
根据每个数据对象生成对应的子线程;
通过线程阻塞工具和各所述子线程,按各数据对象对应的数据服务类型及数据处理方式,对所述原始数据集进行数据汇聚及数据存储。
可选地,所述的方法中,数据处理层级配置为拆分类层级配置、合并类层级配置或转换清洗类层级配置;
所述拆分类层级配置为自定义类拆分层级配置或系统聚类分析配置;
所述系统聚类分析配置中的分类条件包括针对k_means算法进行聚类分析的分类数量。
可选地,所述的方法中,所述原始数据集的数据结构为LIST<LIST<POJO>>,数据对象POJO的数据结构为MAP<STRING,OBJECT>。
第二方面,本发明实施例提供了一种基于Java的数据处理装置,所述装置包括:
第一配置模块,用于在接收到用户的第一输入的情况下,根据所述第一输入,配置数据源集,所述数据源集包括多个数据源;
第二配置模块,用于在接收到用户的第二输入的情况下,根据所述第二输入及所述数据源集中各所述数据源的库表,配置处理策略;
处理模块,用于根据所述处理策略,从各所述数据源获取原始数据集进行处理,以完成数据汇聚及存储。
可选地,所述的装置中,所述第二配置模块,具体用于根据所述第二输入及所述数据源集中各所述数据源的库表,选择针对各数据源的数据服务类型、配置数据处理方式及数据处理层级配置;
其中,所述数据服务类型选自聚类分析处理和数据更新服务;
所述数据处理方式选自批处理、分时处理、实时处理和分配处理中的一种;
所述数据处理层级配置包括各数据处理层级的层级信息及分类条件。
可选地,所述的装置中,所述处理模块包括:
第一处理单元,用于根据所述数据处理层级配置,处理各所述数据源,得到各层级的原始数据集及带标记的数据对象,所述标记用于区分数据服务类型及数据处理方式;
子线程单元,用于根据每个数据对象生成对应的子线程;
第二处理单元,用于通过线程阻塞工具和各所述子线程,按各数据对象对应的数据服务类型及数据处理方式,对所述原始数据集进行数据汇聚,得到下一层级的原始数据集及带标记的数据对象;
第三处理单元,用于在根据所述数据处理层级配置,确定所述下一层级的原始数据集需要继续处理的情况下,继续执行根据每个数据对象生成对应的子线程的步骤;
第四处理单元,用于在根据所述数据处理层级配置,确定所述下一层级的数据集不需要继续处理的情况下,存储所述下一层级的原始数据集。
第三方面,本申请实施例提供了一种电子设备,该电子设备包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的程序或指令,所述程序或指令被所述处理器执行时实现如第一方面所述的方法的步骤。
第四方面,本申请实施例提供了一种可读存储介质,所述可读存储介质上存储程序或指令,所述程序或指令被处理器执行时实现如第一方面所述的方法的步骤。
第五方面,本申请实施例提供了一种芯片,所述芯片包括处理器和通信接口,所述通信接口和所述处理器耦合,所述处理器用于运行程序或指令,实现如第一方面所述的方法。
相对于在先技术,本发明实施例具有如下优点:
本发明实施例中,在接收到用户的第一输入的情况下,根据第一输入,配置数据源集,数据源集包括多个数据源;在接收到用户的第二输入的情况下,根据第二输入及数据源集中各数据源的库表,配置处理策略;根据处理策略,从各数据源获取原始数据集进行处理,以完成数据汇聚及存储。因为用户只需要简单地进行数据源集的配置及处理策略的配制,就可以实现异构多数据源的数据批量处理,可以通过新增处理策略的方式满足对数据清洗、数据加工、数据治理的需要进行服务添加,具有较高的拓展性和实用性,且在设置了数据源的库表的情况下能够自动创建表进行数据存储,对数据库的种类不做限制,使不同区域、不同系统、不同服务的数据能够更加便捷的使用和处理,提高了平台查询数据的效率以及数据的利用率,降低了数据管理成本。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了根据本发明的一种基于Java的数据处理方法实施例的步骤流程图;
图2示出了本发明实施例中数据源的创建流程示意图;
图3示出了本发明实施例中库表的创建流程示意图;
图4示出了本发明实施例中策略配置过程示意图;
图5示出了根据本发明实施例的执行原理图;
图6示出了根据本发明的一种基于Java的数据处理装置实施例的结构框图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
参照图1,示出了根据本发明的一种基于Java的数据处理方法实施例的步骤流程图,具体可以包括步骤101~步骤103。
本发明实施例应用于终端,终端可以为移动终端、非移动终端,如计算机、便携电脑等办公设备。
步骤101、在接收到用户的第一输入的情况下,根据所述第一输入,配置数据源集,所述数据源集包括多个数据源。
其中,第一输入为用户选择数据源的输入,也即系统提供用户选择所需接入的数据源的接口,用户可以通过该接口动态选择所需要接入的数据源,因而在接收到用户的第一输入时,说明需要将对应的数据源接入系统,因而将第一输入对应的各数据源集合配制在一起,形成上述数据源集。
其中,不同数据源的数据结构、库、表都不相同,可进行分组操作。本发明实施例对数据源不做限制,不同区域、不同系统、不同服务的数据均可以配置进入数据源集,但是系统需要内置多种数据库驱动来确保不同数据源的接入。
具体地,用户通过对数据源进行动态配置后将数据源接入系统。通过对每个数据源进行分组分类配置和管理,在配置过程中会检测数据源的接入情况,验证通过后接入系统,具体过程可参阅图2,示出了数据源的创建流程示意图。
如图2所示,先根据需要引入的数据源类型进行自定义或选择分组,然后配置数据源,再进行数据源匹配,最后进行数据源处理。
在配置数据源时,数据源的接入方式有两种。其中一种接入方式是通过IP、主机名、端口号、驱动、数据源账号密码进行远程接入,系统会进行验证以上信息是否可连接,确认可以找到目标,且远程测试通过后,进行数据源信息入库;另一种接入方式是通过手动创建数据源即当前服务器数据源,当前服务器数据源可以通过系统进行创建或者导入的方式入库。
上述数据源匹配过程,指的是系统会把已入库的数据源进统计,当有新的数据源进入,系统会校验该数据源是否已存在,若存在则展示已存在的数据源信息,其中,可以修改、替换或取消本次数据源接入操作。
上述数据源处理过程,指的是在上述操作完成后,系统默认进行数据源信息的完善,例如:记录操作人员、操作人员IP、操作时间、生成备份计划、生成数据源访问备忘录、生成数据源异常通知计划等附加处理服务。其中,针对生成备份计划,用户可自定义修改备份周期。
步骤102、在接收到用户的第二输入的情况下,根据所述第二输入及所述数据源集中各所述数据源的库表,配置处理策略。
其中,第二输入为用户为各数据源配制处理策略的操作,也即系统提供用户为各数据源配制处理策略的接口,用户可以通过该接口为各数据源配制处理策略,因而在接收到用户的第二输入时,说明需要对相应的数据源配制处理策略;而在对数据源配制处理策略时,需要获取各数据源的数据结构,因而需要引入数据源的库表,进而可以根据第二输入及各数据源的库表,配置对应的处理策略,上述处理策略规定了对各数据源中数据的处理方式。
其中,用户可以在系统中使用模板导入数据源的库表,并在使用模板导入需要进行筛选字段后,进行引入和校验,通过后引入动态的库表,最后进行授权处理,从而引入相应数据源的库表。另外,用户也可以选择通过手动新增的方式引入数据源的库表。
库表的创建流程如图3所示。其中,库表是指数据源对应的表,其包含了数据源存储模式的创建信息;使用模板引入库表时,模板是需要引入的数据存储结构文件,模板文件可支持txt、db、dbf、csv、html、xml、xls和xlsx、wk1、wq1、json、mdb或者accdb、odbc等格式;在系统页面选择模板文件导入,系统会解析模板文件,在页面展示包含的列,可手动筛选需要入库的字段,完成字段筛选后会再次校验表单是否有重复列、特殊字符列等,通过后入库,然后需要对表进行授权操作,授权是赋予用户的读写操作,保证数据安全,授权通过后即完成库表的引入。
步骤103、根据所述处理策略,从各所述数据源获取原始数据集进行处理,以完成数据汇聚及存储。
其中,因为上述处理策略规定了对各数据源中数据的处理方式,因而可以根据该处理策略从各数据源中筛选获取原始数据集,进而对各原始数据集进行数据归类汇聚及存储入库,完成数据处理。
本发明实施例中,因为用户只需要简单地进行数据源集的配置及处理策略的配制,就可以实现异构多数据源的数据批量处理,可以通过新增处理策略的方式满足对数据清洗、数据加工、数据治理的需要进行服务添加,具有较高的拓展性和实用性,且在设置了数据源的库表的情况下能够自动创建表进行数据存储,对数据库的种类不做限制,使不同区域、不同系统、不同服务的数据能够更加便捷的使用和处理,提高了平台查询数据的效率以及数据的利用率,降低了数据管理成本。
可选地,在一种实施方式中,上述步骤102具体包括步骤201。
步骤201、根据所述第二输入及所述数据源集中各所述数据源的库表,选择针对各所述数据源的数据服务类型、配置数据处理方式及数据处理层级配置;
其中,所述数据服务类型选自聚类分析处理和数据更新服务;所述数据处理方式选自批处理、分时处理、实时处理和分配处理中的一种;所述数据处理层级配置包括各数据处理层级的层级信息及分类条件。
本实施方式中,通过配置本次执行的服务的各个数据源服务类型和数据处理方式及数据处理层级配置,实现策略的动态配置,使得整个服务更加灵活,预留服务类型二次开发接口,可应对业务进行拓展,具有高拓展性。
其中,服务类型可以选自聚类分析处理和数据更新服务,也即通过新增策略的方式配置本次执行的处理策略,也可以选择已有的处理策略进行适应性更新配置本次执行的处理策略。本发明实施例中,预留了如数据加工、数据清洗等自定义的服务类型接口,可以自行选择服务类型,使得不同种类数据和异构多数据源可以动态配置策略进行数据处理。
其中,数据处理方式上,可以选择批处理、分时处理、实时处理、分配处理中的任意一种。
其中,数据处理层级配置指的是将对数据源的数据处理划分为多个层级进行分类、汇聚的具体配置,其中,每个层级标记有层级信息及对应的分类条件,按照每个层级的分类条件,由低层级向高层级依次进行数据处理。
可选地,在一种实施方式中,数据处理层级配置为拆分类层级配置、合并类层级配置或转换清洗类层级配置。
拆分类层级配置即一拆多的分类条件层级配置。
可选地,在一种具体实施方式中,拆分类层级配置为自定义类拆分层级配置或系统聚类分析配置。
自定义类拆分层级配置为手动分类拆分层级配置,而系统聚类分析配置则为系统自动分类配置。
自定义类拆分层级配置需要添加层级信息,层级一指定数据源里指定库指定表指定字段含有检索条件g1的数据信息,层级二将会在得到的数据的基础上继续设置检索条件g2以检索需要的数据,层级三等以此类推,直至达到层级上限值,该层级上限值可以为十层。
其中,g1、g2表示待分类的分类条件,例如:层级一检索某表指定物流公司名称字段含有A的信息,层级二在层级一得到的数据上继续检索A公司快递里含有刀的数据。
系统聚类分析配置中的分类条件包括针对k_means算法进行聚类分析的分类数量。其中,采用k_means算法进行聚类分析,设置需要分类的数量即可,不需要设置层级。经过大数据量的操作,k-means算法会将聚类处理越来越精准。
合并类层级配置即多合一的分类条件层级配置,目标在于选择多数据源或者多库多表进行数据合并操作,可动态创建表以及字段,例如层级一设定检索条件g1,层级二在层级一检索的结果上可继续设置检索条件g2进行检索需要的数据,层级三等以此类推,直至达到层级上限值,该层级上限值可以为十层。
转换清洗类层级配置即数据源与目标数据源一对一的分类条件层级配置,可以选择数据更新和数据检索。其中,数据检索可设置按照手动分类进行分层操作配置数据处理层级配置,而数据更新包括可替换、固定修改、指定修改、置空、追加指定字段的内容等配置。根据转换清洗类层级配置,在数据获取后,进行数据内容指定操作,如替换、固定修改、指定修改、置空以及追加指定字段的内容进行处理,进而实现一对一的数据检索以及数据加工、更新、存储。
其中,策略配置过程如图4所示,先选定所需要配置的服务类型及处理方式,然后确定需要配置策略的具体数据源,再为各数据源的各数据处理层级设定处理参数,从而可以为各数据源生成用于标记各层级的数据对象的数据服务类型及数据处理方式的标记串。
可选地,在一种实施方式中,上述步骤103包括步骤301~步骤305。
步骤301、根据所述数据处理层级配置,处理各所述数据源,得到各层级的原始数据集及带标记的数据对象,所述标记用于区分数据服务类型及数据处理方式。
其中,因为处理策略包括针对各数据源的数据服务类型、配置数据处理方式及数据处理层级配置,而数据处理层级配置规定了各个数据处理层级的划分为多个层级进行分类、汇聚的具体配置,因而在每个数据处理层级,可以根据相应的数据处理层级配置对数据源的原始数据进行处理,获得经过策略分层级处理后相应层级的原始数据集,以及各原始数据集对应的数据对象,且该对象带有用于区分数据服务类型及数据处理方式的标记。
其中,每个原始数据集由几个数据处理任务则生成几个数据对象,也即单个原始数据集可以对应生成多个数据对象。
可选地,该原始数据集的数据结构为LIST<LIST<POJO>>,数据对象的数据结构为MAP<STRING,OBJECT>。
步骤302、根据每个数据对象生成对应的子线程。
其中,为每个数据对象生成相应的子线程,以用于对相应的原始数据集进行处理。
步骤303、通过线程阻塞工具和各所述子线程,按各数据对象对应的数据服务类型及数据处理方式,对所述原始数据集进行数据汇聚,得到下一层级的原始数据集及带标记的数据对象。
其中,通过预置阻塞工具阻塞线程,然后由各子线程分别执行当前数据处理层级的各数据处理任务,直至当前数据处理层级的全部数据处理任务完成后,由预置阻塞工具释放线程并进入下一数据处理层级,直至完成原始数据集的全部数据处理任务,上述处理过程避免了单条处理的频繁创建线程和频繁的开启、关闭数据库资源的问题,从而实现对异构多数据源的动态数据汇聚及存储。
步骤304、在根据所述数据处理层级配置,确定所述下一层级的原始数据集需要继续处理的情况下,继续执行根据每个数据对象生成对应的子线程的步骤。
步骤305、在根据所述数据处理层级配置,确定所述下一层级的原始数据集不需要继续处理的情况下,存储所述下一层级的原始数据集。
步骤304及305中,因为数据处理层级配置规定了各个数据处理层级的划分为多个层级进行分类、汇聚的具体配置,因而在每个数据处理层级,可以根据相应的数据处理层级配置对各原始数据集进行分析,判断其是否需要继续进行处理;若需要继续处理,则按原始数据集中每个数据对象生成子线程,并按数据对象对应的数据服务类型及数据处理方式,继续对所述原始数据集进行数据汇聚;而在确定当前层级的原始数据集不再需要进行汇聚处理时,则将该层级的原始数据集存储入库。
请参阅图5,示出了本发明实施例所提供的基于Java的数据处理方法的执行原理图。
图5所示,在步骤501中,先通过选择需要接入的数据源,实现数据源集配置,然后进入步骤502;
在步骤502中,根据各数据源数据处理需要,进行动态策略配置;
在步骤503中,根据各数据源的原始数据,根据处理策略中的数据处理层级配置处理后得到原始数据集LIST<LIST<POJO>>,并插入用于区分数据服务类型及数据处理方式的标记,然后进入步骤504;
在步骤504中,根据每个LIST<POJO>生成对应的子线程,然后进入步骤505;
在步骤505中,获取各数据源的原始数据集及其对应的数据标识,以根据数据标识进行不同处理;
在步骤506中,针对不同的原始数据集,根据其对应的标识配置相应的服务类型及处理方式;
在步骤507中,通过线程阻塞工具和各线程对原始数据集LIST<LIST<POJO>>进行数据处理及数据存储,然后释放线程至线程池中;
在步骤508中,系统自动获取服务器配置,以设置预设数量的核心线程;其中,为了保证重复利用服务器的算力,如果服务器是CPU密集型,则设置核心线程数量=服务器核心树+1;而如果服务器是IO密集型,则设置核心线程数据=CPU核心/(1-阻塞系数),阻塞系数为0.8~0.9;
在步骤509中,系统定时扫描并释放线程线程,并保留预设数量的核心线程;
在步骤510中,系统持续判断是否有闲置线程,无闲置线程则创建新的线程或子线程;其中,因为在执行步骤503及步骤504的过程中需要调用线程,因而系统还需执行步骤510。
综上所述,本发明实施例所提供的基于Java的数据处理方法,先进行动态配置异构源数据,得到了所有数据源配置后,进行源数据集数据处理,根据策略进行数据预聚类、区分和存储等任务。
参照图6,示出了根据本发明的一种基于Java的数据处理装置实施例的结构框图,该基于Java的数据处理装置60包括:
第一配置模块61,用于在接收到用户的第一输入的情况下,根据所述第一输入,配置数据源集,所述数据源集包括多个数据源;
第二配置模块62,用于在接收到用户的第二输入的情况下,根据所述第二输入及所述数据源集中各所述数据源的库表,配置处理策略;
处理模块63,用于根据所述处理策略,从各所述数据源获取原始数据集进行处理,以完成数据汇聚及存储。。
根据本发明的一种基于Java的数据处理装置,因为因为用户只需要简单地进行数据源集的配置及处理策略的配制,就可以实现异构多数据源的数据批量处理,可以通过新增处理策略的方式满足对数据清洗、数据加工、数据治理的需要进行服务添加,具有较高的拓展性和实用性,且在设置了数据源的库表的情况下能够自动创建表进行数据存储,对数据库的种类不做限制,使不同区域、不同系统、不同服务的数据能够更加便捷的使用和处理,提高了平台查询数据的效率以及数据的利用率,降低了数据管理成本。
可选地,所述的装置中,所述第二配置模块62,具体用于根据所述第二输入及所述数据源集中各所述数据源的库表,选择针对各数据源的数据服务类型、配置数据处理方式及数据处理层级配置;
其中,所述数据服务类型选自聚类分析处理和数据更新服务;
所述数据处理方式选自批处理、分时处理、实时处理和分配处理中的一种;
所述数据处理层级配置包括各数据处理层级的层级信息及分类条件。
可选地,所述的装置中,所述处理模块63包括:
第一处理单元,用于根据所述数据处理层级配置,处理各所述数据源,得到各层级的原始数据集及带标记的数据对象,所述标记用于区分数据服务类型及数据处理方式;
子线程单元,用于根据每个数据对象生成对应的子线程;
第二处理单元,用于通过线程阻塞工具和各所述子线程,按各数据对象对应的数据服务类型及数据处理方式,对所述原始数据集进行数据汇聚,得到下一层级的原始数据集及带标记的数据对象;
第三处理单元,用于在根据所述数据处理层级配置,确定所述下一层级的原始数据集需要继续处理的情况下,继续执行根据每个数据对象生成对应的子线程的步骤;
第四处理单元,用于在根据所述数据处理层级配置,确定所述下一层级的原始数据集不需要继续处理的情况下,存储所述下一层级的原始数据集。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
可选地,本申请实施例还提供一种电子设备,包括处理器,存储器,存储在存储器上并可在所述处理器上运行的程序或指令,该程序或指令被处理器执行时实现上述基于Java的数据处理方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
需要注意的是,本申请实施例中的电子设备包括上述所述的移动电子设备和非移动电子设备。
本申请实施例还提供一种可读存储介质,所述可读存储介质上存储有程序或指令,该程序或指令被处理器执行时实现上述基于Java的数据处理方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
其中,所述处理器为上述实施例中所述的电子设备中的处理器。所述可读存储介质,包括计算机可读存储介质,如计算机只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等。
本申请实施例另提供了一种芯片,所述芯片包括处理器和通信接口,所述通信接口和所述处理器耦合,所述处理器用于运行程序或指令,实现上述基于Java的数据处理方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
应理解,本申请实施例提到的芯片还可以称为系统级芯片、系统芯片、芯片系统或片上系统芯片等。
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以基于此示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的文件下载设备中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
Claims (10)
1.一种基于Java的数据处理方法,其特征在于,所述方法包括:
在接收到用户的第一输入的情况下,根据所述第一输入,配置数据源集,所述数据源集包括多个数据源;
在接收到用户的第二输入的情况下,根据所述第二输入及所述数据源集中各所述数据源的库表,配置处理策略;
根据所述处理策略,从各所述数据源获取原始数据集进行处理,以完成数据汇聚及存储。
2.根据权利要求1所述的数据处理方法,其特征在于,根据所述第二输入及所述数据源集中各数据源的库表,配置处理策略,包括:
根据所述第二输入及所述数据源集中各所述数据源的库表,选择针对各所述数据源的数据服务类型、配置数据处理方式及数据处理层级配置;
其中,所述数据服务类型选自聚类分析处理和数据更新服务;
所述数据处理方式选自批处理、分时处理、实时处理和分配处理中的一种;
所述数据处理层级配置包括各数据处理层级的层级信息及分类条件。
3.根据权利要求2所述的数据处理方法,其特征在于,根据所述处理策略,从各所述数据源获取原始数据集进行处理,包括:
根据所述数据处理层级配置,处理各所述数据源,得到原始数据集及带标记的数据对象,所述标记用于区分数据服务类型及数据处理方式;
根据每个数据对象生成对应的子线程;
通过线程阻塞工具和各所述子线程,按各数据对象对应的数据服务类型及数据处理方式,对所述原始数据集进行数据汇聚,得到下一层级的原始数据集及带标记的数据对象;
在根据所述数据处理层级配置,确定所述下一层级的原始数据集需要继续处理的情况下,继续执行根据每个数据对象生成对应的子线程的步骤;
在根据所述数据处理层级配置,确定所述下一层级的原始数据集不需要继续处理的情况下,存储所述下一层级的原始数据集。
4.根据权利要求2所述的数据处理方法,其特征在于,数据处理层级配置为拆分类层级配置、合并类层级配置或转换清洗类层级配置;
所述拆分类层级配置为自定义类拆分层级配置或系统聚类分析配置;
所述系统聚类分析配置中的分类条件包括针对k_means算法进行聚类分析的分类数量。
5.根据权利要求3所述的数据处理方法,其特征在于,所述原始数据集的数据结构为LIST<LIST<POJO>>,数据对象POJO的数据结构为MAP<STRING,OBJECT>。
6.一种基于Java的数据处理装置,其特征在于,所述装置包括:
第一配置模块,用于在接收到用户的第一输入的情况下,根据所述第一输入,配置数据源集,所述数据源集包括多个数据源;
第二配置模块,用于在接收到用户的第二输入的情况下,根据所述第二输入及所述数据源集中各所述数据源的库表,配置处理策略;
处理模块,用于根据所述处理策略,从各所述数据源获取原始数据集进行处理,以完成数据汇聚及存储。
7.根据权利要求6所述的装置,其特征在于,所述第二配置模块,具体用于根据所述第二输入及所述数据源集中各所述数据源的库表,选择针对各数据源的数据服务类型、配置数据处理方式及数据处理层级配置;
其中,所述数据服务类型选自聚类分析处理和数据更新服务;
所述数据处理方式选自批处理、分时处理、实时处理和分配处理中的一种;
所述数据处理层级配置包括各数据处理层级的层级信息及分类条件。
8.根据权利要求7所述的装置,其特征在于,所述处理模块包括:
第一处理单元,用于根据所述数据处理层级配置,处理各所述数据源,得到各层级的原始数据集及带标记的数据对象,所述标记用于区分数据服务类型及数据处理方式;
子线程单元,用于根据每个数据对象生成对应的子线程;
第二处理单元,用于通过线程阻塞工具和各所述子线程,按各数据对象对应的数据服务类型及数据处理方式,对所述原始数据集进行数据汇聚,得到下一层级的原始数据集及带标记的数据对象;
第三处理单元,用于在根据所述数据处理层级配置,确定所述下一层级的原始数据集需要继续处理的情况下,继续执行根据每个数据对象生成对应的子线程的步骤;
第四处理单元,用于在根据所述数据处理层级配置,确定所述下一层级的原始数据集不需要继续处理的情况下,存储所述下一层级的原始数据集。
9.一种电子设备,其特征在于,包括处理器,存储器及存储在所述存储器上并可在所述处理器上运行的程序或指令,所述程序或指令被所述处理器执行时实现如权利要求1~5任一所述的基于Java的数据处理方法的步骤。
10.一种可读存储介质,其特征在于,所述可读存储介质上存储程序或指令,所述程序或指令被处理器执行时实现如权利要求1~5任一所述的基于Java的数据处理方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111574081.2A CN114201498A (zh) | 2021-12-21 | 2021-12-21 | 一种数据处理方法、装置、电子设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111574081.2A CN114201498A (zh) | 2021-12-21 | 2021-12-21 | 一种数据处理方法、装置、电子设备及可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114201498A true CN114201498A (zh) | 2022-03-18 |
Family
ID=80655786
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111574081.2A Pending CN114201498A (zh) | 2021-12-21 | 2021-12-21 | 一种数据处理方法、装置、电子设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114201498A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114679446A (zh) * | 2022-03-28 | 2022-06-28 | 阿里云计算有限公司 | 数据处理方法、系统和数据处理设备 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060248058A1 (en) * | 2005-04-28 | 2006-11-02 | Feng Andrew A | Method, apparatus, and system for unifying heterogeneous data sources for access from online applications |
US20180157731A1 (en) * | 2016-12-05 | 2018-06-07 | Business Objects Software Ltd. | Hierarchy member selections in queries based on relational databases |
US10225162B1 (en) * | 2013-09-26 | 2019-03-05 | EMC IP Holding Company LLC | Methods and apparatus for array agnostic automated storage tiering |
CN111221815A (zh) * | 2019-11-07 | 2020-06-02 | 南京莱斯网信技术研究院有限公司 | 一种基于脚本的web服务分页数据采集系统 |
CN112307004A (zh) * | 2020-11-03 | 2021-02-02 | 平安普惠企业管理有限公司 | 数据治理方法、装置、设备及存储介质 |
CN112685070A (zh) * | 2020-12-30 | 2021-04-20 | 平安普惠企业管理有限公司 | 多线程多维度的数据处理方法、装置、设备及存储介质 |
-
2021
- 2021-12-21 CN CN202111574081.2A patent/CN114201498A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060248058A1 (en) * | 2005-04-28 | 2006-11-02 | Feng Andrew A | Method, apparatus, and system for unifying heterogeneous data sources for access from online applications |
US10225162B1 (en) * | 2013-09-26 | 2019-03-05 | EMC IP Holding Company LLC | Methods and apparatus for array agnostic automated storage tiering |
US20180157731A1 (en) * | 2016-12-05 | 2018-06-07 | Business Objects Software Ltd. | Hierarchy member selections in queries based on relational databases |
CN111221815A (zh) * | 2019-11-07 | 2020-06-02 | 南京莱斯网信技术研究院有限公司 | 一种基于脚本的web服务分页数据采集系统 |
CN112307004A (zh) * | 2020-11-03 | 2021-02-02 | 平安普惠企业管理有限公司 | 数据治理方法、装置、设备及存储介质 |
CN112685070A (zh) * | 2020-12-30 | 2021-04-20 | 平安普惠企业管理有限公司 | 多线程多维度的数据处理方法、装置、设备及存储介质 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114679446A (zh) * | 2022-03-28 | 2022-06-28 | 阿里云计算有限公司 | 数据处理方法、系统和数据处理设备 |
CN114679446B (zh) * | 2022-03-28 | 2024-06-11 | 阿里云计算有限公司 | 数据处理方法、系统和数据处理设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11941016B2 (en) | Using specified performance attributes to configure machine learning pipepline stages for an ETL job | |
CN107315776B (zh) | 一种基于云计算的数据管理系统 | |
US9960974B2 (en) | Dependency mapping among a system of servers, analytics and visualization thereof | |
US9772890B2 (en) | Sophisticated run-time system for graph processing | |
US8140514B2 (en) | Automatic classification of defects | |
US8782081B2 (en) | Query template definition and transformation | |
CN109409533B (zh) | 一种机器学习模型的生成方法、装置、设备及存储介质 | |
US20050278290A1 (en) | Systems, methods, and computer program products that automatically discover metadata objects and generate multidimensional models | |
CN103020158A (zh) | 一种报表创建方法、装置和系统 | |
CN104750776B (zh) | 使用元数据访问数据库平台中的信息内容 | |
US20110246913A1 (en) | Automated User Interface Generator | |
US20130080584A1 (en) | Predictive field linking for data integration pipelines | |
US9141665B1 (en) | Optimizing search system resource usage and performance using multiple query processing systems | |
CN109918437A (zh) | 分布式数据处理方法、装置及数据资产管理系统 | |
US20200151276A1 (en) | Cognitive automation tool | |
JP2012113706A (ja) | データベース・クエリ最適化のためのコンピュータで実装される方法、コンピュータ・プログラム、およびデータ処理システム | |
CN113268502A (zh) | 一种用于提供信息的方法与设备 | |
Ramos-Gutiérrez et al. | Discovering configuration workflows from existing logs using process mining | |
CN114201498A (zh) | 一种数据处理方法、装置、电子设备及可读存储介质 | |
CN104933096B (zh) | 数据库的异常键识别方法、装置与数据系统 | |
WO2022156086A1 (zh) | 人机交互方法、装置、设备及存储介质 | |
JP2021500639A (ja) | 多段階パターン発見およびビジュアル分析推奨のための予測エンジン | |
KR102153259B1 (ko) | 데이터 도메인 추천 방법 및 추천된 도메인을 이용하여 통합 데이터 저장소 관리 시스템을 구축하는 방법 | |
CN112997172A (zh) | 针对数据资产的计算高效的有效标签确定 | |
US20190294534A1 (en) | Program usability performance classification |
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 |