CN103500185B - 一种基于多平台数据生成数据表的方法和系统 - Google Patents
一种基于多平台数据生成数据表的方法和系统 Download PDFInfo
- Publication number
- CN103500185B CN103500185B CN201310418742.1A CN201310418742A CN103500185B CN 103500185 B CN103500185 B CN 103500185B CN 201310418742 A CN201310418742 A CN 201310418742A CN 103500185 B CN103500185 B CN 103500185B
- Authority
- CN
- China
- Prior art keywords
- data
- platform
- tables
- record
- specified dimension
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims abstract description 49
- 238000003491 array Methods 0.000 claims 1
- 230000008569 process Effects 0.000 description 9
- 238000012545 processing Methods 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 241001269238 Data Species 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- PEDCQBHIVMGVHV-UHFFFAOYSA-N Glycerine Chemical compound OCC(O)CO PEDCQBHIVMGVHV-UHFFFAOYSA-N 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000001035 drying Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 230000009545 invasion Effects 0.000 description 1
- 230000033001 locomotion Effects 0.000 description 1
- 230000000306 recurrent effect Effects 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于多平台数据生成数据表的方法和系统,所述多平台包括第一平台和第二平台,所述方法包括:获取所述第一平台数据及第二平台数据;分别将所述第一平台数据及第二平台数据载入内存;判断所述内存中的第一平台数据与第二平台数据是否存在指定维度相同的数据记录;若是,则将所述第一平台数据与第二平台数据中各个指定维度相同的数据记录,分别合并成对应的一条数据表子项;若否,则分别将所述第一平台数据与第二平台数据处理成不同的数据表子项;依据所述数据表子项生成数据表。本发明可以提高数据库数据的安全性,降低了数据库的开销,节省了线上服务器资源。
Description
技术领域
本发明涉及数据处理技术领域,具体涉及一种基于多平台数据生成数据表的方法,以及一种基于多平台数据生成数据表的系统。
背景技术
报表是企业应用软件系统不可或缺的一部分,通过计算机自动或辅助生成各种业务报表,可以实现业务的规范化管理,极大提高了工作效率,加速了各行业信息化进程。
在报表数据处理的过程中,往往涉及两个报表的合并,例如两个支付平台的报表合并,其具体过程为:
首先,第一支付平台获得第二支付平台数据库主库的操作权限,将该月第一支付平台统计的交易数据插入第二支付平台主库的相应交易数据表中;
其次,报表系统从第二支付平台主库中分别取出该月第一支付平台的交易统计数据和第二支付平台交易统计数据,按照相同商户相同统计维度的数据合并成一条,不同则不合并的规则对两系统数据进行处理,将处理完成后的数据生成报表。
然而,发明人在实施上述两个支付平台的报表合并过程中,发现存在以下一些不足:
(1)第一支付平台获得第二支付平台数据库主库的操作权限,给第二支付平台的数据安全带来了极大隐患,如果第一支付平台遭受恶意攻击或入侵后可能会对第二支付平台数据进行破坏;
(2)若要完成两个报表的合并需要先由第一支付平台向数据库表插入第一支付平台的交易统计结果,然后再查询两个表,对数据库进行了两次操作在性能产生了多余的消耗。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的一种基于多平台数据生成数据表的方法和相应的一种基于多平台数据生成数据表的系统。
依据本发明的一个方面,提供了一种基于多平台数据生成数据表的方法,所述多平台包括第一平台和第二平台,所述方法包括:
获取所述第一平台数据及第二平台数据;
分别将所述第一平台数据及第二平台数据载入内存;
判断所述内存中的第一平台数据与第二平台数据是否存在指定维度相同的数据记录;
若是,则将所述第一平台数据与第二平台数据中各个指定维度相同的数据记录,分别合并成对应的一条数据表子项;
若否,则分别将所述第一平台数据与第二平台数据处理成不同的数据表子项;
依据所述数据表子项生成数据表。
可选地,所述获取所述第一平台数据及第二平台数据的步骤包括:
获取所述第一平台的数据表,解析所述第一平台的数据表得到第一平台数据;
获取所述第二平台的数据表,解析所述第二平台的数据表得到第二平台数据;
所述分别将所述第一平台数据及第二平台数据载入内存的步骤包括:
将所述第一平台数据载入内存的第一数组中;
将所述第二平台数据载入内存的第二数组中。
可选地,在所述判断所述内存中的第一平台数据与第二平台数据是否存在指定维度相同的数据记录步骤之前,还包括:
生成数据表表头,所述数据表表头包括指定维度字段、第一平台特征数据字段、第二平台特征数据字段、行合计数据字段。
可选地,所述判断所述内存中的第一平台数据与第二平台数据是否存在指定维度相同的数据记录的步骤包括:
分别将所述第一数组中的每条数据记录按照指定维度遍历第二数组中的数据记录;
若在所述第二数组中找到与所述第一数组中的数据记录的指定维度相同的数据记录,则判断为所述内存中的第一平台数据与第二平台数据存在指定维度相同的数据记录;
若在所述第二数组中没有找到与所述第一数组中的数据记录的指定维度相同的数据记录,则判断为所述内存中的第一平台数据与第二平台数据不存在指定维度相同的数据记录。
可选地,所述将所述第一平台数据与第二平台数据中各个指定维度相同的数据记录,分别合并成对应的一条数据表子项的步骤包括:
将所述第一平台数据与第二平台数据中各个指定维度相同的数据记录按所述数据表表头生成数据表子项,其中,在所述指定维度字段下写入对应维度信息,在所述第一平台特征数据字段下写入所述第一平台数据的数据记录中除所述指定维度信息的其他字段值,在所述第二平台特征数据字段下写入对应的第二平台数据的数据记录中除所述指定维度信息的其他字段值,在所述行合计数据字段下写入第一平台数据中的第一合计数据与第二平台数据中的第二合计数据的总和。
可选地,所述方法还包括:
分别在所述第二数组中删除所述与所述第一平台数据的数据记录的指定维度相同的数据记录。
可选地,所述分别将所述第一平台数据与第二平台数据处理成不同的数据表子项的步骤包括:
分别将所述第一平台数据的数据记录按所述数据表表头生成对应的数据表子项,其中,在所述指定维度字段下写入第一平台数据的数据记录中的对应维度信息,在所述第一平台特征数据字段下写入所述第一平台数据的数据记录中除所述指定维度信息的其他字段值,在所述第二平台特征数据字段下写入数值0或数值为空的数据,在所述行合计数据字段下写入第一平台数据中的第一合计数据;
当所述第一数组中的每条数据记录遍历完成后,将第二数组中剩下的数据记录分别按所述数据表表头生成对应的数据表子项,其中,在所述指定维度字段下写入第二数组的数据记录中的对应维度信息,在所述第一平台特征数据字段下写入数值0或数值为空的数据,在所述第二平台特征数据字段下写入第二数组的数据记录中除所述指定维度信息的其他字段值,在所述行合计数据字段下写入第二平台数据中的第二合计数据。
可选地,所述依据所述数据表子项生成数据表的步骤包括:
组合所有数据表子项生成数据表表体;
对所述数据表表体进行排序;
计算排序后的数据表表体中每个数据表子项的合计数据字段下的值的总和,得到数据表表尾;
将所述数据表表头、排序后的数据表表体、数据表表尾写入文件,生成数据表。
可选地,所述指定维度的个数至少为2个。
根据本发明的另一方面,提供了一种基于多平台数据生成数据表的系统,所述多平台包括第一平台和第二平台,所述系统包括:
数据获取模块,适于获取所述第一平台数据及第二平台数据;
内存载入模块,适于分别将所述第一平台数据及第二平台数据载入内存;
判断模块,适于判断所述内存中的第一平台数据与第二平台数据是否存在指定维度相同的数据记录;
第一数据表子项生成模块,适于在第一平台数据与第二平台数据存在指定维度相同的数据记录时,将所述第一平台数据与第二平台数据中各个指定维度相同的数据记录,分别合并成对应的一条数据表子项;
第二数据表子项生成模块,适于在第一平台数据与第二平台数据不存在指定维度相同的数据记录时,分别将所述第一平台数据与第二平台数据处理成不同的数据表子项;
数据表生成模块,适于依据所述数据表子项生成数据表。
根据本发明的一种基于多平台数据生成数据表的方法和系统通过将获取的第一平台数据以及第二平台数据分别载入内存,在内存中合并第一平台数据与第二平台数据的指定维度相同的数据记录成一条数据子项;并把第一平台数据与第二平台数据的指定维度不相同的数据记录分别处理成不同的数据表子项,然后按照数据子项在内存中生成数据表,由此解决了跨平台的数据库操作导致数据安全性不高,数据库消耗大等问题,取得了提高数据库数据的安全性,排除受到攻击或劫持后对其他平台数据库的安全隐患,降低了数据库的开销,节省了线上服务器的资源的有益效果。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了根据本发明的一种基于多平台数据生成数据表的方法实施例一的步骤流程图;
图2示出了根据本发明的一种基于多平台数据生成数据表的方法实施例二的步骤流程图;
图3示出了根据本发明的一种基于多平台数据生成数据表的系统实施例的结构框图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
参照图1,示出了本发明的一种基于多平台数据生成数据表的方法实施例一的步骤流程图,其中所述多平台可以包括第一平台和第二平台,所述方法可以包括如下步骤:
步骤S110,获取所述第一平台数据及第二平台数据;
步骤S120,分别将所述第一平台数据及第二平台数据载入内存;
步骤S130,判断所述内存中的第一平台数据与第二平台数据是否存在指定维度相同的数据记录;若是,则执行步骤S140;若否,则执行步骤S150;
步骤S140,将所述第一平台数据与第二平台数据中各个指定维度相同的数据记录,分别合并成对应的一条数据表子项,继续执行步骤S160;
步骤S150,分别将所述第一平台数据与第二平台数据处理成不同的数据表子项,继续执行步骤S160;
步骤S160,依据所述数据表子项生成数据表。
在本发明实施例中,通过将获取的第一平台数据以及第二平台数据分别载入内存,在内存中合并第一平台数据与第二平台数据的指定维度相同的数据记录成一条数据子项;并把第一平台数据与第二平台数据的指定维度不相同的数据记录分别处理成不同的数据表子项,然后按照数据子项在内存中生成数据表。上述数据表生成的过程在内存中进行,避免了跨平台访问数据库主库,在不访问另一个平台数据库的情况下获得两个平台的数据,提高了数据库数据的安全性,排除了受到攻击或劫持后对其他平台数据库的安全隐患,并降低了数据库的开销,节省了线上服务器的资源。
参照图2,示出了本发明的一种基于多平台数据生成数据表的方法实施例二的步骤流程图,其中所述多平台可以包括第一平台和第二平台,所述方法可以包括如下步骤:
步骤S210,获取所述第一平台数据及第二平台数据;
在本发明的一种优选实施例中,所述步骤S210可以包括如下子步骤:
子步骤S11,获取所述第一平台的数据表,解析所述第一平台的数据表得到第一平台数据;
子步骤S13,获取所述第二平台的数据表,解析所述第二平台的数据表得到第二平台数据。
本发明实施例通过获取第一平台数据库中的数据表以及第二平台数据库中的数据表,解析所述第一平台数据库中的数据表以及第二平台数据库中的数据表可以得到第一平台数据以及第二平台数据。
作为一种示例,所述第一平台的数据表可以表示如下:
所述第二平台的数据表可以表示如下:
步骤S220,将所述第一平台数据载入内存的第一数组中,将所述第二平台数据载入内存的第二数组中;
在本发明实施例中,将得到的第一平台数据以及第二平台数据放到不同的内存数组中,在内存中生成数据表,可以避免跨平台的数据库操作,提高数据库数据的安全性,排除受到攻击或劫持后对其他平台数据库的安全隐患。
步骤S230,生成数据表表头,所述数据表表头包括指定维度字段、第一平台特征数据字段、第二平台特征数据字段、行合计数据字段;
应用于本发明实施例,本发明实施例可以按照指定维度字段、第一平台特征数据字段、第二平台特征数据字段、行合计数据字段的顺序生成数据表表头。其中,所述指定维度的个数至少为2个,如在步骤S210的示例中,所述指定维度可以为产品名称+单价,则可以按照产品名称、单价、第一平台数据中的渠道名、第二平台数据中的渠道名、第一合计、第二合计、行合计为顺序生成数据表表头(以下均按上述顺序进行说明);或按照产品名称、单价、第一平台数据中的渠道名、第一合计、第二平台数据中的渠道名、第二合计、行合计为顺序生成数据表表头。
步骤S240,判断所述内存中的第一平台数据与第二平台数据是否存在指定维度相同的数据记录,若是,则执行步骤S250;若否,则执行步骤S270;
在本发明的一种优选实施例中,所述步骤S240可以包括如下子步骤:
子步骤S21,分别将所述第一数组中的每条数据记录按照指定维度遍历第二数组中的数据记录;
子步骤S23,若在所述第二数组中找到与所述第一数组中的数据记录的指定维度相同的数据记录,则判断为所述内存中的第一平台数据与第二平台数据存在指定维度相同的数据记录;
子步骤S23,若在所述第二数组中没有找到与所述第一数组中的数据记录的指定维度相同的数据记录,则判断为所述内存中的第一平台数据与第二平台数据不存在指定维度相同的数据记录。
在实际中,可以将第一平台数据(或第一数组)中的每条数据记录与第二平台数据(或第二数组)中的所有数据按指定维度进行循环比对,若在所述第二平台数据中找到与所述第一平台数据的数据记录的指定维度相同的数据记录,则判断为所述内存中的第一平台数据与第二平台数据存在指定维度相同的数据记录,否则判断为所述内存中的第一平台数据与第二平台数据不存在指定维度相同的数据记录。
如在步骤S210或步骤S230的示例中,可以以第一平台数据为主,取出一条数据记录,按照产品名称+单价一致的原则去遍历第二平台数据。
步骤S250,将所述第一平台数据与第二平台数据中各个指定维度相同的数据记录按所述数据表表头生成数据表子项,继续执行步骤S260;
在本发明的一种优选实施例中,所述将所述第一平台数据与第二平台数据中各个指定维度相同的数据记录按所述数据表表头生成数据表子项,具体可以为,在所述指定维度字段下写入对应维度信息,在所述第一平台特征数据字段下写入所述第一平台数据的数据记录中除所述指定维度信息的其他字段值,在所述第二平台特征数据字段下写入对应的第二平台数据的数据记录中除所述指定维度信息的其他字段值,在所述行合计数据字段下写入第一平台数据中的第一合计数据与第二平台数据中的第二合计数据的总和。
步骤S260,分别在所述第二数组中删除所述与所述第一平台数据的数据记录的指定维度相同的数据记录,继续执行步骤S280;
步骤S270,分别将所述第一平台数据的数据记录按所述数据表表头生成对应的数据表子项,继续执行步骤S280;
在本发明的一种优选实施例中,所述分别将所述第一平台数据的数据记录按所述数据表表头生成对应的数据表子项,具体可以为,在所述指定维度字段下写入第一平台数据的数据记录中的对应维度信息,在所述第一平台特征数据字段下写入所述第一平台数据的数据记录中除所述指定维度信息的其他字段值,在所述第二平台特征数据字段下写入数值0或数值为空的数据,在所述行合计数据字段下写入第一平台数据中的第一合计数据。
步骤S280,当所述第一数组中的每条数据记录遍历完成后,将第二数组中剩下的数据记录分别按所述数据表表头生成对应的数据表子项;
在本发明的一种优选实施例中,所述将第二数组中剩下的数据记录分别按所述数据表表头生成对应的数据表子项,具体可以为,在所述指定维度字段下写入第二数组的数据记录中的对应维度信息,在所述第一平台特征数据字段下写入数值0或数值为空的数据,在所述第二平台特征数据字段下写入第二数组的数据记录中除所述指定维度信息的其他字段值,在所述行合计数据字段下写入第二平台数据中的第二合计数据。
如在步骤S210的示例中,第一平台数据中的每条数据记录按照产品名称+单价一致的原则去遍历第二平台数据,若在所述第二平台数据中找到与所述第一平台数据的数据记录的产品名称+单价相同的数据记录,则按产品名称+单价、第一平台数据中的渠道名在前,第二平台数据中的渠道名在后,第一平台数据中的第一合计在前,第二平台数据中的第二合计在后,第一合计与第二合计相加作为行合计的顺序组成一条数据表子项,然后删除第二数组中该条数据记录;如在第一平台数据中以“1-游戏名+xx1”为指定维度遍历第二平台数据,找到了一条“1-游戏名+xx1”相同的数据记录,则以1-游戏名+xx1、xxx1、xxx3、xxx、xxx、xxx+xxx为顺序生成一条数据表子项。
若在所述第二平台数据中没有找到与所述第一平台数据的数据记录的产品名称+单价相同的数据记录,则在所述指定维度字段下写入第一平台数据的数据记录中的对应维度信息,第一平台数据的渠道名在前,第二平台数据赋值0内容在后,第一平台数据的第一合计在前,第二平台数据的第二合计赋值为0在后,第一平台数据中的合计为行合计的顺序组成一条数据表子项;如在第一平台数据中以“2-游戏名+xx2”为指定维度遍历第二平台数据,在第二平台数据中没有找到相同的数据记录,则以2-游戏名+xx2、xxx1、0、xxx、0、xxx为顺序生成一条数据表子项。
当第一平台数据中的每条数据记录循环处理完一遍后,将第二数组中剩下的数据记录循环写入,格式为第一平台数据中渠道名赋值0在前,第二平台数据中渠道名在后,第一平台数据中第一合计赋值0在前,第二平台数据中第二合计在后,第二平台数据中的合计为行合计的顺序组成一条数据表子项,如当第一平台数据中的数据记录遍历完毕后,第二数组中还剩下数据记录“3-游戏名xx3xxx2xxx”,则以3-游戏名+xx3、0、xxx2、0、xxx、xxx为顺序生成一条数据表子项。
步骤S290,依据所述数据表子项生成数据表。
在本发明的一种优选实施例中,所述步骤S290可以包括如下子步骤:
子步骤S31,组合所有数据表子项生成数据表表体;
子步骤S33,对所述数据表表体进行排序;
在具体实现中,可以按照指定维度为分组对所述数据表表体进行重新排序,从而实现了在无法借助数据库sql的情况下完成对已有数据的重新排列,即保留了财务等报表使用人员按某种原数据表的展现顺序进行查看核对的使用习惯,又提高了平台性能,缩短了数据表生成整个过程的处理时间。
子步骤S35,计算排序后的数据表表体中每个数据表子项的合计数据字段下的值的总和,得到数据表表尾;
子步骤S37,将所述数据表表头、排序后的数据表表体、数据表表尾写入文件,生成数据表。
如在步骤S280的示例中,生成的数据表如表1所示:
需要说明的是,上述生成商户数据表的过程仅仅是本发明的一种示例,本领域技术人员依据本发明原理生成其他数据表均是可以的。
本发明实施例数据表生成方法,可以具有如下有益效果:
1、本发明在内存中生成数据表,避免了跨平台的数据库操作,提高了数据库数据的安全性,排除了受到攻击或劫持后对其他平台数据库的安全隐患;
2、本发明实现了在不访问数据库的情况下通过解析已生成的数据表数据来获得需要处理的数据,降低了数据库的开销,节省了线上服务器的资源;
3、本发明实现了在无法借助数据库sql的情况下完成对已有数据的重新排列,即保留了财务等报表使用人员按某种原数据表的展现顺序进行查看核对的使用习惯,又提高了系统性能,缩短了生成数据表整个流程的处理时间。
对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
参照图3,示出了本发明的一种基于多平台数据生成数据表的系统实施例的结构框图,所述多平台包括第一平台和第二平台,所述系统可以包括如下模块:
数据获取模块310,适于获取所述第一平台数据及第二平台数据;
内存载入模块320,适于分别将所述第一平台数据及第二平台数据载入内存;
判断模块330,适于判断所述内存中的第一平台数据与第二平台数据是否存在指定维度相同的数据记录;
第一数据表子项生成模块340,适于在第一平台数据与第二平台数据存在指定维度相同的数据记录时,将所述第一平台数据与第二平台数据中各个指定维度相同的数据记录,分别合并成对应的一条数据表子项;
其中,所述指定维度的个数至少为2个。
第二数据表子项生成模块350,适于在第一平台数据与第二平台数据不存在指定维度相同的数据记录时,分别将所述第一平台数据与第二平台数据处理成不同的数据表子项;
数据表生成模块360,适于依据所述数据表子项生成数据表。
在本发明的一种优选实施例中,所述数据获取模块310还适于获取所述第一平台的数据表,解析所述第一平台的数据表得到第一平台数据;获取所述第二平台的数据表,解析所述第二平台的数据表得到第二平台数据;
所述内存载入模块320还适于将所述第一平台数据载入内存的第一数组中;将所述第二平台数据载入内存的第二数组中。
在本发明的一种优选实施例中,所述系统还包括:
表头生成模块,适于生成数据表表头,所述数据表表头包括指定维度字段、第一平台特征数据字段、第二平台特征数据字段、行合计数据字段。
在本发明的一种优选实施例中,所述判断模块330还适于分别将所述第一数组中的每条数据记录按照指定维度遍历第二数组中的数据记录;若在所述第二数组中找到与所述第一数组中的数据记录的指定维度相同的数据记录,则判断为所述内存中的第一平台数据与第二平台数据存在指定维度相同的数据记录;若在所述第二数组中没有找到与所述第一数组中的数据记录的指定维度相同的数据记录,则判断为所述内存中的第一平台数据与第二平台数据不存在指定维度相同的数据记录。
在本发明的一种优选实施例中,所述第一数据表子项生成模块340还适于将所述第一平台数据与第二平台数据中各个指定维度相同的数据记录按所述数据表表头生成数据表子项;
其中,在所述指定维度字段下写入对应维度信息,在所述第一平台特征数据字段下写入所述第一平台数据的数据记录中除所述指定维度信息的其他字段值,在所述第二平台特征数据字段下写入对应的第二平台数据的数据记录中除所述指定维度信息的其他字段值,在所述行合计数据字段下写入第一平台数据中的第一合计数据与第二平台数据中的第二合计数据的总和。
在本发明的一种优选实施例中,所是系统还包括:
删除模块,适于分别在所述第二数组中删除所述与所述第一平台数据的数据记录的指定维度相同的数据记录。
在本发明的一种优选实施例中,第二数据表子项生成模块350还适于分别将所述第一平台数据的数据记录按所述数据表表头生成对应的数据表子项;
其中,在所述指定维度字段下写入第一平台数据的数据记录中的对应维度信息,在所述第一平台特征数据字段下写入所述第一平台数据的数据记录中除所述指定维度信息的其他字段值,在所述第二平台特征数据字段下写入数值0或数值为空的数据,在所述行合计数据字段下写入第一平台数据中的第一合计数据;
在本发明的一种优选实施例中,第二数据表子项生成模块350还适于在所述第一数组中的每条数据记录遍历完成后,将第二数组中剩下的数据记录分别按所述数据表表头生成对应的数据表子项;
其中,在所述指定维度字段下写入第二数组的数据记录中的对应维度信息,在所述第一平台特征数据字段下写入数值0或数值为空的数据,在所述第二平台特征数据字段下写入第二数组的数据记录中除所述指定维度信息的其他字段值,在所述行合计数据字段下写入第二平台数据中的第二合计数据。
在本发明的一种优选实施例中,所述数据表生成模块360还适于组合所有数据表子项生成数据表表体;对所述数据表表体进行排序;计算排序后的数据表表体中每个数据表子项的合计数据字段下的值的总和,得到数据表表尾;将所述数据表表头、排序后的数据表表体、数据表表尾写入文件,生成数据表。
对于图3的系统实施例而言,由于其与上述方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的基于多平台数据生成数据表设备中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
本发明的实施例公开了A1、一种基于多平台数据生成数据表的方法,所述多平台包括第一平台和第二平台,所述方法包括:获取所述第一平台数据及第二平台数据;分别将所述第一平台数据及第二平台数据载入内存;判断所述内存中的第一平台数据与第二平台数据是否存在指定维度相同的数据记录;若是,则将所述第一平台数据与第二平台数据中各个指定维度相同的数据记录,分别合并成对应的一条数据表子项;若否,则分别将所述第一平台数据与第二平台数据处理成不同的数据表子项;依据所述数据表子项生成数据表。A2、如权利要求A1所述的方法,所述获取所述第一平台数据及第二平台数据的步骤包括:获取所述第一平台的数据表,解析所述第一平台的数据表得到第一平台数据;获取所述第二平台的数据表,解析所述第二平台的数据表得到第二平台数据;所述分别将所述第一平台数据及第二平台数据载入内存的步骤包括:将所述第一平台数据载入内存的第一数组中;将所述第二平台数据载入内存的第二数组中。A3、如权利要求A2所述的方法,其特征在于,在所述判断所述内存中的第一平台数据与第二平台数据是否存在指定维度相同的数据记录步骤之前,还包括:生成数据表表头,所述数据表表头包括指定维度字段、第一平台特征数据字段、第二平台特征数据字段、行合计数据字段。A4、如权利要求A3所述的方法,所述判断所述内存中的第一平台数据与第二平台数据是否存在指定维度相同的数据记录的步骤包括:分别将所述第一数组中的每条数据记录按照指定维度遍历第二数组中的数据记录;若在所述第二数组中找到与所述第一数组中的数据记录的指定维度相同的数据记录,则判断为所述内存中的第一平台数据与第二平台数据存在指定维度相同的数据记录;若在所述第二数组中没有找到与所述第一数组中的数据记录的指定维度相同的数据记录,则判断为所述内存中的第一平台数据与第二平台数据不存在指定维度相同的数据记录。A5、如权利要求A4所述的方法,所述将所述第一平台数据与第二平台数据中各个指定维度相同的数据记录,分别合并成对应的一条数据表子项的步骤包括:将所述第一平台数据与第二平台数据中各个指定维度相同的数据记录按所述数据表表头生成数据表子项,其中,在所述指定维度字段下写入对应维度信息,在所述第一平台特征数据字段下写入所述第一平台数据的数据记录中除所述指定维度信息的其他字段值,在所述第二平台特征数据字段下写入对应的第二平台数据的数据记录中除所述指定维度信息的其他字段值,在所述行合计数据字段下写入第一平台数据中的第一合计数据与第二平台数据中的第二合计数据的总和。A6、如权利要求A5所述的方法,还包括:分别在所述第二数组中删除所述与所述第一平台数据的数据记录的指定维度相同的数据记录。A7、如权利要求A6所述的方法,所述分别将所述第一平台数据与第二平台数据处理成不同的数据表子项的步骤包括:分别将所述第一平台数据的数据记录按所述数据表表头生成对应的数据表子项,其中,在所述指定维度字段下写入第一平台数据的数据记录中的对应维度信息,在所述第一平台特征数据字段下写入所述第一平台数据的数据记录中除所述指定维度信息的其他字段值,在所述第二平台特征数据字段下写入数值0或数值为空的数据,在所述行合计数据字段下写入第一平台数据中的第一合计数据;当所述第一数组中的每条数据记录遍历完成后,将第二数组中剩下的数据记录分别按所述数据表表头生成对应的数据表子项,其中,在所述指定维度字段下写入第二数组的数据记录中的对应维度信息,在所述第一平台特征数据字段下写入数值0或数值为空的数据,在所述第二平台特征数据字段下写入第二数组的数据记录中除所述指定维度信息的其他字段值,在所述行合计数据字段下写入第二平台数据中的第二合计数据。A8、如权利要求A1至A7任一项所述的方法,所述依据所述数据表子项生成数据表的步骤包括:组合所有数据表子项生成数据表表体;对所述数据表表体进行排序;计算排序后的数据表表体中每个数据表子项的合计数据字段下的值的总和,得到数据表表尾;将所述数据表表头、排序后的数据表表体、数据表表尾写入文件,生成数据表。A9、如权利要求A1至A7任一权利要求所述的方法,所述指定维度的个数至少为2个。
本发明的实施例还公开了B10、一种基于多平台数据生成数据表的系统,所述多平台包括第一平台和第二平台,所述系统包括:数据获取模块,适于获取所述第一平台数据及第二平台数据;内存载入模块,适于分别将所述第一平台数据及第二平台数据载入内存;判断模块,适于判断所述内存中的第一平台数据与第二平台数据是否存在指定维度相同的数据记录;第一数据表子项生成模块,适于在第一平台数据与第二平台数据存在指定维度相同的数据记录时,将所述第一平台数据与第二平台数据中各个指定维度相同的数据记录,分别合并成对应的一条数据表子项;第二数据表子项生成模块,适于在第一平台数据与第二平台数据不存在指定维度相同的数据记录时,分别将所述第一平台数据与第二平台数据处理成不同的数据表子项;数据表生成模块,适于依据所述数据表子项生成数据表。
Claims (5)
1.一种基于多平台数据生成数据表的方法,所述多平台包括第一平台和第二平台,所述方法包括:
获取所述第一平台数据及第二平台数据;
分别将所述第一平台数据及第二平台数据载入内存;
生成数据表表头,所述数据表表头包括指定维度字段、第一平台特征数据字段、第二平台特征数据字段、行合计数据字段;
判断所述内存中的第一平台数据与第二平台数据是否存在指定维度相同的数据记录;
若是,则将所述第一平台数据与第二平台数据中各个指定维度相同的数据记录,分别合并成对应的一条数据表子项;
若否,则分别将所述第一平台数据与第二平台数据处理成不同的数据表子项;
依据所述数据表子项生成数据表;
其中,所述将所述第一平台数据与第二平台数据中各个指定维度相同的数据记录,分别合并成对应的一条数据表子项的步骤包括:
将所述第一平台数据与第二平台数据中各个指定维度相同的数据记录按所述数据表表头生成数据表子项,其中,在所述指定维度字段下写入对应维度信息,在所述第一平台特征数据字段下写入所述第一平台数据的数据记录中除所述指定维度信息的其他字段值,在所述第二平台特征数据字段下写入对应的第二平台数据的数据记录中除所述指定维度信息的其他字段值,在所述行合计数据字段下写入第一平台数据中的第一合计数据与第二平台数据中的第二合计数据的总和;
分别在第二数组中删除第一平台数据的数据记录的指定维度相同的数据记录;
所述判断所述内存中的第一平台数据与第二平台数据是否存在指定维度相同的数据记录的步骤包括:
分别将第一数组中的每条数据记录按照指定维度遍历第二数组中的数据记录;
若在所述第二数组中找到与所述第一数组中的数据记录的指定维度相同的数据记录,则判断为所述内存中的第一平台数据与第二平台数据存在指定维度相同的数据记录;
若在所述第二数组中没有找到与所述第一数组中的数据记录的指定维度相同的数据记录,则判断为所述内存中的第一平台数据与第二平台数据不存在指定维度相同的数据记录;
所述分别将所述第一平台数据与第二平台数据处理成不同的数据表子项的步骤包括:
分别将所述第一平台数据的数据记录按所述数据表表头生成对应的数据表子项,其中,在所述指定维度字段下写入第一平台数据的数据记录中的对应维度信息,在所述第一平台特征数据字段下写入所述第一平台数据的数据记录中除所述指定维度信息的其他字段值,在所述第二平台特征数据字段下写入数值0或数值为空的数据,在所述行合计数据字段下写入第一平台数据中的第一合计数据;
当所述第一数组中的每条数据记录遍历完成后,将第二数组中剩下的数据记录分别按所述数据表表头生成对应的数据表子项,其中,在所述指定维度字段下写入第二数组的数据记录中的对应维度信息,在所述第一平台特征数据字段下写入数值0或数值为空的数据,在所述第二平台特征数据字段下写入第二数组的数据记录中除所述指定维度信息的其他字段值,在所述行合计数据字段下写入第二平台数据中的第二合计数据。
2.如权利要求1所述的方法,所述获取所述第一平台数据及第二平台数据的步骤包括:
获取所述第一平台的数据表,解析所述第一平台的数据表得到第一平台数据;
获取所述第二平台的数据表,解析所述第二平台的数据表得到第二平台数据;
所述分别将所述第一平台数据及第二平台数据载入内存的步骤包括:
将所述第一平台数据载入内存的第一数组中;
将所述第二平台数据载入内存的第二数组中。
3.如权利要求1至2任一项所述的方法,所述依据所述数据表子项生成数据表的步骤包括:
组合所有数据表子项生成数据表表体;
对所述数据表表体进行排序;
计算排序后的数据表表体中每个数据表子项的合计数据字段下的值的总和,得到数据表表尾;
将所述数据表表头、排序后的数据表表体、数据表表尾写入文件,生成数据表。
4.如权利要求1至2任一权利要求所述的方法,所述指定维度的个数至少为2个。
5.一种基于多平台数据生成数据表的系统,所述多平台包括第一平台和第二平台,所述系统包括:
数据获取模块,适于获取所述第一平台数据及第二平台数据;
内存载入模块,适于分别将所述第一平台数据及第二平台数据载入内存;
判断模块,适于判断所述内存中的第一平台数据与第二平台数据是否存在指定维度相同的数据记录;
第一数据表子项生成模块,适于在第一平台数据与第二平台数据存在指定维度相同的数据记录时,将所述第一平台数据与第二平台数据中各个指定维度相同的数据记录,分别合并成对应的一条数据表子项;
第二数据表子项生成模块,适于在第一平台数据与第二平台数据不存在指定维度相同的数据记录时,分别将所述第一平台数据与第二平台数据处理成不同的数据表子项;
数据表生成模块,适于依据所述数据表子项生成数据表;
表头生成模块,适于生成数据表表头,所述数据表表头包括指定维度字段、第一平台特征数据字段、第二平台特征数据字段、行合计数据字段;
所述第一数据表子项生成模块还适于将所述第一平台数据与第二平台数据中各个指定维度相同的数据记录按所述数据表表头生成数据表子项;
其中,在所述指定维度字段下写入对应维度信息,在所述第一平台特征数据字段下写入所述第一平台数据的数据记录中除所述指定维度信息的其他字段值,在所述第二平台特征数据字段下写入对应的第二平台数据的数据记录中除所述指定维度信息的其他字段值,在所述行合计数据字段下写入第一平台数据中的第一合计数据与第二平台数据中的第二合计数据的总和;
删除模块,适于分别在第二数组中删除第一平台数据的数据记录的指定维度相同的数据记录;
所述判断模块还适于分别将第一数组中的每条数据记录按照指定维度遍历第二数组中的数据记录;若在所述第二数组中找到与所述第一数组中的数据记录的指定维度相同的数据记录,则判断为所述内存中的第一平台数据与第二平台数据存在指定维度相同的数据记录;若在所述第二数组中没有找到与所述第一数组中的数据记录的指定维度相同的数据记录,则判断为所述内存中的第一平台数据与第二平台数据不存在指定维度相同的数据记录;
第二数据表子项生成模块还适于分别将所述第一平台数据的数据记录按所述数据表表头生成对应的数据表子项;
其中,在所述指定维度字段下写入第一平台数据的数据记录中的对应维度信息,在所述第一平台特征数据字段下写入所述第一平台数据的数据记录中除所述指定维度信息的其他字段值,在所述第二平台特征数据字段下写入数值0或数值为空的数据,在所述行合计数据字段下写入第一平台数据中的第一合计数据;
第二数据表子项生成模块还适于在所述第一数组中的每条数据记录遍历完成后,将第二数组中剩下的数据记录分别按所述数据表表头生成对应的数据表子项;
其中,在所述指定维度字段下写入第二数组的数据记录中的对应维度信息,在所述第一平台特征数据字段下写入数值0或数值为空的数据,在所述第二平台特征数据字段下写入第二数组的数据记录中除所述指定维度信息的其他字段值,在所述行合计数据字段下写入第二平台数据中的第二合计数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310418742.1A CN103500185B (zh) | 2013-09-13 | 2013-09-13 | 一种基于多平台数据生成数据表的方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310418742.1A CN103500185B (zh) | 2013-09-13 | 2013-09-13 | 一种基于多平台数据生成数据表的方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103500185A CN103500185A (zh) | 2014-01-08 |
CN103500185B true CN103500185B (zh) | 2018-07-06 |
Family
ID=49865396
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310418742.1A Expired - Fee Related CN103500185B (zh) | 2013-09-13 | 2013-09-13 | 一种基于多平台数据生成数据表的方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103500185B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105893393B (zh) * | 2015-01-26 | 2019-11-05 | 阿里巴巴集团控股有限公司 | 数据保存方法及装置 |
CN104699788A (zh) * | 2015-03-16 | 2015-06-10 | 百度在线网络技术(北京)有限公司 | 数据库查询方法和装置 |
CN105389346A (zh) * | 2015-10-22 | 2016-03-09 | 江苏国泰新点软件有限公司 | 一种电子评标系统中的清标方法和装置 |
CN106708845A (zh) * | 2015-11-12 | 2017-05-24 | 阿里巴巴集团控股有限公司 | 一种互联网账号的数据处理方法及装置 |
CN106055654B (zh) * | 2016-06-01 | 2019-06-25 | 东软集团股份有限公司 | 异构数据的整合方法以及装置 |
CN110851506B (zh) * | 2018-07-25 | 2021-12-03 | 上海柯林布瑞信息技术有限公司 | 临床大数据的搜索方法及装置、存储介质、服务器 |
CN109495447B (zh) * | 2018-10-10 | 2021-05-07 | 光通天下网络科技股份有限公司 | 分布式DDoS防御系统的流量数据整合方法、整合装置和电子设备 |
CN110147441B (zh) * | 2019-04-03 | 2022-05-13 | 平安科技(深圳)有限公司 | 数据的整合显示方法、装置、终端设备及介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102663083A (zh) * | 2012-04-01 | 2012-09-12 | 南通大学 | 基于分布式计算的大规模社交网络信息抽取方法 |
CN102867066A (zh) * | 2012-09-28 | 2013-01-09 | 用友软件股份有限公司 | 数据汇总装置和数据汇总方法 |
CN102929899A (zh) * | 2011-12-31 | 2013-02-13 | 网神信息技术(北京)股份有限公司 | 一种基于中间表的分布式报表系统 |
CN103186651A (zh) * | 2011-12-31 | 2013-07-03 | 中国移动通信集团公司 | 一种分布式关系数据库及其建立、查询方法和装置 |
-
2013
- 2013-09-13 CN CN201310418742.1A patent/CN103500185B/zh not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102929899A (zh) * | 2011-12-31 | 2013-02-13 | 网神信息技术(北京)股份有限公司 | 一种基于中间表的分布式报表系统 |
CN103186651A (zh) * | 2011-12-31 | 2013-07-03 | 中国移动通信集团公司 | 一种分布式关系数据库及其建立、查询方法和装置 |
CN102663083A (zh) * | 2012-04-01 | 2012-09-12 | 南通大学 | 基于分布式计算的大规模社交网络信息抽取方法 |
CN102867066A (zh) * | 2012-09-28 | 2013-01-09 | 用友软件股份有限公司 | 数据汇总装置和数据汇总方法 |
Also Published As
Publication number | Publication date |
---|---|
CN103500185A (zh) | 2014-01-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103500185B (zh) | 一种基于多平台数据生成数据表的方法和系统 | |
US9104657B2 (en) | Using lexical analysis and parsing in genome research | |
CN103678494B (zh) | 客户端同步服务端数据的方法及装置 | |
CN111221726A (zh) | 一种测试数据生成方法、装置、存储介质和智能设备 | |
US8839198B2 (en) | Automated analysis of composite applications | |
CN105183895A (zh) | 虚拟资源推送方法和装置 | |
CN105117953A (zh) | 用户签到处理方法和装置 | |
CN106557307B (zh) | 业务数据的处理方法及处理系统 | |
US20100281241A1 (en) | Method and system for synchronizing inclusive decision branches | |
US10540360B2 (en) | Identifying relationship instances between entities | |
WO2023165271A1 (zh) | 知识图谱的构建、和图计算 | |
CN107357885A (zh) | 数据写入方法及装置、电子设备、计算机存储介质 | |
CN112650909A (zh) | 产品展示方法、装置、电子设备及存储介质 | |
CN106933591A (zh) | 代码合并的方法及装置 | |
CN111046052B (zh) | 一种数据库中的操作记录存储方法、装置及设备 | |
Molka et al. | Conformance checking for BPMN-based process models | |
JP2005122560A (ja) | デッドロック事前検出プログラム | |
CN109522305A (zh) | 一种大数据去重方法及装置 | |
US9569614B2 (en) | Capturing correlations between activity and non-activity attributes using N-grams | |
US20230394212A1 (en) | Equivalence checking of synthesized logic designs using generated synthesis history | |
CN105426541B (zh) | 一种通用数据的存储方法和装置 | |
CN109033158A (zh) | 基于指定时间窗的数据去重统计方法及装置 | |
CN113704365A (zh) | 智能划分数据主题的方法、系统、设备及存储介质 | |
CN113436023A (zh) | 基于区块链的理财产品推荐方法及装置 | |
US10922312B2 (en) | Optimization of data processing job execution using hash trees |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20180706 Termination date: 20210913 |