CN104866559A - 一种数据仓库的数据采集方法、装置及系统 - Google Patents
一种数据仓库的数据采集方法、装置及系统 Download PDFInfo
- Publication number
- CN104866559A CN104866559A CN201510253011.5A CN201510253011A CN104866559A CN 104866559 A CN104866559 A CN 104866559A CN 201510253011 A CN201510253011 A CN 201510253011A CN 104866559 A CN104866559 A CN 104866559A
- Authority
- CN
- China
- Prior art keywords
- data
- database server
- triggered
- event
- pick
- 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.)
- Granted
Links
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/25—Integrating or interfacing systems involving database management systems
- G06F16/254—Extract, transform and load [ETL] procedures, e.g. ETL data flows in data warehouses
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明属于数据处理技术领域,涉及一种数据仓库的数据采集方法、装置及系统。该方法包括:定时检测与数据仓库连接的至少一个数据库服务器中预设的数据抽取事件是否被触发;在检测到任一所述数据库服务器中的数据抽取事件被触发时,抽取并存储该数据库服务器中的数据。该方法通过分别确定从每个数据库服务器抽取数据的触发事件,分散了执行数据抽取任务的时间,避免了由于数据抽取任务集中导致的数据仓库的服务器性能变差,还提高了数据采集的效率。
Description
技术领域
本发明属于数据处理技术领域,涉及一种数据仓库的数据采集方法、装置及系统。
背景技术
数据仓库作为数据采集、数据加工和数据输出的工厂,支撑了数据分析、报表、挖掘等多种数据需求,发挥了数据驱动价值的作用。其中数据仓库从分布式数据库服务器采集数据是数据进入数据仓库的关键步骤,接入数据的质量和时效,直接影响到数据在数据仓库的加工和输出质量。
目前数据仓库的数据采集具有时间滞后性,为了采集前一天的所有数据,一般是在当天的24点以后,设置一个时间阀值,通过任务调度程序绑定一个数据抽取任务,每天从时间阀值开始执行数据抽取任务,从而从同一时刻开始抽取每个数据库服务器中的数据。
现有的数据仓库的数据采集方法具有时间滞后性,而且为了保障时效性,一般会并发抽取每个数据库服务器中的相同表格,这样能保证相同的表格在相差不多的时间点被抽取到数据仓库,进而为后续相同表格的合并,缩短等待的时间,但这样数据仓库的抽取任务比较集中,导致数据仓库的服务器资源的使用相对集中,会出现数据仓库的服务器性能变差的情况。
发明内容
本发明的目的是提出一种数据仓库的数据采集方法、装置及系统,以提高数据采集的效率,并避免由于数据抽取任务集中导致的数据仓库的服务器性能变差。
一方面,本发明实施例提供一种数据仓库的数据采集方法,包括:
定时检测与数据仓库连接的至少一个数据库服务器中预设的数据抽取事件是否被触发;
在检测到任一所述数据库服务器中的数据抽取事件被触发时,抽取并存储该数据库服务器中的数据。
另一方面,本发明实施例提供一种数据仓库的数据采集装置,包括:
数据抽取检测单元,用于定时检测与数据仓库连接的至少一个数据库服务器中预设的数据抽取事件是否被触发;
数据抽取存储单元,用于在检测到任一所述数据库服务器中的数据抽取事件被触发时,抽取并存储该数据库服务器中的数据。
再一方面,本发明实施例提供一种数据仓库的数据采集系统,包括数据仓库以及与所述数据仓库连接的至少一个数据库服务器,其中,
所述数据库服务器用于触发产生预设的数据抽取事件;
所述数据仓库配置有本发明任意实施例中提供的数据仓库的数据采集装置。
本发明实施例通过在数据仓库检测到任一所述数据库服务器中的数据抽取事件被触发时,抽取并存储该数据库服务器中的数据,以分别确定从每个数据库服务器抽取数据的触发时间,分散了执行数据抽取任务的时间,避免了由于数据抽取任务集中导致的数据仓库的服务器性能变差,还提高了数据采集的效率。
附图说明
此处所说明的附图用来提供对本发明实施例的进一步理解,构成本发明实施例的一部分,并不构成对本发明实施例的限定。在附图中:
图1是本发明第一实施例中提供的一种数据仓库的数据采集方法的实现流程图;
图2和图3均是本发明第二实施例中提供的一种数据仓库的数据采集方法的实现流程图;
图4是本发明第三实施例中提供的一种数据仓库的数据采集装置的结构示意图;
图5是本发明第四实施例中提供的一种数据仓库的数据采集系统的结构示意图;
图6是本发明第四实施例中提供的一种数据仓库的数据采集系统的工作原理示意图。
具体实施方式
下面结合附图及具体实施例对本发明实施例进行更加详细与完整的说明。可以理解的是,此处所描述的具体实施例仅用于解释本发明实施例,而非对本发明实施例的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明实施例相关的部分而非全部内容。
第一实施例:
图1是本发明第一实施例中提供的一种数据仓库的数据采集方法的实现流程图,该方法可以由数据仓库的数据采集装置执行,其中该装置可以由软件和/或硬件实现,可作为数据仓库的一部分被内置在数据仓库内部。如图1所示,该实现流程包括:
步骤11、定时检测与数据仓库连接的至少一个数据库服务器中预设的数据抽取事件是否被触发。
其中,数据仓库作为数据采集、数据加工和数据输出的工厂,支撑了数据分析、报表、挖掘等多种数据需求,发挥了数据驱动价值的作用。用于存储商品的库房分布在全国各地,每个库房都独立部署着相同的WMS(WarehouseManagement System,库房管理系统),有着相同的数据库服务器,而且每个数据库服务器中的表格结构也是相同的。
同一企业的所有库房的数据库服务器均与该企业的数据仓库连接。分散的WMS将库房生产作业过程中产生的数据存储于各自的数据库服务器中,数据仓库通过数据抽取事件将每个数据库服务器中的数据,抽取到数据仓库中。
可选的,所述定时检测与数据仓库连接的至少一个数据库服务器中预设的数据抽取事件是否被触发,包括:
A、定时检测每个所述数据库服务器中的打卡事件是否被触发。
可选的,所述定时检测每个所述数据库服务器中的打卡事件是否被触发,包括:定时检测每个所述数据库服务器中的打卡标识的取值是否为已打卡,若是,确定该数据库服务器的打卡事件被触发。
对于每个库房,库房作业人员确定该库房的数据库服务器完成当天的数据更新时,库房作业人员执行打卡操作,该库房的数据库服务器依据打卡操作将打卡标识的取值设置为已打卡,即本发明实施例通过打卡操作能够确定库房的生产作业的结束时间,从而确定数据库服务器对应的数据抽取事件的触发时间。
B、若是,则确定该数据库服务器中的数据抽取事件被触发。
C、否则,在当前时间晚于预设的时间阈值时,确定该数据库服务器中的数据抽取事件被触发。例如,所述时间阀值晚于当天的24点。
步骤12、在检测到任一所述数据库服务器中的数据抽取事件被触发时,抽取并存储该数据库服务器中的数据。
其中,每个数据库服务器包括至少一张表格,以存储数据库服务器所属库房的生产数据。示例性的,在数据仓库检测到任一数据库服务器中的数据抽取事件被触发时,抽取该数据库服务器中每张表格的数据。由于本发明实施例通过分别检测每个数据库服务器的数据抽取事件是否被触发,实现了对各数据库服务器的分时抽取,避免了由于数据抽取任务集中导致的数据仓库的服务器性能变差。
可选的,所述抽取并存储该数据库服务器中的数据之后,还包括:在检测到抽取并存储每个所述数据库服务器中的数据时,将每个所述数据库服务器中的相同表格的数据合并到一个表格中。
示例性的,数据仓库可以通过检测数据仓库缓冲层抽取到的表格的数量,来确定是否完成对每个数据库服务器的数据抽取。以M个数据库服务器,每个数据库服务器中有N张表格为例,在数据仓库抽取到的表格数量是M*N时,确定完成了对每个数据库服务器的数据抽取。将每个数据库服务器中的相同表格的数据合并到一个表格中,最终形成合并后的N张表格。
本发明实施例提供的数据仓库的数据采集方法,在分布式库房对应的分布式数据库服务器的数据采集方案中,以库房打卡作业机制触发数据仓库抽取数据,避免了由于数据抽取任务集中导致的数据仓库的服务器性能变差,还提高了数据采集的效率。而且,触发抽取数据与定时抽取数据的结合,保障了数据采集的完整性。
第二实施例
本实施例在上述实施例的基础上,提供了一种数据仓库的数据采集方法。
图2和图3均是本发明第二实施例中提供的一种数据仓库的数据采集方法的实现流程图。结合图2和图3,所述数据仓库的数据采集方法包括:
步骤21、数据仓库中的任务调度单元创建数据抽取任务。
仍然以数据仓库与M个库房对应的数据库服务器连接为例,任务调度单元创建M个任务,每个任务用于抽取一个数据库服务器中的N张表格的数据。
步骤22、设置时间阀值。
在任务调度单元创建的任务,设置时间阀值(即最晚抽取时间),截止到时间阀值还没有被抽取的数据库服务器,会在时间阀值开始执行对该数据库服务器的数据抽取任务。
步骤23、对于任一库房,在该库房的作业人员执行打卡操作时,该库房对应的数据库服务器将打卡标识的取值设置为已打卡。
步骤24、数据仓库中的打卡检查单元定时检测每个所述数据库服务器中的打卡标识的取值是否为已打卡。
打卡检查单元定时检查每个数据库服务器中打卡标识的取值,在任一数据库服务器的打卡标识的取值为已打卡时,确定当天该数据库服务器对应的库房已打卡。
步骤25、任务调度单元根据打卡检查单元的打卡检查结果,触发预设的数据抽取任务。
在打卡检查单元检查到任一库房已打卡时,打卡检测单元实时通知任务调度单元,触发对该库房对应的数据库服务器的数据抽取任务;如果检测到任一库房未打卡,则不触发对该库房对应的数据库服务器的数据抽取任务。
步骤26、在当前时间晚于预设的时间阈值时,触发对所有未打卡库房对应的数据库服务器的数据抽取任务。
任务调度单元中的数据抽取任务,判断当前时间是否到达预先设置的时间阀值,如果已达到时间阀值并且任一任务当天未执行过,则执行该数据抽取任务,确保所有数据抽取任务在当天都执行成功,保证数据抽取的完整性。
步骤27、在检测到抽取并存储每个所述数据库服务器中的数据时,将每个所述数据库服务器中的相同表格的数据合并到一个表格中。
在各地库房的数据被任务调度单元抽取到数据仓库的缓冲层之后,库房数据完整性检查与合并单元检查抽取到的数据仓库缓冲层中的库房数量是否等于创建的任务个数M,若是则执行不同库房相同表格的合并,最终只保留N张表;若缓冲层中库房数量小于创建的任务个数M,则表示有库房未抽取到数据仓库,那么重复步骤24-步骤27,直至所有库房的数据都被抽取、合并为止。
本发明实施例提供的数据仓库的数据采集方法,可获取每个库房生产结束的时间,即将库房的打卡时间作为库房对应的数据库服务器中的数据停止更新时间,以库房为单位的数据抽取,有效的解决了数据抽取的时效性和数据仓库服务器资源均衡的问题,还具有高容灾能力,避免了断网断电等意外情况导致的24点之后库房数据采集失败的情况。
第三实施例
图4是本发明第三实施例中提供的一种数据仓库的数据采集装置的结构示意图,该装置可以内置在数据仓库内部。如图4所示,所述数据仓库的数据采集装置包括数据抽取检测单元31和数据抽取存储单元32。
其中,数据抽取检测单元31用于定时检测与数据仓库连接的至少一个数据库服务器中预设的数据抽取事件是否被触发;
数据抽取存储单元32用于在检测到任一所述数据库服务器中的数据抽取事件被触发时,抽取并存储该数据库服务器中的数据。
可选的,所述数据抽取检测单元31包括:
打卡检测子单元,用于定时检测每个所述数据库服务器中的打卡事件是否被触发;
第一触发子单元,用于若任一所述数据库服务器中的打卡事件被触发,则确定该数据库服务器中的数据抽取事件被触发;
第二触发子单元,用于若任一所述数据库服务器中的打卡事件未被触发,则在当前时间晚于预设的时间阈值时,确定该数据库服务器中的数据抽取事件被触发。
可选的,所述打卡检测子单元具体用于:定时检测每个所述数据库服务器中的打卡标识的取值是否为已打卡,若是,确定该数据库服务器的打卡事件被触发。
可选的,所述数据仓库的数据采集装置,还包括:
数据合并单元,用于在抽取并存储该数据库服务器中的数据之后,检测到抽取并存储每个所述数据库服务器中的数据时,将每个所述数据库服务器中的相同表格的数据合并到一个表格中。
本发明实施例提供的数据仓库的数据采集装置,通过数据抽取检测单元定时检测数据抽取事件被触发的数据库服务器,并通过数据抽取存储单元抽取上述数据库服务器中的数据,避免了由于数据抽取任务集中导致的数据仓库的服务器性能变差,还提高了数据采集的效率。
第四实施例
图5为本发明第四实施例中提供的数据仓库的数据采集系统的结构示意图。如图5所示,所述数据仓库的采集系统数据仓库41以及与所述数据仓库41连接的至少一个数据库服务器42,其中,
所述数据库服务器42用于触发产生预设的数据抽取事件;
所述数据仓库41配置有本发明任意实施例中提供的数据仓库的数据采集装置。
图6为本发明第四实施例中提供的数据仓库的数据采集系统的工作原理示意图。如图6所示,该系统可以包括库房打卡单元,数据库服务器,打卡检查单元,任务调度单元,数据仓库和库房数据完整性检查与表合并单元。其中库房打卡单元可以配置在数据库服务器中,打卡检查单元,任务调度单元和库房数据完整性检查与表合并单元可以配置在数据仓库中。
库房每天的生产作业结束之后,库房工作人员通过库房打卡单元执行打卡操作,意味着该库房的工作已经完成,库房数据不会再发生变化,同时该库房对应的数据库服务器会记录下来当天是否打卡的标识。
打卡检查单元用于检查库房数据库中,当天是否记录已打卡的标识,并实时通知任务调度系统,来触发调度任务系统执行打卡库房数据库的抽取操作。
任务调度单元用于执行数据的抽取,把库房数据库中的数据采集到数据仓库中。
如果任一库房接收到已打卡的信号后,会触发任务调度单元执行对该库房的数据抽取任务,以把该库房对应的数据库服务器中所有表格的数据抽取到数据仓库;如果任一库房未打卡,则该库房对应的数据库服务器不会记录打卡标识,则不触发对该库房数据的抽取。同时抽取任务会设置一个最晚抽取时间(在24点之后),到达最晚时间依然没有获取到对应库房的打卡标识,则会触发抽取任务,通过任务调度单元触发未打卡库房对应的数据抽取任务。
库房数据完整性检查与表合并单元用于检查是否所有的库房数据库中的数据,都成功抽取到数据仓库中;若是,则把不同库房相同表结构的数据合并到一张表格里;若否,则重复数据抽取过程,直到所有数据库服务器的数据均被采集为止。
本实施例提供的数据仓库的数据采集系统,在分布式数据库服务器的数据采集方案中,以库房打卡作业机制触发数据抽取;触发抽取与定时抽取的结合,保障了分布式数据采集的完整性。
上所述仅为本发明实施例的优选实施例,并不用于限制本发明实施例,对于本领域技术人员而言,本发明实施例可以有各种改动和变化。凡在本发明实施例的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本发明实施例的保护范围之内。
Claims (9)
1.一种数据仓库的数据采集方法,其特征在于,包括:
定时检测与数据仓库连接的至少一个数据库服务器中预设的数据抽取事件是否被触发;
在检测到任一所述数据库服务器中的数据抽取事件被触发时,抽取并存储该数据库服务器中的数据。
2.根据权利要求1所述的方法,其特征在于,所述定时检测与数据仓库连接的至少一个数据库服务器中预设的数据抽取事件是否被触发,包括:
定时检测每个所述数据库服务器中的打卡事件是否被触发;
若是,则确定该数据库服务器中的数据抽取事件被触发;
否则,在当前时间晚于预设的时间阈值时,确定该数据库服务器中的数据抽取事件被触发。
3.根据权利要求2所述的方法,其特征在于,所述定时检测每个所述数据库服务器中的打卡事件是否被触发,包括:
定时检测每个所述数据库服务器中的打卡标识的取值是否为已打卡,若是,确定该数据库服务器的打卡事件被触发。
4.根据权利要求1-3任一所述的方法,其特征在于,所述抽取并存储该数据库服务器中的数据之后,还包括:
在检测到抽取并存储每个所述数据库服务器中的数据时,将每个所述数据库服务器中的相同表格的数据合并到一个表格中。
5.一种数据仓库的数据采集装置,其特征在于,包括:
数据抽取检测单元,用于定时检测与数据仓库连接的至少一个数据库服务器中预设的数据抽取事件是否被触发;
数据抽取存储单元,用于在检测到任一所述数据库服务器中的数据抽取事件被触发时,抽取并存储该数据库服务器中的数据。
6.根据权利要求5所述的装置,其特征在于,所述数据抽取检测单元包括:
打卡检测子单元,用于定时检测每个所述数据库服务器中的打卡事件是否被触发;
第一触发子单元,用于若任一所述数据库服务器中的打卡事件被触发,则确定该数据库服务器中的数据抽取事件被触发;
第二触发子单元,用于若任一所述数据库服务器中的打卡事件未被触发,则在当前时间晚于预设的时间阈值时,确定该数据库服务器中的数据抽取事件被触发。
7.根据权利要求6所述的装置,其特征在于,所述打卡检测子单元具体用于:
定时检测每个所述数据库服务器中的打卡标识的取值是否为已打卡,若是,确定该数据库服务器的打卡事件被触发。
8.根据权利要求5-7任一所述的装置,其特征在于,还包括:
数据合并单元,用于在抽取并存储该数据库服务器中的数据之后,检测到抽取并存储每个所述数据库服务器中的数据时,将每个所述数据库服务器中的相同表格的数据合并到一个表格中。
9.一种数据仓库的数据采集系统,包括数据仓库以及与所述数据仓库连接的至少一个数据库服务器,其特征在于,
所述数据库服务器用于触发产生预设的数据抽取事件;
所述数据仓库配置有权利要求5-8任一所述的数据仓库的数据采集装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510253011.5A CN104866559B (zh) | 2015-05-18 | 2015-05-18 | 一种数据仓库的数据采集方法、装置及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510253011.5A CN104866559B (zh) | 2015-05-18 | 2015-05-18 | 一种数据仓库的数据采集方法、装置及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104866559A true CN104866559A (zh) | 2015-08-26 |
CN104866559B CN104866559B (zh) | 2019-03-26 |
Family
ID=53912385
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510253011.5A Active CN104866559B (zh) | 2015-05-18 | 2015-05-18 | 一种数据仓库的数据采集方法、装置及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104866559B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107688580A (zh) * | 2016-08-05 | 2018-02-13 | 北京京东尚科信息技术有限公司 | 基于分布式数据仓库的商品分级的方法、装置及系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101923566A (zh) * | 2010-06-24 | 2010-12-22 | 浙江协同数据系统有限公司 | 一种基于触发器的数据增量抽取方法 |
CN102750363A (zh) * | 2012-06-13 | 2012-10-24 | 天津市规划信息中心 | 一种城市地理信息数据仓库的构建方法 |
US20150081617A1 (en) * | 2013-09-18 | 2015-03-19 | Cellco Partnership (D/B/A Verizon Wireless) | Out of home media measurement |
-
2015
- 2015-05-18 CN CN201510253011.5A patent/CN104866559B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101923566A (zh) * | 2010-06-24 | 2010-12-22 | 浙江协同数据系统有限公司 | 一种基于触发器的数据增量抽取方法 |
CN102750363A (zh) * | 2012-06-13 | 2012-10-24 | 天津市规划信息中心 | 一种城市地理信息数据仓库的构建方法 |
US20150081617A1 (en) * | 2013-09-18 | 2015-03-19 | Cellco Partnership (D/B/A Verizon Wireless) | Out of home media measurement |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107688580A (zh) * | 2016-08-05 | 2018-02-13 | 北京京东尚科信息技术有限公司 | 基于分布式数据仓库的商品分级的方法、装置及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN104866559B (zh) | 2019-03-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101183993B (zh) | 一种网络管理系统和性能数据处理方法 | |
CN102123044B (zh) | 基于拓扑发现技术的网络拓扑一致性检测设备和检测方法 | |
CN103279475B (zh) | 一种web应用系统内容变更的检测方法及系统 | |
CN103390163B (zh) | 一种信函地址自动采集方法 | |
CN104850635B (zh) | 一种多数据源环境下数据缺失自动检查及集中监控方法 | |
CN101170454A (zh) | 一种监控数据采集汇总状态的方法和系统 | |
CN104699735A (zh) | 企业级数据中心的数据处理方法及装置 | |
CN103870549B (zh) | 石油地质软件数据的清理方法及装置 | |
CN107844320A (zh) | 国网软件版本信息管理系统及实现方法 | |
CN105302697A (zh) | 一种密集数据模型数据库的运行状态监控方法及系统 | |
CN102495916A (zh) | 一种基于对象匹配的多应用系统全景建模方法 | |
CN102801548A (zh) | 一种智能预警的方法、装置及信息系统 | |
CN103488695A (zh) | 数据同步装置和数据同步方法 | |
CN105763384A (zh) | 银行卡交换中心的运营保障系统 | |
CN103699688B (zh) | 一种支撑终端用户供电可靠性管理的终端模型 | |
CN103400220A (zh) | 一种网络设备信息的采集、分类以及固定标识的方法 | |
CN105490265B (zh) | 一种配电网停电范围重叠的快速检测方法 | |
CN111240936A (zh) | 一种数据完整性校验的方法及设备 | |
CN104866559A (zh) | 一种数据仓库的数据采集方法、装置及系统 | |
CN105897498A (zh) | 一种监控业务的方法及设备 | |
CN109857792A (zh) | 一种异步大数据清洗转换的方法和系统 | |
CN107220116A (zh) | 一种numa架构下的沙箱环境任务处理方法及系统 | |
CN107734080A (zh) | 多用户域名解析及域名服务器迁移的方法 | |
CN107147547A (zh) | 一种集群整体性能监控实现方法 | |
CN104268071B (zh) | 保证oee停机计时准确性方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
EXSB | Decision made by sipo to initiate substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |