CN101620600A - 一种海量数据的处理方法 - Google Patents
一种海量数据的处理方法 Download PDFInfo
- Publication number
- CN101620600A CN101620600A CN200810039891A CN200810039891A CN101620600A CN 101620600 A CN101620600 A CN 101620600A CN 200810039891 A CN200810039891 A CN 200810039891A CN 200810039891 A CN200810039891 A CN 200810039891A CN 101620600 A CN101620600 A CN 101620600A
- Authority
- CN
- China
- Prior art keywords
- data
- subregion
- task
- disposal route
- different
- 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
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及一种海量数据的处理方法,该方法将接口数据文件作为数据库的辅助表,采用表分区处理的方式进行存储,存储过程导入相关需要的数据,采用进程并行处理的机制,根据业务特点对不同的数据业务划分不同的主题,并对数据进行预处理,生成轻量级面向主题的汇总,然后在轻量级的汇总基础上进行重量级汇总。与现有技术相比,本发明采用进程并行处理得机制,使多个任务能异步执行,在存储方式上,采用对表划分分区的方式,在执行时分区之间互不影响,提高了执行效率。此设计方法有效的连接不同系统之间的数据接口,在各个不同的层面采用合适的策略,并使数据的查询的深度得到加强,效率得以提高。
Description
技术领域
本发明涉及数字化信息的处理方法,尤其涉及一种海量数据的处理方法。
背景技术
传统大型应用软件系统对其应用的管理对象采集的数据进行管理和查询分析,一般而言,管理和查询的数据量都非常巨大以致查询的速率下降。如要求对多表同时进行联合,限制,分组,条件查询等。在现有的技术中,现在一般的查询应用中,对于这种情况,只能缩短,简化SQL语句,从而提高数据的业务逻辑处理复杂度,而且会经常出现数据连接异常的各种问题。对于如何处理这种问题,往往鱼和熊掌不可兼得。
发明内容
本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种可直接提高数据的查询和和统计分析速度的海量数据的处理方法。
本发明的目的可以通过以下技术方案来实现:一种海量数据的处理方法,其特征在于,该方法将接口数据文件作为数据库的辅助表,采用表分区处理的方式进行存储,存储过程导入相关需要的数据,采用进程并行处理的机制,根据业务特点对不同的数据业务划分不同的主题,并对数据进行预处理,生成轻量级面向主题的汇总,然后在轻量级的汇总基础上进行重量级汇总。
所述的表分区处理是将数据库表划分为多个不同的分区,在不同的分区中存入不同的数据,每个分区又相当于大表中的一个小表,按日期划分分区,数据插入按分区顺序依次进行并在分区号范围内循环更新。
所述的表分处理包括以下处理步骤:
(1)生成每年的日期维度;
(2)在日期维度的基础上,生成每月的表空间;
(3)然后再对每天的数据表进行分区,建立日分区;
(4)在日分区生成维度数据,该维度数据包括终端品牌维度和业务类型维度;
(5)最终生成事实数据。
所述的步骤(2)中的表空间按照月份建立的,表空间相当于一个表的容器,可储存多个表文件,这些表空间各自有自己完整的存储系统,在操作上完全是相对独立的,每个表空间存储了该月所有的数据,即这个月每天的数据表。
所述的表空间相互之间逻辑连贯,在物理的储存空间上不相邻。
所述的步骤(3)中的日分区的天数据表按照城市代码的不同分成不同的分区,每个分区进行逻辑紧密相连,在物理存储上,各自在不同的存储扇区中,表中的数据查询方法是,根据日期计算该日期数据库表对应的分区号,从指定的分区中查找用户需要的数据。
所述的步骤(5)中的事实数据包括登录数据,访问数据,订购数据,使用费用数据。
所述的进程并行处理的机制是使用数据库的消息机制对同时需要处理的进程进行并行的处理,并发运行,对查询数据进行分组,并建立并行任务,将组代码传入并行任务当中去,然后建立报警通道,为每个任务注册,当一个子任务完成返回时,将自动在报警通道删除此任务,直到报警通道中所有任务全部删除,整个任务并行完成;
所述的进程并行处理包括以下处理步骤:
(1)使用数据库的消息机制为每个查询业务建立一个任务进程;
(2)大数据量处理采用并行处理机制,按城市代码分成四个数据量相对均衡的组,建立并行任务,将组代码传入过程;
(3)建立一个报警通道,并注册每个任务;
(4)等待报警信号,当一个子任务返回,将在报警通道删除此任务,直到报警通道中所有任务全部删除,整个任务并行结束。
与现有技术相比,本发明采用进程并行处理得机制,使多个任务能异步执行,在存储方式上,采用对表划分分区的方式,在执行时分区之间互不影响,提高了执行效率。此设计方法有效的连接不同系统之间的数据接口,在各个不同的层面采用合适的策略,并使数据的查询的深度得到加强,效率得以提高。
附图说明
图1为本发明表分区处理的示意图;
图2为本发明系统结构示意图。
具体实施方式
下面结合附图对本发明作进一步说明。
实施例1
如图1~2所示,一种海量数据分析,提取的设计方法,该设计方案采用Oracle最新外部表的功能把接口数据文件作为数据库的辅助表,供存储过程使用,存储过程导入相关需要的数据,根据业务特点对不同的数据业务划分不同的主题,并对数据进行预处理,生成轻量级面向主题的汇总,以便降低最终实事表的运算复杂度,然后在轻量级汇总的基础上进行重量级汇总的策略。在这个过程中,采用进程并行处理得机制,使多个任务能异步执行,在存储方式上,采用对表划分分区的方式,在执行时分区之间互不影响,提高了执行效率。此设计方法有效的连接不同系统之间的数据接口,在各个不同的层面采用合适的策略,并使数据的查询的深度得到加强,效率得以提高。
上述表分区处理是将数据库表划分为多个不同的分区,在不同的分区中存入不同的数据,每个分区又相当于大表中的一个小表,按日期划分分区,数据插入按分区顺序依次进行并在分区号范围内循环更新,这样在查询一个分区时而不会影响其他分区,以达到提高查询处理数据的速度,利于海量数据的管理。具体表分处理步骤如下:
1.先生成每年的日期维度(Common.Generate_Time)。
2.在日期维度的基础上,生成每月的表空间(Common.Generate_Tablespace),表空间时按照月份建立的,表空间相当于一个表的容器,它可以储存多个表文件,这些表空间在逻辑看起来是连贯的,然而在物理的储存空间上却不是相邻的,各自有自己完整的存储系统,在操作上完全是相对独立的,每个表空间存储了该月所有的数据,即这个月每天的数据表。
3.然后再对每天的数据表进行分区, 建立每日的分区(Common.Generate_Partition),这些天数据表按照城市代码的不同分成不同的分区,每个分区虽然在逻辑上看起来是紧密相连的,然后在物理存储上,各自在不同的存储扇区中,以便硬件读操作时可以同时进行,这样就大大地提高了读取,存储数据的效率。表中的数据查询方法是,根据日期计算该日期数据库表对应的分区号,从指定的分区中查找用户需要的数据。
4.在分区生成维度数据,维度数据包括终端品牌维度和业务类型维度。
5.最终生成事实数据,事实数据包括登录数据,访问数据,订购数据,使用费用等数据。
其结构示意图如图1所示。
上述进程并行处理的具体实现步骤如下:
1.使用数据库的消息机制为每个查询业务建立一个任务进程。
2.对这些大量数据,按城市代码分成四个数据量相对均衡的组,建立并行任务,将子任务传入并行任务当中去,将组代码传入过程。
3.建立一个报警通道,并为每个任务进行注册。
4.此时处于等待报警信号状态,当一个子任务返回时,将在报警通道删除此任务,直到报警通道中所有任务全部删除,整个任务并行结束。这样就实现了不同的数据处理进程进行异步并行的处理。
本实施例的硬件结构包括数据库服务器、集中存储装置,数据库服务器与集中存储装置通过通讯设备建立网络连接,其结构如图2所示。
Claims (9)
1.一种海量数据的处理方法,其特征在于,该方法将接口数据文件作为数据库的辅助表,采用表分区处理的方式进行存储,存储过程导入相关需要的数据,采用进程并行处理的机制,根据业务特点对不同的数据业务划分不同的主题,并对数据进行预处理,生成轻量级面向主题的汇总,然后在轻量级的汇总基础上进行重量级汇总。
2.根据权利要求1所述的一种海量数据的处理方法,其特征在于,所述的表分区处理是将数据库表划分为多个不同的分区,在不同的分区中存入不同的数据,每个分区又相当于大表中的一个小表,按日期划分分区,数据插入按分区顺序依次进行并在分区号范围内循环更新。
3.根据权利要求2所述的一种海量数据的处理方法,其特征在于,所述的表分区处理包括以下处理步骤:
(1)生成每年的日期维度;
(2)在日期维度的基础上,生成每月的表空间;
(3)然后再对每天的数据表进行分区,建立日分区;
(4)在日分区生成维度数据,该维度数据包括终端品牌维度和业务类型维度;
(5)最终生成事实数据。
4.根据权利要求3所述的一种海量数据的处理方法,其特征在于,所述的步骤(2)中的表空间按照月份建立的,表空间相当于一个表的容器,可储存多个表文件,这些表空间各自有自己完整的存储系统,在操作上完全是相对独立的,每个表空间存储了该月所有的数据,即这个月每天的数据表。
5.根据权利要求4所述的一种海量数据的处理方法,其特征在于,所述的表空间相互之间逻辑连贯,在物理的储存空间上不相邻。
6.根据权利要求3所述的一种海量数据的处理方法,其特征在于,所述的步骤(3)中的日分区的天数据表按照城市代码的不同分成不同的分区,每个分区进行逻辑紧密相连,在物理存储上,各自在不同的存储扇区中,表中的数据查询方法是,根据日期计算该日期数据库表对应的分区号,从指定的分区中查找用户需要的数据。
7.根据权利要求3所述的一种海量数据的处理方法,其特征在于,所述的步骤(5)中的事实数据包括登录数据,访问数据,订购数据,使用费用数据。
8.根据权利要求1所述的一种海量数据的处理方法,其特征在于,所述的进程并行处理的机制是使用数据库的消息机制对同时需要处理的进程进行并行的处理,并发运行,对查询数据进行分组,并建立并行任务,将组代码传入并行任务当中去,然后建立报警通道,为每个任务注册,当一个子任务完成返回时,将自动在报警通道删除此任务,直到报警通道中所有任务全部删除,整个任务并行完成;
9.根据权利要求8所述的一种海量数据的处理方法,其特征在于,所述的进程并行处理包括以下处理步骤:
(1)使用数据库的消息机制为每个查询业务建立一个任务进程;
(2)大数据量处理采用并行处理机制,按城市代码分成四个数据量相对均衡的组,建立并行任务,将组代码传入过程;
(3)建立一个报警通道,并注册每个任务;
(4)等待报警信号,当一个子任务返回,将在报警通道删除此任务,直到报警通道中所有任务全部删除,整个任务并行结束。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200810039891A CN101620600A (zh) | 2008-06-30 | 2008-06-30 | 一种海量数据的处理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200810039891A CN101620600A (zh) | 2008-06-30 | 2008-06-30 | 一种海量数据的处理方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101620600A true CN101620600A (zh) | 2010-01-06 |
Family
ID=41513842
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200810039891A Pending CN101620600A (zh) | 2008-06-30 | 2008-06-30 | 一种海量数据的处理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101620600A (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103473321A (zh) * | 2013-09-12 | 2013-12-25 | 华为技术有限公司 | 数据库管理方法与系统 |
CN103678303A (zh) * | 2012-08-31 | 2014-03-26 | 国际商业机器公司 | 用于数据库分组集查询的方法和系统 |
CN106294828A (zh) * | 2016-08-17 | 2017-01-04 | 华云科技有限公司 | 分区分片高qps数据持久化方案 |
CN106527990A (zh) * | 2016-11-09 | 2017-03-22 | 浪潮通信信息系统有限公司 | 一种网管信息处理服务器、方法和系统 |
CN106776945A (zh) * | 2016-11-30 | 2017-05-31 | 努比亚技术有限公司 | 移动终端及垃圾文件搜索方法 |
CN111221883A (zh) * | 2018-11-27 | 2020-06-02 | 浙江宇视科技有限公司 | 数据统计方法及系统 |
CN112380205A (zh) * | 2020-11-17 | 2021-02-19 | 北京融七牛信息技术有限公司 | 一种分布式架构的特征自动生成方法和系统 |
CN112434036A (zh) * | 2020-11-24 | 2021-03-02 | 上海浦东发展银行股份有限公司 | 一种账户管理系统数据的处理方法 |
-
2008
- 2008-06-30 CN CN200810039891A patent/CN101620600A/zh active Pending
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103678303A (zh) * | 2012-08-31 | 2014-03-26 | 国际商业机器公司 | 用于数据库分组集查询的方法和系统 |
US10496659B2 (en) | 2012-08-31 | 2019-12-03 | International Business Machines Corporation | Database grouping set query |
CN103473321A (zh) * | 2013-09-12 | 2013-12-25 | 华为技术有限公司 | 数据库管理方法与系统 |
US9460186B2 (en) | 2013-09-12 | 2016-10-04 | Huawei Technologies Co., Ltd. | Database management method and system |
CN106294828B (zh) * | 2016-08-17 | 2019-05-21 | 华云科技有限公司 | 一种分区分片高qps数据持久化方法 |
CN106294828A (zh) * | 2016-08-17 | 2017-01-04 | 华云科技有限公司 | 分区分片高qps数据持久化方案 |
CN106527990A (zh) * | 2016-11-09 | 2017-03-22 | 浪潮通信信息系统有限公司 | 一种网管信息处理服务器、方法和系统 |
CN106527990B (zh) * | 2016-11-09 | 2019-08-30 | 浪潮天元通信信息系统有限公司 | 一种网管信息处理服务器、方法和系统 |
CN106776945A (zh) * | 2016-11-30 | 2017-05-31 | 努比亚技术有限公司 | 移动终端及垃圾文件搜索方法 |
CN111221883A (zh) * | 2018-11-27 | 2020-06-02 | 浙江宇视科技有限公司 | 数据统计方法及系统 |
CN111221883B (zh) * | 2018-11-27 | 2024-04-26 | 浙江宇视科技有限公司 | 数据统计方法及系统 |
CN112380205A (zh) * | 2020-11-17 | 2021-02-19 | 北京融七牛信息技术有限公司 | 一种分布式架构的特征自动生成方法和系统 |
CN112380205B (zh) * | 2020-11-17 | 2024-04-02 | 北京融七牛信息技术有限公司 | 一种分布式架构的特征自动生成方法和系统 |
CN112434036A (zh) * | 2020-11-24 | 2021-03-02 | 上海浦东发展银行股份有限公司 | 一种账户管理系统数据的处理方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101620600A (zh) | 一种海量数据的处理方法 | |
CN103064875B (zh) | 一种服务化空间数据分布式查询方法 | |
CN106844703B (zh) | 一种面向数据库一体机的内存数据仓库查询处理实现方法 | |
CN104160394B (zh) | 用于半结构化数据的可缩放分析平台 | |
CN102033954B (zh) | 关系数据库中可扩展标记语言文档全文检索查询索引方法 | |
US20150278334A1 (en) | Interpreting relational database statements using a virtual multidimensional data model | |
CN107220310A (zh) | 一种数据库数据管理系统、方法及装置 | |
US20120109888A1 (en) | Data partitioning method of distributed parallel database system | |
CN103412897A (zh) | 一种基于分布式结构的并行数据处理方法 | |
CN106599052B (zh) | 一种基于Apache Kylin的数据查询系统及其方法 | |
CN103324765B (zh) | 一种基于列存储的多核并行数据查询优化方法 | |
CN103548019A (zh) | 用于根据数据仓库提供统计信息的方法和系统 | |
CN102999563A (zh) | 基于资源描述框架的网络资源语义检索方法及系统 | |
CN105164674A (zh) | 涉及多个数据库和执行引擎的查询 | |
CN103678665A (zh) | 一种基于数据仓库的异构大数据整合方法和系统 | |
Liang et al. | Express supervision system based on NodeJS and MongoDB | |
CN103460208A (zh) | 用于将数据加载到时态数据仓库的方法和系统 | |
CN105488231A (zh) | 一种基于自适应表维度划分的大数据处理方法 | |
CN104063376A (zh) | 多维度分组运算方法及系统 | |
CN104239377A (zh) | 跨平台的数据检索方法及装置 | |
CN104391908B (zh) | 一种图上基于局部敏感哈希的多关键字索引方法 | |
CN104111958A (zh) | 一种数据查询方法及装置 | |
Xiong et al. | Data vitalization: a new paradigm for large-scale dataset analysis | |
Samwel et al. | F1 query: Declarative querying at scale | |
CN103177094A (zh) | 一种物联网数据清洗方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20100106 |