法律状态公告日
法律状态信息
法律状态
2018-01-19
专利权的转移 IPC(主分类):G06F17/30 登记生效日:20171229 变更前: 变更后: 申请日:20140124
专利申请权、专利权的转移
2017-09-26
授权
授权
2014-06-25
实质审查的生效 IPC(主分类):G06F17/30 申请日:20140124
实质审查的生效
2014-05-21
公开
公开
技术领域
本发明涉及3G通信技术及数据库技术,尤其涉及一种基于分区技术在大数据网优平台中快速分发数据的方法。
背景技术
随着移动通信业务的飞速发展,移动通信网络优化的数量也越来越多。为了解决数据保存、性能优化的问题,需要使用一套数据库采集平台存储数据,多台数据服务器进行数据查询的解决架构。
目前,网优数据转移过程中存在数据查询时间长、数据写入慢,以及需要人力干预的不足。如何在多个数据库服务器分发大量的数据,又不会对采信平台生成较大的查询压力,也是一个当前亟待解决的问题。
发明内容
有鉴于此,本发明的主要目的在于提供一种基于分区技术在大数据网优平台中快速分发数据的方法,对数据导入、数据处理、数据运算、数据归档等过程进行改进,以解决现有网优数据转移过程中存在的数据查询时间长、数据写入慢,以及需要人力干预的不足。
为达到上述目的,本发明的技术方案是这样实现的:
基于分区技术在大数据网优平台中快速分发数据的方法,该方法包括:
A、转移数据分区计算的步骤;
B、生成转移对象分区的步骤;
C、进行分区过滤的步骤;
D、远程导出数据的步骤;
E、并行SQLLDR数据导入的步骤。
其中,步骤A所述转移数据分区计算的步骤,是指根据转移数据的时间范围,通过数据库操作,找出需要转移数据所在的分区。
步骤B所述生成转移对象分区的步骤,具体为:将步骤A所述的分区转换为Linux Shell能处理的对象。
步骤B进一步包括实现数据转换分区的计算方法,具体为:
B1、在分发数据时,根据数据的时间值进行提取;在进行数据创建时,将数据按照时间进行严格的分段,不同时间的数据存储于不同的对象分区中;
B2、在转换数据时,输入需要分发数据的时间段,根据需要转换数据的时间,在数据分区中按照时间范围进行匹配,直到得到要转换的分区对象;
B3、将分区对象同已经完成分发数据进行比较,找出目前还没有分发的数据,交由后续分发进程进行处理。
步骤C所述进行分区过滤的步骤,具体为:根据目标数据库已经存在的数据,对需要转换的分区对象进行过滤,查询出实际需要转换的对象。
步骤D所述远程导出数据的步骤,具体为:采用数据导出工具OCIULDR将分区所在的数据导出。
步骤E所述并行SQLLDR数据导入的步骤,具体为:利用数据库工具将步骤D所述导出的数据导入目标数据库。
本发明所提供的基于分区技术在大数据网优平台中快速分发数据的方法,具有以下优点:
本发明针对网优数据转移过程中存在的问题,根据采集数据的分布情况,结合快速数据库导出、导入工作,能够快速实现数据的转移,且整个过程自动化,比一般的SQL语句提高约90%的速度。
附图说明
图1为本发明基于分区技术在大数据网优平台中快速分发数据的过程示意图;
图2为图1中转移数据分区计算的一个具体实施过程;
图3为图1中进行分区过滤的一个具体实施例;
图4为图1中利用该OCIULDR管理工具将数据导入目标数据库的一个具体实施例;
图5为图1中利用SQLLDR进行数据导入的过程实施例。
具体实施方式
下面结合附图及本发明的实施例对本发明在大数据网优平台中快速分发数据的方法作进一步详细的说明。
本发明涉及大数据网优平台中使用分区、快速在多数据库中分发数据的方法,根据数据分布,每类数据在传输时,按照ORACLE的管理最小单元:分区进行转移,减少对数据的压力。其中数据导出步骤中,使用专业的OCIULDR工具,能够比SQL查询提取的方式速度提高10倍左右。
图1为本发明基于分区技术在大数据网优平台中快速分发数据的过程示意图。如图1所示,该过程主要包括如下步骤:
步骤11:转移数据分区计算的步骤。所述转移数据分区计算,是指根据转移数据的时间范围,通过数据库操作,找出需要转移数据所在的分区。
如图2所示为转移数据分区计算的一个具体实施过程,该过程包括:
步骤111:指定数据转移的时间范围为:20130101~20130201。
步骤112:从数据库分区对象表中,提取分区。
步骤113:从数据库分区对象表中,查询分区日期范围为:20130101~20130201。
步骤114:检查分区日期是否为20130101~20130201,如果是,则执行步骤115,否则,执行步骤116。
步骤115:得到转换分区。
步骤116:返回步骤112。
步骤12:生成转移对象分区的步骤。具体为:根据步骤11,将所查询的分区转换为Linux Shell能处理的对象,即通过Linux语言,将步骤11得到的转换分区结果,打印到一个文件中。
这里,所述生成转移对象分区的步骤中,采用了数据分区的计算方法,以此实现数据转换的分区计算,其主要过程包括如下步骤:
步骤121:对于大数据的管理,一般都是通过数据库分区技术进行管理的。数据库的分区技术有很多种。由于本发明在分发数据时,是根据数据的时间值进行提取的。因此,本发明需要在数据创建时,将数据按照时间进行严格的分段,不同时间的数据存储于不同的对象分区中。
步骤122:在转换数据时,输入需要分发数据的时间段,算法根据需要转换数据的时间,在数据分区中按照时间范围进行匹配,直到得到要转换的分区对象。
步骤123:将分区对象同已经完成分发数据进行比较,找出目前还没有分发的数据,交由后续分发进程进行处理。
步骤13:进行分区过滤的步骤。具体为:根据目标数据库已经存在的数据,对需要转换的分区对象进行过滤,查询出实际需要转换的对象。如图3所示为进行分区过滤的一个具体实施例,其过程包括:
步骤131:对步骤12所述的转移对象分区进行循环过滤。
步骤132:判断数据库中各个分区是否存在,若否,则返回步骤131,若是,则执行步骤133。
步骤133:将所述的分区转入导入流程。
步骤14:进行远程导出数据的步骤。具体为:采用专业的数据导出工具OCIULDR将分区所在的数据导出。
这里,所述的OCIULDR为一个通用数据库管理工具。本发明直接使用该工具,指定导入分区的数据文件,以及导入的目标对象,将数据导入目标数据库。
如图4所示为本发明利用该OCIULDR管理工具将数据导入目标数据库的一个具体实施例,其过程包括如下步骤:
步骤141:指定OCIULDR需要导出的分区。
步骤142:指定OCIULDR数据输入文件。
步骤143:指定OCIULDR连接源数据库的信息。
步骤144:启动OCIULDR执行数据提取。
步骤145:OCIULDR进行数据写入,完成数据导出。
步骤15:并行SQLLDR数据导入的步骤。即,将步骤14中导出的数据通过数据库工具,将所述数据导入目标数据库,最终完成数据的导出工作。
这里,所述SQLLDR也是数据库的一个管理工具,本发明中利用SQLLDR实现将文本数据进行转换,并导入数据库。
如图5所示为本发明利用SQLLDR进行数据导入的过程实施例,该过程包括:
步骤151:指定SQLLDR需要导入的文件。
步骤152:指定SQLLDR进行数据解析的格式。
步骤153:指定SQLLDR连接源数据库的信息。
步骤154:执行SQLLDR进行数据解析。
步骤155:利用SQLLDR进行数据写入,完成数据导出。
步骤156:调用脚本,将导入分区写入目标数据库。该步骤得到的数据,用于与步骤12生成的转移对象分区进行比对。
现有多数数据库技术应用场合,均采用基于SQL语句的方法提取数据,不能根据数据业务及分布情况进行数据提取。而本发明则基于分区技术,能够根据业务、数据的分布情况针对数据库的管理单元即分区进行数据提取。本发明通过将数据库管理、Linux Shell编程和OCIULDR工具统一使用在移动网络的大数据业务处理中,能够发挥各自的优势,从而高效率地完成数据的迁移工作。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
机译: 数据,即银行数据,例如电子商务技术平台中的客户服务器,涉及对具有数据库结构的客户站点与商人站点链接的商业站点利用率数据进行分区
机译: 使用秘密分发技术存储指纹数据的设备,使用秘密分发技术进行指纹数据认证的系统以及使用秘密分发技术进行指纹数据认证的方法
机译: 基于用户安全令牌的使用秘密分发技术的指纹信息存储设备,使用秘密分发技术的指纹认证系统以及使用秘密分发技术的指纹认证方法