CN107590210A - 一种数据处理方法、装置、系统及计算机可读存储介质 - Google Patents
一种数据处理方法、装置、系统及计算机可读存储介质 Download PDFInfo
- Publication number
- CN107590210A CN107590210A CN201710744337.7A CN201710744337A CN107590210A CN 107590210 A CN107590210 A CN 107590210A CN 201710744337 A CN201710744337 A CN 201710744337A CN 107590210 A CN107590210 A CN 107590210A
- Authority
- CN
- China
- Prior art keywords
- data
- theme
- message
- threads
- 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
- 238000003672 processing method Methods 0.000 title abstract description 23
- 238000012545 processing Methods 0.000 claims abstract description 164
- 238000000034 method Methods 0.000 claims description 40
- 238000004590 computer program Methods 0.000 claims description 29
- 238000013507 mapping Methods 0.000 claims description 20
- 238000006243 chemical reaction Methods 0.000 claims description 18
- 238000012163 sequencing technique Methods 0.000 claims description 10
- 238000010586 diagram Methods 0.000 description 16
- 230000008569 process Effects 0.000 description 7
- 230000001360 synchronised effect Effects 0.000 description 6
- 239000000872 buffer Substances 0.000 description 4
- 239000000470 constituent Substances 0.000 description 4
- 238000012546 transfer Methods 0.000 description 4
- 238000004140 cleaning Methods 0.000 description 2
- 238000013075 data extraction Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 238000013501 data transformation Methods 0.000 description 1
- 235000019800 disodium phosphate Nutrition 0.000 description 1
- 238000005315 distribution function Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种数据处理方法,包括:根据第一主题,确定与第一主题对应的多个线程;利用所述多个线程,将采集的所述第一主题下的多个数据并行转换为消息;发布所述消息到中间件装置,以使所述中间件装置缓存所述消息;缓存的消息用于供第二数据处理装置获取并保存入库。本发明还同时公开了一种数据处理装置、数据处理系统以及计算机可读存储介质。
Description
技术领域
本发明涉及数据处理技术领域,尤其涉及一种数据处理方法、装置、系统及计算机可读存储介质。
背景技术
目前,采用数据提取、转换和加载(ETL,Extract-Transform-Load)工具将从不同数据源获取的数据保存到数据仓库中,其中,ETL工具包括Informatica、DataStage、Kettle等。ETL工具提供固有组件以完成数据抽取、数据清洗、数据转换以及数据加载过程,并采用批处理的方式将数据保存到数据仓库中。
但是,由于ETL工具需要定时调度数据抽取、数据清洗、数据转换以及数据加载等进程,并采用批处理的方式将数据保存到数据仓库中,因此,实时性较差。
因此,亟需找到一种可以将数据快速保存到数据库中的解决方案。
发明内容
有鉴于此,本发明实施例期望提供一种数据处理方法、装置、系统及计算机可读存储介质,能够快速将数据保存到数据库中。
本发明实施例的技术方案是这样实现的:
本发明实施例提供一种数据处理方法,所述方法包括:
根据第一主题,确定与第一主题对应的多个线程;
利用所述多个线程,将采集的所述第一主题下的多个数据并行转换为消息;
发布所述消息到中间件装置,以使所述中间件装置缓存所述消息;缓存的消息用于供第二数据处理装置获取并保存入库。
上述方案中,所述根据第一主题,确定与第一主题对应的多个线程之前,所述方法还包括:
根据采集方式与主题的预设对应关系,确定所述第一主题下的数据的采集方式;
相应地,利用确定的采集方式获取第一主题下的多个数据。
上述方案中,所述利用所述多个线程,将采集的所述第一主题下的多个数据并行转换为消息,包括:
将第一主题下的多个数据以行方式排序,得到N行数据;
从1到N行划分区间,得到M个区间;将M个区间内的数据分别分配给对应的线程;
由对应的线程将对应区间内的数据转换为消息;
其中,M、N为大于1的正整数。
本发明实施例还提供一种数据处理方法,所述方法包括:
从中间件装置获取缓存的消息;所述缓存的消息是第一数据处理装置利用多个线程将第一主题下的多个数据并行转换得到的;
根据所述消息中包含的数据的第一主题,确定与第一主题对应的多个线程;
利用所述多个线程,以及数据库的表结构,对所述消息中包含的与第一主题对应的多个数据的数据结构并行进行转换,得到转换后的数据;
将转换后的数据保存到所述数据库中。
上述方案中,获取消息的方式为实时获取方式。
上述方案中,所述利用所述多个线程,以及数据库的表结构,对所述消息中包含的与第一主题对应的多个数据的数据结构并行进行转换,得到转换后的数据,包括:
将所述消息中包含的与第一主题对应的多个数据以行方式排序,得到N行数据;
从1到N行划分区间,得到M个区间;将M个区间内的数据分别分配给对应的线程;
根据数据库的表结构,确定所述N行数据与表字段的映射关系;
根据所述映射关系,由对应的线程将对应区间内的数据的数据结构进行转换,得到转换后的数据;
其中,M、N为大于1的正整数。
本发明实施例提供一种数据处理装置,所述装置包括:
确定模块,用于根据第一主题,确定与第一主题对应的多个线程;
第一转换模块,用于利用所述多个线程,将采集的所述第一主题下的多个数据并行转换为消息;
发布模块,用于发布所述消息到中间件装置,以使所述中间件装置缓存所述消息;缓存的消息用于供第二数据处理装置实时获取并保存入库。
本发明实施例提供一种数据处理装置,所述装置包括:
获取模块,用于从中间件装置获取缓存的消息;所述缓存的消息是第一数据处理装置利用多个线程将第一主题下的多个数据并行转换后得到的;
第二转换模块,用于根据所述消息中包含的数据的第一主题,确定与第一主题对应的多个线程;利用所述多个线程,以及数据库的表结构,对所述消息中包含的与第一主题对应的多个数据的数据结构并行进行转换,得到转换后的数据;
保存模块,用于将转换后的数据保存到所述数据库中。
本发明实施例提供一种数据处理方法,所述方法包括:
第一数据处理装置根据第一主题,确定与第一主题对应的多个线程;利用所述多个线程,将采集的所述第一主题下的多个数据并行转换为消息;发布所述消息到中间件装置;
中间件装置对所述消息进行缓存,并按照先入先出原则,将缓存的消息发送给第二数据处理装置;
第二数据处理装置获取所述缓存的消息;根据所述消息中包含的数据的第一主题,确定与第一主题对应的多个线程;利用所述多个线程,以及数据库的表结构,对所述消息中包含的与第一主题对应的多个数据的数据结构并行进行转换,得到转换后的数据;并将转换后的数据保存到数据库中。
本发明实施例提供一种数据处理系统,所述系统包括:第一数据处理装置、第二数据处理装置、中间件装置;其中,
第一数据处理装置,用于根据第一主题,确定与第一主题对应的多个线程;利用所述多个线程,将采集的所述第一主题下的多个数据并行转换为消息;发布所述消息到中间件装置;
中间件装置,用于对所述消息进行缓存,并按照先入先出原则,将缓存的消息发送给第二数据处理装置;
第二数据处理装置,用于获取所述缓存的消息;根据所述消息中包含的数据的第一主题,确定与第一主题对应的多个线程;利用所述多个线程,以及数据库的表结构,对所述消息中包含的与第一主题对应的多个数据的数据结构并行进行转换,得到转换后的数据;并将转换后的数据保存到数据库中。
本发明实施例提供一种数据处理装置,所述装置包括第一处理器以及第一收发器;
所述第一处理器,用于根据第一主题,确定与第一主题对应的多个线程;利用所述多个线程,将采集的所述第一主题下的多个数据并行转换为消息;
所述第一收发器,用于发布所述消息到中间件装置,以使所述中间件装置缓存所述消息;缓存的消息用于供第二数据处理装置获取并保存入库。
本发明实施例提供一种数据处理装置,所述装置包括第二收发器以及第二处理器;
所述第二收发器,用于从中间件装置获取缓存的消息;所述缓存的消息是第一数据处理装置利用多个线程将第一主题下的多个数据并行转换得到的;
所述第二处理器,用于根据所述消息中包含的数据的第一主题,确定与第一主题对应的多个线程;利用所述多个线程,以及数据库的表结构,对所述消息中包含的与第一主题对应的多个数据的数据结构并行进行转换,得到转换后的数据;将转换后的数据保存到所述数据库中。
本发明实施例提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如图1所示的数据处理方法的步骤,或者实现如图2所示的数据处理方法的步骤。
本发明实施例提供一种数据处理装置,其特征在于,包括:存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序;
其中,所述处理器用于运行所述计算机程序时,执行如图1所示的数据处理方法的步骤。
本发明实施例提供一种数据处理装置,其特征在于,包括:存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序;
其中,所述处理器用于运行所述计算机程序时,执行如图2所示的数据处理方法的步骤。
本发明实施例提供的数据处理方法、装置、系统及计算机可读存储介质,根据第一主题,确定与第一主题对应的多个线程;利用所述多个线程,将采集的所述第一主题下的多个数据并行转换为消息;发布所述消息到中间件装置,以使所述中间件装置缓存所述消息;缓存的消息用于供第二数据处理装置获取并保存入库。在本发明实施例中,利用所述多个线程,将采集的所述第一主题下的多个数据并行转换为消息;发布所述消息到中间件装置;以使所述中间件装置缓存所述消息;缓存的消息用于供第二数据处理装置获取并保存入库。由于利用多个线程,将采集的第一主题下的多个数据并行转换为消息,因此,能够将所述消息快速发布到中间件装置以缓存所述消息,从而能够供第二数据处理装置获取缓存的消息并快速保存到数据库中。
附图说明
图1为本发明实施例数据处理方法的实现流程示意图一;
图2为本发明实施例数据处理方法的实现流程示意图二;
图3为本发明实施例数据处理方法的实现流程示意图三;
图4为本发明实施例二数据处理装置的组成结构示意图;
图5为本发明实施例三数据处理装置的组成结构示意图;
图6为本发明实施例四数据处理装置的组成结构示意图;
图7为本发明实施例五数据处理装置的组成结构示意图;
图8为本发明实施例六数据处理装置的组成结构示意图;
图9为本发明实施例八数据处理系统的组成结构示意图;
图10为本发明实施例第一数据处理装置的组成结构示意图;
图11为本发明实施例数据处理的具体实现流程示意图一;
图12为本发明实施例第二数据处理装置的组成结构示意图;
图13为本发明实施例数据处理的具体实现流程示意图二;
图14为本发明实施例数据处理系统的具体组成结构示意图。
具体实施方式
本发明实施例中,根据第一主题,确定与第一主题对应的多个线程;利用所述多个线程,将采集的所述第一主题下的多个数据并行转换为消息;发布所述消息到中间件装置,以使所述中间件装置缓存所述消息;缓存的消息用于供第二数据处理装置获取并保存入库。
为了能够更加详尽地了解本发明实施例的特点与技术内容,下面结合附图对本发明实施例的实现进行详细阐述,所附附图仅供参考说明之用,并非用来限定本发明。
实施例一
如图1所示,以第一数据处理装置侧为例详细说明数据处理方法,包括以下步骤:
步骤101:根据第一主题,确定与第一主题对应的多个线程。
这里,所述第一主题为当前处理数据的主题;所述第一主题是将当前处理数据进行综合、归类和分析确定的一个抽象概念。举例来说,假设当前处理数据包括:用户名、密码、性别等等,则可以定义第一主题为用户主题;假设当前处理数据包括:访问百度网页产生的数据、访问谷歌网页产生的数据等等,则可以定义第一主题为访问主题。
所述第一主题包括但不限于用户主题、访问主题;所述多个线程为至少两个线程。
在一实施例中,所述根据第一主题,确定与第一主题对应的多个线程之前,所述方法还包括:
根据采集方式与主题的预设对应关系,确定所述第一主题下的数据的采集方式;
相应地,利用确定的采集方式获取第一主题下的多个数据。
实际应用时,将一种采集方式与一种主题进行对应,得到采集方式与主题的预设对应关系。举例来说,可以将文件传输协议(FTP,File Transfer Protocol)采集方式与用户主题对应,将数据库采集方式与访问主题对应。
所述采集方式包括但不限于FTP采集、文本文件采集、数据库采集、自定义采集。其中,FTP采集方式为从FTP服务器上采集数据,文本文件采集方式为从文本文件中采集数据,数据库采集方式为从数据库中采集数据。
步骤102:利用所述多个线程,将采集的所述第一主题下的多个数据并行转换为消息。
这里,所述利用所述多个线程,将采集的所述第一主题下的多个数据并行转换为消息,包括:
将第一主题下的多个数据以行方式排序,得到N行数据;
从1到N行划分区间,得到M个区间;将M个区间内的数据分别分配给对应的线程;
由对应的线程将对应区间内的数据转换为消息;
其中,M、N为大于1的正整数。
实际应用时,第一主题下的多个数据可以包含在一个数据文件中,将所述数据文件中第一主题下的多个数据转换为一行一行的数据,并按行数进行排序,得到N行数据。
这里,区间数M可以等于线程数,也可以大于线程数;当区间数等于线程数时,将一个区间内的数据分配给一个线程,每个区间包含的行数可以相等,也可以不相等;当区间数大于线程数时,可以将至少两个区间内的数据分配给一个线程。
实际应用时,由对应的线程将对应区间内的数据包含在消息的消息体中,再加上消息头,从而得到所述消息。
步骤103:发布所述消息到中间件装置,以使所述中间件装置缓存所述消息。
其中,缓存的消息用于供第二数据处理装置获取并保存入库。
这里,所述中间件是一类连接软件组件和应用的计算机软件,包括一组服务,所述服务用于运行在一台或多台机器上的多个软件通过网络进行交互。所述中间件可以是消息中间件,并利用消息传递机制进行数据传输。
这里,第一数据处理装置在发布所述消息到中间件装置之前,可以通过一个连接器或者输入输出通道,在第一数据处理装置和中间件装置之间建立连接;所述连接器包括但不限于KAFKA、REDIS。
实际应用时,第一数据处理装置可以利用JAVA异步IO的高并发特性实现发布消息到中间件装置,以使所述中间件装置缓存所述消息。一方面,可以实现第一数据处理装置持续地采集数据;另一方面,可以持续地供第二数据处理装置获取缓存的消息。
实际应用时,在第一数据处理装置上可以启动服务,所述服务包括但不限于数据发布服务。
如图2所示,以第二数据处理装置侧为例详细说明数据处理方法,包括以下步骤:
步骤201:从中间件装置获取缓存的消息。
其中,所述缓存的消息是第一数据处理装置利用多个线程将第一主题下的多个数据并行转换得到的。获取消息的方式可以是实时获取方式。
实际应用时,第二数据处理装置可以向中间件装置发送获取消息请求以获取缓存的消息;还可以是直接接收从中间件装置发送的缓存的消息。
其中,所述请求中至少携带第二数据处理装置的位置信息、待获取消息中包含的数据的主题。
步骤202:根据所述消息中包含的数据的第一主题,确定与第一主题对应的多个线程。
实际应用时,从所述消息的消息体中获取消息中包含的数据,所述根据消息中包含的数据的第一主题,确定与第一主题对应的多个线程,可参考步骤101。
步骤203:利用所述多个线程,以及数据库的表结构,对所述消息中包含的与第一主题对应的多个数据的数据结构并行进行转换,得到转换后的数据。
在一实施例中,所述利用所述多个线程,以及数据库的表结构,对所述消息中包含的与第一主题对应的多个数据的数据结构并行进行转换,得到转换后的数据,包括:
将所述消息中包含的与第一主题对应的多个数据以行方式排序,得到N行数据;
从1到N行划分区间,得到M个区间;将M个区间内的数据分别分配给对应的线程;
根据数据库的表结构,确定所述N行数据与表字段的映射关系;
根据所述映射关系,由对应的线程将对应区间内的数据的数据结构进行转换,得到转换后的数据;
其中,M、N为大于1的正整数。
其中,数据库的表结构包括:数据表的字段、类型、主键、外键、索引等属性。
这里,所述将所述消息中包含的与第一主题对应的多个数据以行方式排序,得到N行数据;从1到N行划分区间,得到M个区间;将M个区间内的数据分别分配给对应的线程;可参考步骤102。
实际应用时,还可以根据数据表与数据表的连接关系,确定所述N行数据与表字段的映射关系。
步骤204:将转换后的数据保存到所述数据库中。
其中,所述数据库包括但不限于层次式数据库、网络式数据库、关系式数据库以及分布式数据库。
实际应用时,在第二数据处理装置上可以启动服务,所述服务包括但不限于数据订阅服务。
如图3所示,以第一数据处理装置、第二数据处理装置、中间件装置进行交互为例详细说明数据处理方法,包括以下步骤:
步骤301:第一数据处理装置根据第一主题,确定与第一主题对应的多个线程;利用所述多个线程,将采集的所述第一主题下的多个数据并行转换为消息;发布所述消息到中间件装置。
这里,步骤301可参考图1描述的数据处理方法。
步骤302:中间件装置对所述消息进行缓存,并按照先入先出原则,将缓存的消息发送给第二数据处理装置。
其中,中间件装置可以是消息中间件装置,并利用消息传递机制进行数据传输。
实际应用时,中间件装置可以将所述消息按照消息包含的数据的主题缓存在多个与主题对应的消息队列中,也可以将所述消息按照消息包含的数据的主题缓存在多个与主题对应的线性表中。
这里,中间件装置可以在检测到缓存的消息时,将缓存的消息按照先入先出原则发送给第二数据处理装置;也可以是在接收到第二数据处理装置发送的获取消息请求后,将缓存的消息按照先入先出原则发送给第二数据处理装置。
在将缓存的消息发送给第二数据处理装置之前,中间件装置可以通过一个连接器和第二数据处理装置进行连接;所述连接器包括但不限于KAFKA、REDIS。
步骤303:第二数据处理装置获取所述缓存的消息;根据所述消息中包含的数据的第一主题,确定与第一主题对应的多个线程;利用所述多个线程,以及数据库的表结构,对所述消息中包含的与第一主题对应的多个数据的数据结构并行进行转换,得到转换后的数据;并将转换后的数据保存到数据库中。
这里,步骤303可参考图2描述的数据处理方法。
本发明实施例提供的方法,根据第一主题,确定与第一主题对应的多个线程;利用所述多个线程,将采集的所述第一主题下的多个数据并行转换为消息;发布所述消息到中间件装置,以使所述中间件装置缓存所述消息;缓存的消息用于供第二数据处理装置获取并保存入库。由于,利用多个线程,将第一主题下的多个数据并行转换为消息,因此,可以实现快速发布所述消息到中间件装置,以使所述中间件装置缓存所述消息,增大了数据吞吐量。
本发明实施例提供的方法,从中间件装置获取缓存的消息;所述缓存的消息是第一数据处理装置利用多个线程将第一主题下的多个数据并行转换得到的;根据所述消息中包含的数据的第一主题,确定与第一主题对应的多个线程;利用所述多个线程,以及数据库的表结构,对所述消息中包含的与第一主题对应的多个数据的数据结构并行进行转换,得到转换后的数据;将转换后的数据保存到所述数据库中。由于利用多个线程,对所述消息中包含的与第一主题对应的多个数据的数据结构并行进行转换,得到转换后的数据,因此,能够将转换后的数据快速保存到数据库中,增大了数据吞吐量。
实施例二
为实现实施例一的方法,本实施例提供了一种数据处理装置,如图4所示,所述装置包括:确定模块41、第一转换模块42、发布模块43;其中,
确定模块41,用于根据第一主题,确定与第一主题对应的多个线程。
其中,所述第一主题为当前处理数据的主题;所述第一主题是将当前处理数据进行综合、归类和分析确定的一个抽象概念。所述第一主题包括但不限于用户主题、访问主题;所述多个线程为至少两个线程。
第一转换模块42,用于利用所述多个线程,将采集的所述第一主题下的多个数据并行转换为消息。
发布模块43,用于发布所述消息到中间件装置,以使所述中间件装置缓存所述消息;缓存的消息用于供第二数据处理装置实时获取并保存入库。
这里,在发布模块43将所述消息发布到中间件装置之前,可以通过一个连接器,在第一数据处理装置和中间件装置之间建立连接;所述连接器包括但不限于KAFKA、REDIS。
实际应用时,发布模块43可以利用JAVA异步IO的高并发特性实现发布消息到中间件装置,以使所述中间件装置缓存所述消息。
第一转换模块42,具体用于将第一主题下的多个数据以行方式排序,得到N行数据;从1到N行划分区间,得到M个区间;将M个区间内的数据分别分配给对应的线程;由对应的线程将对应区间内的数据转换为消息。其中,M、N为大于1的正整数。
这里,区间数M可以等于线程数,也可以大于线程数;当区间数等于线程数时,转换模块52将一个区间内的数据分配给一个线程,每个区间包含的行数可以相等,也可以不相等;当区间数大于线程数时,转换模块52可以将至少两个区间内的数据分配给一个线程。
在一实施例中,所述装置还包括:
采集模块,用于根据采集方式与主题的预设对应关系,确定所述第一主题下的数据的采集方式;并利用确定的采集方式获取第一主题下的多个数据。
需要说明的是:上述实施例提供的数据处理装置在进行数据处理时,仅以上述各程序模块的划分进行举例说明,实际应用中,可以根据需要而将上述处理分配由不同的程序模块完成,即将装置的内部结构划分成不同的程序模块,以完成以上描述的全部或者部分处理。另外,上述实施例提供的数据处理装置与数据处理方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
在实际应用中,采集模块由位于数据处理装置上的网络接口实现;确定模块41、第一转换模块42、发布模块43可由位于数据处理装置上的中央处理器(CPU,CentralProcessing Unit)、微处理器(MPU,Micro Processor Unit)、数字信号处理器(DSP,Digital Signal Processor)、或现场可编程门阵列(FPGA,Field Programmable GateArray)等实现。
实施例三
为实现实施例一的方法,本实施例还提供了一种数据处理装置,如图5所示,所述装置包括:获取模块51、第二转换模块52、保存模块53;其中,
获取模块51,用于从中间件装置获取缓存的消息。
其中,所述缓存的消息是第一数据处理装置利用多个线程将第一主题下的多个数据并行转换得到的;获取消息的方式可以是实时获取方式。
第二转换模块52,用于根据所述消息中包含的数据的第一主题,确定与第一主题对应的多个线程;利用所述多个线程,以及数据库的表结构,对所述消息中包含的与第一主题对应的多个数据的数据结构并行进行转换,得到转换后的数据。
其中,数据库的表结构包括:数据表的字段、类型、主键、外键、索引等属性。
保存模块53,用于将转换后的数据保存到所述数据库中。
其中,所述数据库包括但不限于层次式数据库、网络式数据库、关系式数据库以及分布式数据库。
第二转换模块52,具体用于将所述消息中包含的与第一主题对应的多个数据以行方式排序,得到N行数据;从1到N行划分区间,得到M个区间;将M个区间内的数据分别分配给对应的线程;根据数据库的表结构,确定所述N行数据与表字段的映射关系;根据所述映射关系,由对应的线程将对应区间内的数据的数据结构进行转换,得到转换后的数据。
实际应用时,第二转换模块52还可以根据数据表与数据表的连接关系,确定所述N行数据与表字段的映射关系。
需要说明的是:上述实施例提供的数据处理装置在进行数据处理时,仅以上述各程序模块的划分进行举例说明,实际应用中,可以根据需要而将上述处理分配由不同的程序模块完成,即将装置的内部结构划分成不同的程序模块,以完成以上描述的全部或者部分处理。另外,上述实施例提供的数据处理装置与数据处理方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
在实际应用中,获取模块51由位于数据处理装置上的网络接口实现;第二转换模块52、保存模块53可由位于数据处理装置上的CPU、MPU、DSP、FPGA等实现。
实施例四
本发明实施例提供一种数据处理装置,如图6所示,所述装置包括第一处理器61以及第一收发器62;
所述第一处理器61,用于根据第一主题,确定与第一主题对应的多个线程;利用所述多个线程,将采集的所述第一主题下的多个数据并行转换为消息。
所述所述第一主题为当前处理数据的主题;所述第一主题是将当前处理数据进行综合、归类和分析确定的一个抽象概念。第一主题包括但不限于用户主题、访问主题;所述多个线程为至少两个线程。
所述第一收发器62,用于发布所述消息到中间件装置,以使所述中间件装置缓存所述消息;缓存的消息用于供第二数据处理装置获取并保存入库。
所述第一处理器61,具体用于将第一主题下的多个数据以行方式排序,得到N行数据;从1到N行划分区间,得到M个区间;将M个区间内的数据分别分配给对应的线程;由对应的线程将对应区间内的数据转换为消息;其中,M、N为大于1的正整数。
这里,区间数M可以等于线程数,也可以大于线程数;当区间数等于线程数时,将一个区间内的数据分配给一个线程,每个区间包含的行数可以相等,也可以不相等;当区间数大于线程数时,可以将至少两个区间内的数据分配给一个线程。
所述第一收发器62,还用于根据采集方式与主题的预设对应关系,确定所述第一主题下的数据的采集方式;并利用确定的采集方式获取第一主题下的多个数据。
实施例五
本发明实施例提供一种数据处理装置,如图7所示,所述装置包括第二收发器71以及第二处理器72;
所述第二收发器71,用于从中间件装置获取缓存的消息。
其中,所述缓存的消息是第一数据处理装置利用多个线程将第一主题下的多个数据并行转换得到的。
所述第二处理器72,用于根据所述消息中包含的数据的第一主题,确定与第一主题对应的多个线程;利用所述多个线程,以及数据库的表结构,对所述消息中包含的与第一主题对应的多个数据的数据结构并行进行转换,得到转换后的数据;将转换后的数据保存到所述数据库中。
其中,数据库的表结构包括:数据表的字段、类型、主键、外键、索引等属性。所述数据库包括但不限于层次式数据库、网络式数据库、关系式数据库以及分布式数据库。
所述第二处理器72,具体用于将所述消息中包含的与第一主题对应的多个数据以行方式排序,得到N行数据;从1到N行划分区间,得到M个区间;将M个区间内的数据分别分配给对应的线程;根据数据库的表结构,确定所述N行数据与表字段的映射关系;根据所述映射关系,由对应的线程将对应区间内的数据的数据结构进行转换,得到转换后的数据。
实施例六
图8是本发明数据处理装置的结构示意图,图8所示的数据处理装置800包括:至少一个处理器801、存储器802、用户接口803、至少一个网络接口804。数据处理装置800中的各个组件通过总线系统805耦合在一起。可理解,总线系统805用于实现这些组件之间的连接通信。总线系统805除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图8中将各种总线都标为总线系统805。
其中,用户接口803可以包括显示器、键盘、鼠标、轨迹球、点击轮、按键、按钮、触感板或者触摸屏等。
可以理解,存储器802可以是易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(ROM,Read Only Memory)、可编程只读存储器(PROM,Programmable Read-Only Memory)、可擦除可编程只读存储器(EPROM,Erasable Programmable Read-Only Memory)、电可擦除可编程只读存储器(EEPROM,Electrically Erasable Programmable Read-Only Memory)、磁性随机存取存储器(FRAM,ferromagnetic random access memory)、快闪存储器(Flash Memory)、磁表面存储器、光盘、或只读光盘(CD-ROM,Compact Disc Read-Only Memory);磁表面存储器可以是磁盘存储器或磁带存储器。易失性存储器可以是随机存取存储器(RAM,Random AccessMemory),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(SRAM,Static Random Access Memory)、同步静态随机存取存储器(SSRAM,Synchronous Static Random Access Memory)、动态随机存取存储器(DRAM,Dynamic Random Access Memory)、同步动态随机存取存储器(SDRAM,SynchronousDynamic Random Access Memory)、双倍数据速率同步动态随机存取存储器(DDRSDRAM,Double Data Rate Synchronous Dynamic Random Access Memory)、增强型同步动态随机存取存储器(ESDRAM,Enhanced Synchronous Dynamic Random Access Memory)、同步连接动态随机存取存储器(SLDRAM,SyncLink Dynamic Random Access Memory)、直接内存总线随机存取存储器(DRRAM,Direct Rambus Random Access Memory)。本发明实施例描述的存储器802旨在包括但不限于这些和任意其它适合类型的存储器。
本发明实施例中的存储器802用于存储各种类型的数据以支持数据处理装置800的操作。这些数据的示例包括:用于在数据处理装置800上操作的任何计算机程序,如操作系统8021和应用程序8022;其中,操作系统8021包含各种系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务。应用程序8022可以包含各种应用程序,用于实现各种应用业务。实现本发明实施例方法的程序可以包含在应用程序8022中。
上述本发明实施例揭示的方法可以应用于处理器801中,或者由处理器801实现。处理器801可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器801中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器801可以是通用处理器、数字信号处理器,或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。处理器801可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本发明实施例所公开的方法的步骤,可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于存储介质中,该存储介质位于存储器802,处理器801读取存储器802中的信息,结合其硬件完成前述方法的步骤。
具体来说,本发明实施例还提供了一种数据处理装置,所述数据处理装置包括:存储器802、处理器801以及存储在存储器上并可在处理器上运行的计算机程序,
其中,所述处理器801用于运行所述计算机程序时,执行:
根据第一主题,确定与第一主题对应的多个线程;
利用所述多个线程,将采集的所述第一主题下的多个数据并行转换为消息;
发布所述消息到中间件装置,以使所述中间件装置缓存所述消息;缓存的消息用于供第二数据处理装置获取并保存入库。
在一实施例中,所述处理器801还用于运行所述计算机程序时,执行:
根据采集方式与主题的预设对应关系,确定所述第一主题下的数据的采集方式;
相应地,利用确定的采集方式获取第一主题下的多个数据。
在一实施例中,所述处理器801还用于运行所述计算机程序时,执行:
将第一主题下的多个数据以行方式排序,得到N行数据;
从1到N行划分区间,得到M个区间;将M个区间内的数据分别分配给对应的线程;
由对应的线程将对应区间内的数据转换为消息;
其中,M、N为大于1的正整数。
本发明实施例还提供了一种数据处理装置,所述数据处理装置包括:存储器802、处理器801以及存储在存储器上并可在处理器上运行的计算机程序,
其中,所述处理器801用于运行所述计算机程序时,执行:
从中间件装置获取缓存的消息;所述缓存的消息是第一数据处理装置利用多个线程将第一主题下的多个数据并行转换得到的;
根据所述消息中包含的数据的第一主题,确定与第一主题对应的多个线程;
利用所述多个线程,以及数据库的表结构,对所述消息中包含的与第一主题对应的多个数据的数据结构并行进行转换,得到转换后的数据;
将转换后的数据保存到所述数据库中。
在一实施例中,所述处理器801还用于运行所述计算机程序时,执行:
获取消息的方式为实时获取方式。
在一实施例中,所述处理器801还用于运行所述计算机程序时,执行:
将所述消息中包含的与第一主题对应的多个数据以行方式排序,得到N行数据;
从1到N行划分区间,得到M个区间;将M个区间内的数据分别分配给对应的线程;
根据数据库的表结构,确定所述N行数据与表字段的映射关系;
根据所述映射关系,由对应的线程将对应区间内的数据的数据结构进行转换,得到转换后的数据;
其中,M、N为大于1的正整数。
所述处理器801获取第一主题下的多个数据、缓存的消息时,需要通过网络接口804来实现。
在示例性实施例中,数据处理装置800可以被一个或多个应用专用集成电路(ASIC,Application Specific Integrated Circuit)、DSP、可编程逻辑器件(PLD,Programmable Logic Device)、复杂可编程逻辑器件(CPLD,Complex Programmable LogicDevice)、FPGA、通用处理器、控制器、微控制器(MCU,Micro Controller Unit)、微处理器(Microprocessor)、或其他电子元件实现,用于执行前述方法。
实施例七
本发明实施例提供一种计算机可读存储介质,例如包括计算机程序的存储器802,上述计算机程序可由数据处理装置800的处理器801执行,以完成前述方法所述步骤。计算机可读存储介质可以是FRAM、ROM、PROM、EPROM、EEPROM、Flash Memory、磁表面存储器、光盘、或CD-ROM等存储器。
具体地,本发明实施例提供的计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器运行时,执行:
根据第一主题,确定与第一主题对应的多个线程;
利用所述多个线程,将采集的所述第一主题下的多个数据并行转换为消息;
发布所述消息到中间件装置,以使所述中间件装置缓存所述消息;缓存的消息用于供第二数据处理装置获取并保存入库。
在一实施例中,所述计算机程序被处理器运行时,还执行:
根据采集方式与主题的预设对应关系,确定所述第一主题下的数据的采集方式;
相应地,利用确定的采集方式获取第一主题下的多个数据。
在一实施例中,所述计算机程序被处理器运行时,还执行:
将第一主题下的多个数据以行方式排序,得到N行数据;
从1到N行划分区间,得到M个区间;将M个区间内的数据分别分配给对应的线程;
由对应的线程将对应区间内的数据转换为消息;
其中,M、N为大于1的正整数。
本发明实施例提供的计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器运行时,执行:
从中间件装置获取缓存的消息;所述缓存的消息是第一数据处理装置利用多个线程将第一主题下的多个数据并行转换得到的;
根据所述消息中包含的数据的第一主题,确定与第一主题对应的多个线程;
利用所述多个线程,以及数据库的表结构,对所述消息中包含的与第一主题对应的多个数据的数据结构并行进行转换,得到转换后的数据;
将转换后的数据保存到所述数据库中。
在一实施例中,所述计算机程序被处理器运行时,还执行:
获取消息的方式为实时获取方式。
在一实施例中,所述计算机程序被处理器运行时,还执行:
将所述消息中包含的与第一主题对应的多个数据以行方式排序,得到N行数据;
从1到N行划分区间,得到M个区间;将M个区间内的数据分别分配给对应的线程;
根据数据库的表结构,确定所述N行数据与表字段的映射关系;
根据所述映射关系,由对应的线程将对应区间内的数据的数据结构进行转换,得到转换后的数据;
其中,M、N为大于1的正整数。
实施例八
本发明实施例提供一种数据处理系统,如图9所示,所述系统包括:第一数据处理装置91、中间件装置92、第二数据处理装置93;其中,
第一数据处理装置91,用于根据第一主题,确定与第一主题对应的多个线程;利用所述多个线程,将采集的所述第一主题下的多个数据并行转换为消息;发布所述消息到中间件装置。
中间件装置92,用于对所述消息进行缓存,并按照先入先出原则,将缓存的消息发送给第二数据处理装置。
第二数据处理装置93,用于获取所述缓存的消息;根据所述消息中包含的数据的第一主题,确定与第一主题对应的多个线程;利用所述多个线程,以及数据库的表结构,对所述消息中包含的与第一主题对应的多个数据的数据结构并行进行转换,得到转换后的数据;并将转换后的数据保存到数据库中。
这里,所述第一数据处理装置91的组成结构以及各组成部分的功能如图4所述;所述第二数据处理装置93的组成结构以及各组成部分的功能如图5所述。
下面以实现数据处理为具体实例详细说明本发明在实际应用中的实现过程及原理。
图10为第一数据处理装置的组成结构示意图,如图10所示,包括:解析器、数据采集器、服务处理器Service Handler、选择器、异步处理器Request Handler。图11为本发明实施例以第一主题为用户主题为例详细说明数据处理的具体实现流程示意图,具体实现过程,包括如下步骤:
步骤1101:数据采集器根据采集方式与主题的预设对应关系,确定所述用户主题下的数据的采集方式。
假设采集方式与主题的预设对应关系包括:自定义采集方式与用户主题对应,关系数据库采集方式与访问主题对应等等。
数据采集器包括FTP采集模块、文本文件采集模块、关系数据库采集模块、自定义采集模块等等,数据采集器根据采集方式与主题的预设对应关系,利用自定义采集模块从数据源如、网页中获取用户主题下的数据。
步骤1102:Service Handler获取采集的所述用户主题下的多个数据并以行方式排序,得到N行数据,并将所述N行数据发送给选择器。
所述Service Handler获取采集的所述第一主题下的多个数据并以行方式排序之前,解析器可以将数据采集器确定的采集方式通知给Service Handler。
所述解析器,用于解析应用核心分发的配置信息,如、数据采集器的选择,通道选择等信息,以及加载对应的采集模块并绑定通道。
步骤1103:选择器接收所述N行数据,将所述N行数据异步分发给多路RequestHandler。
选择器接收到所述N行数据后,从1到N行划分区间,得到M个区间;将M个区间内的数据分别分配给对应的Request Handler。
步骤1104:Request Handler将对应区间内的数据转换为消息。
所述Request Handler利用JAVA异步IO特性对区间内的数据进行异步转换处理。Request Handler将对应区间内的数据包含在消息体中,加上消息头,得到所述消息。
步骤1105:通过通道将所述消息发布到中间件装置,以使所述中间件装置缓存所述消息。
所述通道,用于在第一数据处理装置与中间件装置之间建立连接;所述通道还可以是通过JAVA异步IO实现的连接器。
这里,所述连接器是一个中间库代理抽象的实现,包括但不限于KAFKA和REDIS。
图12为第二数据处理装置的组成结构示意图,如图13所示,包括:解析器、服务处理器Service Handler、选择器、请求处理器Request Handler。图13为本发明实施例以第一主题为用户主题为例详细说明数据处理的具体实现流程示意图,具体实现过程,包括如下步骤:
步骤1301:Service Handler通过通道从中间件装置中获取缓存的消息,将消息中包含的用户主题下的多个数据以行方式排序,得到N行数据,并将所述N行数据发送给选择器。
所述通道,用于在中间件装置与第二数据处理装置之间建立连接;所述通道还可以是通过Java异步IO实现的连接器,包括但不限于KAFKA和REDIS。
第二数据处理装置可以将位置信息、待获取消息中包含的数据的主题携带在获取消息请求中,并向中间件装置发送所述请求,以获取缓存的消息。或者,当中间件装置向第二数据处理装置发送所述缓存的消息时,第二数据处理装置获取所述缓存的消息。
步骤1302:选择器接收消息中包含的用户主题下的所述N行数据,将所述N行数据异步分发给多路Request Handler。
选择器接收到消息中包含的用户主题下的所述N行数据后,从1到N行划分区间,得到M个区间;将M个区间内的数据分别分配给对应的Request Handler。
步骤1303:Request Handler将对应区间内的数据的数据结构进行转换,得到转换后的数据,并将转换后的数据保存到数据库中。
其中,所述数据库可以是层次式数据库、网络式数据库、关系式数据库以及分布式数据库中的任意一种。
所述Request Handler利用JAVA异步IO特性对区间内的数据的数据结构进行异步转换。所述Request Handler根据数据库的表结构,确定所述N行数据与表字段的映射关系;或者,根据数据库的表结构,确定所述N行数据与表结构中包含的其他属性的映射关系;或者,根据数据表与数据表的连接关系,确定所述N行数据与表字段的映射关系。并根据所述映射关系,将对应区间内的数据的数据结构进行转换,得到转换后的数据。
所述解析器,用于解析数据装载规则等信息,并将数据加载规则通知给所述Request Handler。所述Request Handler还可以根据所述数据加载规则将对应区间内的数据的数据结构进行转换,得到转换后的数据。
图14为数据处理系统的组成结构示意图,如图14所示,包括:第一数据处理装置91、中间件装置92、第二数据处理装置93、通道、应用核心;所述第一数据处理装置91可以启动数据发布服务,所述第二数据处理装置93可以启动数据订阅服务;所述数据处理系统采用发布、订阅模式实现响应式数据装载,并通过异步IO和开源中间件提升了系统的整体吞吐量,使得数据在第一数据处理装置和第二数据处理装置中无缓存,利用开源中间件保障了数据的完整性。
其中,应用核心,用于为数据发布服务和数据订阅服务提供服务注册及服务配置分发功能,实现服务集中化治理。所述服务注册,包括:发布服务或者订阅服务启动后会向应用核心进行注册,应用核心通过注册服务信息进行负载均衡及故障转移。所述服务配置分发,包括:应用核心提供超文本传输协议(HTTP,Hyper Text Transfer Protocol)协议接口、数据发布服务数据流向配置信息、数据订阅服务获取数据流向信息以及数据载入规则配置信息。
通道也可称为输入输出通道,用于将第一数据处理装置91和第二数据处理装置93灵活地连接到中间件装置。所述输入输出通道通过应用核心绑定到中间件装置实现外部代理连接,以接收第一数据处理装置发布的流式数据。其中,所述中间件可以是消息中间件,也可以其它类型的中间件。
第一数据处理装置91,用于采用事件驱动模式利用一个Service Handler和多个Request Handlers实现持续地发布消息到中间件装置92。具体地,Service Handler通过选择器将输入的请求(Event)多路复用的分发给相应的Request Handlers,也就是说,Service Handler获取采集的所述用户主题下的多个数据并以行方式排序,得到N行数据,并将所述N行数据发送给选择器;选择器接收到消息中包含的用户主题下的所述N行数据后,从1到N行划分区间,得到M个区间;将M个区间内的数据分别分配给对应的RequestHandler。Request Handler利用java异步IO的高并发特性,将对应区间内的数据转换为消息,并持续将所述消息快速发布到中间件装置92,以使所述中间件装置92缓存所述消息。
第二数据处理装置93,用于采用事件驱动模式利用一个Service Handler和多个Request Handlers实现持续地从中间件装置92中获取缓存的消息,并将所述消息中包含的数据保存到数据库中。具体地,Service Handler通过通道从中间件装置中获取缓存的消息,将消息中包含的用户主题下的多个数据以行方式排序,得到N行数据,并将所述N行数据发送给选择器;选择器接收到消息中包含的用户主题下的所述N行数据后,从1到N行划分区间,得到M个区间;将M个区间内的数据分别分配给对应的Request Handler;RequestHandler将对应区间内的数据的数据结构进行转换,得到转换后的数据,并将转换后的数据保存到数据库中。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
Claims (15)
1.一种数据处理方法,其特征在于,所述方法包括:
根据第一主题,确定与第一主题对应的多个线程;
利用所述多个线程,将采集的所述第一主题下的多个数据并行转换为消息;
发布所述消息到中间件装置,以使所述中间件装置缓存所述消息;缓存的消息用于供第二数据处理装置获取并保存入库。
2.根据权利要求1所述的方法,其特征在于,所述根据第一主题,确定与第一主题对应的多个线程之前,所述方法还包括:
根据采集方式与主题的预设对应关系,确定所述第一主题下的数据的采集方式;
相应地,利用确定的采集方式获取第一主题下的多个数据。
3.根据权利要求1所述的方法,其特征在于,所述利用所述多个线程,将采集的所述第一主题下的多个数据并行转换为消息,包括:
将第一主题下的多个数据以行方式排序,得到N行数据;
从1到N行划分区间,得到M个区间;将M个区间内的数据分别分配给对应的线程;
由对应的线程将对应区间内的数据转换为消息;
其中,M、N为大于1的正整数。
4.一种数据处理方法,其特征在于,所述方法包括:
从中间件装置获取缓存的消息;所述缓存的消息是第一数据处理装置利用多个线程将第一主题下的多个数据并行转换得到的;
根据所述消息中包含的数据的第一主题,确定与第一主题对应的多个线程;
利用所述多个线程,以及数据库的表结构,对所述消息中包含的与第一主题对应的多个数据的数据结构并行进行转换,得到转换后的数据;
将转换后的数据保存到所述数据库中。
5.根据权利要求4所述的方法,其特征在于,获取消息的方式为实时获取方式。
6.根据权利要求4所述的方法,其特征在于,所述利用所述多个线程,以及数据库的表结构,对所述消息中包含的与第一主题对应的多个数据的数据结构并行进行转换,得到转换后的数据,包括:
将所述消息中包含的与第一主题对应的多个数据以行方式排序,得到N行数据;
从1到N行划分区间,得到M个区间;将M个区间内的数据分别分配给对应的线程;
根据数据库的表结构,确定所述N行数据与表字段的映射关系;
根据所述映射关系,由对应的线程将对应区间内的数据的数据结构进行转换,得到转换后的数据;
其中,M、N为大于1的正整数。
7.一种数据处理装置,其特征在于,所述装置包括:
确定模块,用于根据第一主题,确定与第一主题对应的多个线程;
第一转换模块,用于利用所述多个线程,将采集的所述第一主题下的多个数据并行转换为消息;
发布模块,用于发布所述消息到中间件装置,以使所述中间件装置缓存所述消息;缓存的消息用于供第二数据处理装置实时获取并保存入库。
8.一种数据处理装置,其特征在于,所述装置包括:
获取模块,用于从中间件装置获取缓存的消息;所述缓存的消息是第一数据处理装置利用多个线程将第一主题下的多个数据并行转换后得到的;
第二转换模块,用于根据所述消息中包含的数据的第一主题,确定与第一主题对应的多个线程;利用所述多个线程,以及数据库的表结构,对所述消息中包含的与第一主题对应的多个数据的数据结构并行进行转换,得到转换后的数据;
保存模块,用于将转换后的数据保存到所述数据库中。
9.一种数据处理方法,其特征在于,所述方法包括:
第一数据处理装置根据第一主题,确定与第一主题对应的多个线程;利用所述多个线程,将采集的所述第一主题下的多个数据并行转换为消息;发布所述消息到中间件装置;
中间件装置对所述消息进行缓存,并按照先入先出原则,将缓存的消息发送给第二数据处理装置;
第二数据处理装置获取所述缓存的消息;根据所述消息中包含的数据的第一主题,确定与第一主题对应的多个线程;利用所述多个线程,以及数据库的表结构,对所述消息中包含的与第一主题对应的多个数据的数据结构并行进行转换,得到转换后的数据;并将转换后的数据保存到数据库中。
10.一种数据处理系统,其特征在于,所述系统包括:第一数据处理装置、第二数据处理装置、中间件装置;其中,
第一数据处理装置,用于根据第一主题,确定与第一主题对应的多个线程;利用所述多个线程,将采集的所述第一主题下的多个数据并行转换为消息;发布所述消息到中间件装置;
中间件装置,用于对所述消息进行缓存,并按照先入先出原则,将缓存的消息发送给第二数据处理装置;
第二数据处理装置,用于获取所述缓存的消息;根据所述消息中包含的数据的第一主题,确定与第一主题对应的多个线程;利用所述多个线程,以及数据库的表结构,对所述消息中包含的与第一主题对应的多个数据的数据结构并行进行转换,得到转换后的数据;并将转换后的数据保存到数据库中。
11.一种数据处理装置,其特征在于,所述装置包括第一处理器以及第一收发器;
所述第一处理器,用于根据第一主题,确定与第一主题对应的多个线程;利用所述多个线程,将采集的所述第一主题下的多个数据并行转换为消息;
所述第一收发器,用于发布所述消息到中间件装置,以使所述中间件装置缓存所述消息;缓存的消息用于供第二数据处理装置获取并保存入库。
12.一种数据处理装置,其特征在于,所述装置包括第二收发器以及第二处理器;
所述第二收发器,用于从中间件装置获取缓存的消息;所述缓存的消息是第一数据处理装置利用多个线程将第一主题下的多个数据并行转换得到的;
所述第二处理器,用于根据所述消息中包含的数据的第一主题,确定与第一主题对应的多个线程;利用所述多个线程,以及数据库的表结构,对所述消息中包含的与第一主题对应的多个数据的数据结构并行进行转换,得到转换后的数据;将转换后的数据保存到所述数据库中。
13.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至3任一项所述方法的步骤,或者实现权利要求4至6任一项所述方法的步骤。
14.一种数据处理装置,其特征在于,包括:存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序;
其中,所述处理器用于运行所述计算机程序时,执行权利要求1至3任一项所述方法的步骤。
15.一种数据处理装置,其特征在于,包括:存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序;
其中,所述处理器用于运行所述计算机程序时,执行权利要求4至6任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710744337.7A CN107590210A (zh) | 2017-08-25 | 2017-08-25 | 一种数据处理方法、装置、系统及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710744337.7A CN107590210A (zh) | 2017-08-25 | 2017-08-25 | 一种数据处理方法、装置、系统及计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107590210A true CN107590210A (zh) | 2018-01-16 |
Family
ID=61042670
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710744337.7A Pending CN107590210A (zh) | 2017-08-25 | 2017-08-25 | 一种数据处理方法、装置、系统及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107590210A (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108304267A (zh) * | 2018-01-31 | 2018-07-20 | 中科边缘智慧信息科技(苏州)有限公司 | 高可靠低资源开销的多源数据引接方法 |
CN109815082A (zh) * | 2018-12-15 | 2019-05-28 | 中国平安人寿保险股份有限公司 | Kafka主题监控方法、装置、电子设备及存储介质 |
CN109828961A (zh) * | 2018-12-17 | 2019-05-31 | 上海七印信息科技有限公司 | 一种文章发布高并发缓存方法 |
CN110941497A (zh) * | 2018-09-21 | 2020-03-31 | 马上消费金融股份有限公司 | 一种数据发送方法及装置 |
CN111510474A (zh) * | 2020-03-26 | 2020-08-07 | 中国平安人寿保险股份有限公司 | 基于消息中间件的数据传输方法及相关设备 |
CN112100414A (zh) * | 2020-09-11 | 2020-12-18 | 深圳力维智联技术有限公司 | 数据处理方法、装置、系统与计算机可读存储介质 |
CN112199206A (zh) * | 2020-08-28 | 2021-01-08 | 杭州数云信息技术有限公司 | 基于事件机制模板对实时流事件配置化处理方法及系统 |
CN112486707A (zh) * | 2020-12-14 | 2021-03-12 | 中国人民银行清算总中心 | 基于Redis的消息异步消费方法及装置 |
CN113220759A (zh) * | 2021-04-27 | 2021-08-06 | 深圳市云网万店科技有限公司 | 大数据存储服务共享方法、装置、计算机设备和存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102473109A (zh) * | 2009-07-23 | 2012-05-23 | 英派尔科技开发有限公司 | 利用批调度的线程调度 |
CN104156798A (zh) * | 2014-07-08 | 2014-11-19 | 四川中电启明星信息技术有限公司 | 企业权威源系统数据实时推送架构及方法 |
CN105472042A (zh) * | 2016-01-15 | 2016-04-06 | 中煤电气有限公司 | Web端控制的消息中间件系统及其数据传送方法 |
CN105978968A (zh) * | 2016-05-11 | 2016-09-28 | 山东合天智汇信息技术有限公司 | 一种海量数据的实时传输处理方法、服务器及处理系统 |
-
2017
- 2017-08-25 CN CN201710744337.7A patent/CN107590210A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102473109A (zh) * | 2009-07-23 | 2012-05-23 | 英派尔科技开发有限公司 | 利用批调度的线程调度 |
CN104156798A (zh) * | 2014-07-08 | 2014-11-19 | 四川中电启明星信息技术有限公司 | 企业权威源系统数据实时推送架构及方法 |
CN105472042A (zh) * | 2016-01-15 | 2016-04-06 | 中煤电气有限公司 | Web端控制的消息中间件系统及其数据传送方法 |
CN105978968A (zh) * | 2016-05-11 | 2016-09-28 | 山东合天智汇信息技术有限公司 | 一种海量数据的实时传输处理方法、服务器及处理系统 |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108304267B (zh) * | 2018-01-31 | 2022-03-22 | 中科边缘智慧信息科技(苏州)有限公司 | 高可靠低资源开销的多源数据引接方法 |
CN108304267A (zh) * | 2018-01-31 | 2018-07-20 | 中科边缘智慧信息科技(苏州)有限公司 | 高可靠低资源开销的多源数据引接方法 |
CN110941497A (zh) * | 2018-09-21 | 2020-03-31 | 马上消费金融股份有限公司 | 一种数据发送方法及装置 |
CN110941497B (zh) * | 2018-09-21 | 2022-05-24 | 马上消费金融股份有限公司 | 一种数据发送方法及装置 |
CN109815082A (zh) * | 2018-12-15 | 2019-05-28 | 中国平安人寿保险股份有限公司 | Kafka主题监控方法、装置、电子设备及存储介质 |
CN109828961A (zh) * | 2018-12-17 | 2019-05-31 | 上海七印信息科技有限公司 | 一种文章发布高并发缓存方法 |
CN109828961B (zh) * | 2018-12-17 | 2023-12-08 | 上海七印信息科技有限公司 | 一种文章发布高并发缓存方法 |
CN111510474A (zh) * | 2020-03-26 | 2020-08-07 | 中国平安人寿保险股份有限公司 | 基于消息中间件的数据传输方法及相关设备 |
CN111510474B (zh) * | 2020-03-26 | 2023-09-29 | 中国平安人寿保险股份有限公司 | 基于消息中间件的数据传输方法及相关设备 |
CN112199206A (zh) * | 2020-08-28 | 2021-01-08 | 杭州数云信息技术有限公司 | 基于事件机制模板对实时流事件配置化处理方法及系统 |
CN112199206B (zh) * | 2020-08-28 | 2023-12-26 | 杭州数云信息技术有限公司 | 基于事件机制模板对实时流事件配置化处理方法及系统 |
CN112100414A (zh) * | 2020-09-11 | 2020-12-18 | 深圳力维智联技术有限公司 | 数据处理方法、装置、系统与计算机可读存储介质 |
CN112100414B (zh) * | 2020-09-11 | 2024-02-23 | 深圳力维智联技术有限公司 | 数据处理方法、装置、系统与计算机可读存储介质 |
CN112486707A (zh) * | 2020-12-14 | 2021-03-12 | 中国人民银行清算总中心 | 基于Redis的消息异步消费方法及装置 |
CN112486707B (zh) * | 2020-12-14 | 2024-07-02 | 中国人民银行清算总中心 | 基于Redis的消息异步消费方法及装置 |
CN113220759A (zh) * | 2021-04-27 | 2021-08-06 | 深圳市云网万店科技有限公司 | 大数据存储服务共享方法、装置、计算机设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107590210A (zh) | 一种数据处理方法、装置、系统及计算机可读存储介质 | |
US10831562B2 (en) | Method and system for operating a data center by reducing an amount of data to be processed | |
CN110147398B (zh) | 一种数据处理方法、装置、介质和电子设备 | |
US7631034B1 (en) | Optimizing node selection when handling client requests for a distributed file system (DFS) based on a dynamically determined performance index | |
US20200026456A1 (en) | Optimization for real-time, parallel execution of models for extracting high-value information from data streams | |
CN109710615B (zh) | 数据库的访问管理方法、系统、电子设备和存储介质 | |
CN104125163B (zh) | 一种数据处理方法、装置及终端 | |
US20180248825A1 (en) | Selective distribution of messages in a scalable, real-time messaging system | |
US10698935B2 (en) | Optimization for real-time, parallel execution of models for extracting high-value information from data streams | |
WO2018156983A1 (en) | Managing publish-subscribe channels in an open data ecosystem | |
CN109033404B (zh) | 日志数据处理方法、装置和系统 | |
CN109063196A (zh) | 数据处理方法、装置、电子设备及计算机可读存储介质 | |
CN108573029B (zh) | 一种获取网络访问关系数据的方法、装置及存储介质 | |
US20180248977A1 (en) | Selective distribution of messages in a publish-subscribe system | |
CN112765152B (zh) | 用于合并数据表的方法和装置 | |
CN110959156A (zh) | 到数据库加速器的并行计算卸载 | |
US20180337840A1 (en) | System and method for testing filters for data streams in publisher-subscriber networks | |
CN114116842B (zh) | 多维医疗数据实时获取方法、装置、电子设备及存储介质 | |
US20170262508A1 (en) | Infrastructure management system having scalable storage architecture | |
US20230164088A1 (en) | Low Latency Queuing System | |
CN111985831A (zh) | 云计算资源的调度方法、装置、计算机设备及存储介质 | |
CN116996112B (zh) | 一种遥感卫星数据实时预处理方法 | |
CN112597173A (zh) | 一种分布式数据库集群系统对等处理系统及处理方法 | |
CN116383240A (zh) | 基于fpga多数据库加速查询方法、装置、设备及介质 | |
WO2017091774A1 (en) | Optimization for real-time, parallel execution of models for extracting high-value information from data streams |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180116 |