CN102262678A - 一个对海量数据进行抽样以及抽样数据管理系统 - Google Patents
一个对海量数据进行抽样以及抽样数据管理系统 Download PDFInfo
- Publication number
- CN102262678A CN102262678A CN2011102334728A CN201110233472A CN102262678A CN 102262678 A CN102262678 A CN 102262678A CN 2011102334728 A CN2011102334728 A CN 2011102334728A CN 201110233472 A CN201110233472 A CN 201110233472A CN 102262678 A CN102262678 A CN 102262678A
- Authority
- CN
- China
- Prior art keywords
- data
- sampling
- sample
- sample survey
- user
- 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
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请提出一种用于数据仓库系统、商务智能以及其他和海量数据分析与处理相关的领域的对海量数据进行抽样以及抽样数据管理的方法与系统。通过抽样的方法,在海量数据中抽取一个可被操作与计算的子集,从而在保证决策质量的前提下,减少对运算资源的需求。为了有效的执行抽样、管理抽样数据所构建系统包括如下几个子系统:抽样管理子系统、抽样数据元数据管理子系统、抽样调度子系统、抽样数据存储子系统、抽样数据分发子系统。
Description
技术领域
本发明涉及数据仓库领域、商务智能领域以及其他和海量数据分析与处理相关的领域,尤其涉及一种对海量数据进行抽样以及抽样数据管理的系统。
背景技术
抽样是从总体中选取一部分个体形成一个子集,利用这个子集对总体的统计特征进行估计与推断的过程。虽然利用抽样子集对总体特征的推断会损失一定的精确度。但是,如果考虑到现在很多分析都是出于探索、预测的目的,问题本身就存在很大的不确定性,那么通过抽样以损失一定的精确性为代价获得对数据及时而充分的探索与分析是一个很有价值也很有必要的手段。抽样调查技术已经在统计学、社会学、医学等诸多领域获得了充分的研究与发展。在对企业信息化系统、数据仓库系统中的海量数据进行分析与处理的实践中,更常见的是对全体数据的分析与处理,例如,在现有的商业智能系统和企业信息化系统中没有一个专门的数据抽样模块,商业智能系统通过对全体数据的汇总分析给出结果。虽然,很多实践者也曾经利用抽样技术对海量数据进行分析,但是这些抽样实践都是零散的、非系统化的、缺乏平台系统支撑与严格理论支撑的。本申请将提出一个数据抽样系统,它能够有效的管理对海量数据的抽样的设计、执行与应用。
随着信息技术的发展,人类的数据极大丰富。据IDC的一份调查报告显示,到2020年,人类产生的数据将超过35万亿GB(35ZB)。很多大型企业产生并储存了海量的数据。据McKinsey的一份调查报告显示,在美国,2010年规模超过1,000人的企业平均每家企业产生和储存超过200TB的数据,而许多企业产生和储存超过1PB(1PB=1,000TB)的数据。以著名的社交网络平台Facebook为例,到2010年7月,Facebook已经拥有超过35PB的数据,并且数据量仍然以每天超过90TB的未压缩数据(超过15TB的压缩数据)的速度增长。如何对如此海量的数据进行处理成为企业在未来需要面临的一大难题。
为了应对海量数据处理问题,企业通常以购买更加先进的服务器或者在云计算平台上进行数据处理等增加新的计算资源的方式来处理日益增长的海量数据。不可否认,增加新的高性能的计算资源是应对海量数据的一个重要手段,然而它并不是应对海量数据的唯一手段。本申请将提出一个抽样数据管理系统,该系统帮助使用者对海量数据进行抽样并对抽样数据进行管理,通过只对海量数据中规模可控的一部分子集进行分析,就能够在保证分析与决策质量的同时大大降低对运算资源的需求,从而能够将运算资源投入到更广泛、更复杂的运算中。
虽然和对总体数据进行分析相比,对经过抽样的数据的分析结果会损失一定的精确性。但是,因为数据量过于巨大,对总体数据的分析会出现很多问题,现一一列举如下:首先,由于对总体数据运算需要大量的运算资源,运算十分昂贵,业务人员很难有机会接触数据并掌握进行即席(ad-hoc)查询的必要技能,业务人员往往需要在技术人员的协助下对数据进行探索与分析,而在业务人员将需求表述给技术人员,技术人员再将需求在IT系统中实现的过程中难免会出现偏差甚至错误。其次,由于对总体数据的分析需要很长的时间,使得业务人员难以利用数据对自己的业务假设进行充分的探索与分析。并且,往往由于决策时机的时间限制,使得业务人员经常不得不在没有任何数据支撑的情况下做出决策。第三,因为对总体数据的即席查询需要耗费大量的时间和资源,为了满足业务人员快速的决策需求,往往需要业务人员对可能发生的决策以及可能需要的分析进行预估,再由技术人员预先实现这些需求, 并存储到系统中。然而,预估的需求和实际的需求往往存在偏差,这使得系统耗费了大量的计算和存储资源来生成和保存没有被用来指导决策的无价值的结果。第四,总体数据的数据量伴随着企业业务量的增长而同步增长,当下某些新兴业务的业务飞速发展,数据增长速度往往超过预期,这也就意味着难以对企业信息系统的分析与计算能力进行有效规划,并且随着数据量的飞速增长对总体数据进行即席查询与分析所需的等待时间也会相应增长,从而造成虽然数据在飞速增长,但是数据的可用性却在逐步下降的困局。
本申请提出一个抽样数据管理系统,通过对总体数据中的数据进行抽样与管理,能够在一定程度上解决上述问题。它能够在保证分析质量和决策质量的同时,降低即席查询所需的时间和计算资源,使得系统能够及时的给出即席查询的计算结果,业务人员能够有更多的机会探索数据、验证假设,从而能够发展其数据分析与处理的技能,能够自主处理大部分数据分析工作,减少由于需求表达与理解过程中所产生的错误。并且,业务人员能够根据当下的决策需求自主分析、验证假设,并且及时获得反馈,从而能够刺激业务人员对更多的业务假设进行分析与验证,提升决策质量。另外,由于业务人员能够预期分析系统能够及时的为其决策服务,则他们不会要求系统对一些预估的分析需求提前进行运算。最后,可以利用对抽样样本数据量的控制,确保在业务量飞速增长以及伴之而来的数据量飞速上涨的同时不必对分析系统进行过快的扩容也能够满足分析需求。
使用抽样方法能够使用一个样本的统计量对总体的统计量进行估计是有统计学理论作为支撑的。我们可以以利用简单随机抽样对总体的均值进行估算为例进行讨论。约定样本量由n表示,总体规模由N表示,则简单随机抽样是这样一种抽样方法:来自总体N个元素的由任意可能的n个不完全相同元素组成的子集,都有同样的可能性被选为样本。如果我们约定将大写字母用于总体值和参数,而小写字母用于样本值和估计量。这样Y1,Y2,……YN代表总体中N个元素的y变量值,而y1,y2,……yn则是样本中n个元素的值。则:
总体均值为: 而样本均值为:
总体变量y元素的方差为:
而样本元素的方差则为:
则一个样本量为n的简单随机抽样的样本均值的方差为:
其中f=n/N为抽样比。由于我们的目的是处理海量数据,所以N很大,而f=n/N相 对较小,1-f≈1,可以忽略不计。而S2是总体的参数,在实际应用中是未知量, 是S2的无偏估计量。这样, 和 可以简单用下式来进行估计:
由公式(3)以及公式(4),我们可以得到如下结论:
一、样本越大,估算的越精确。
二、估算的精确程度和抽样比关系不大,主要和样本大小n密切相关。也就是对同一类具有相似特征的数据集,不论该数据集增长到什么规模,我们都可以通过相似的样本大小n控制估算的精度。数据集规模越大,我们越可以通过抽样获益。这个特性可以保证我们以可控的计算资源满足对快速增长的数据的分析需求。
三、估算的精确程度和样本大小的平方根成正比。也就是说,估算的置信区间是估算平均值的±1%所需的样本量估算的置信区间是估算平均值的±10%样本量的100倍,而估算的置信区间是估算平均值的±0.1%所需的样本量估算的置信区间是估算平均值的±10%样本量的10,000倍。估算的精确度提高10倍,处理的数据量需要增加100倍。
上面的讨论是从数学原理上对抽样样本量和估算精度之间的关系。下面也可以用一些真实世界的数据对抽样样本量和估算精度之间的关系做一些研究。这里选取某海外电信运营商移动电话用户在某日的通话清单中记录的通话时长作为数据总体。该数据集合有约450万条记录,如附图1所示,该电信运营商的移动电话用户的单次通话时长不符合正态分布,近似符合幂律分布。我们可以利用计算机模拟对这个数据集合进行抽样的过程,利用不同的样本大小估算的总体均值和实际均值之间的偏差。我们从这个数据集合抽取大小为2,000的样本,计算这2,000个样本的平均值,重复上述抽样1,000次,其中950次抽样样本的平均值落在209~257之间,总体的平均值是233,也就是利用大小为2,000的样本估算总体平均值有95%的可能性落在真实的总体平均值±10%之内,估算均值边际误差范围为真实值的20%。图2给出了样本大小和均值估计偏差范围之间的关系,可以看到当样本大小超过一定数量以后, 估算的均值偏差范围的下降随样本大小的增加缓慢。例如,到当样本大小超过20万条之后,估算的均值才有95%的可能性落在真实总体均值±1%之内,也就是需要100倍的计算资源来将估算的精度提升10倍。
因为我们在对抽样数据进行研究时,不仅仅通过抽样数据对总体的统计量进行估计,也需要通过抽样数据对总体的某些子群的统计特征进行估计,例如我们在对数据根据某些属性进行下钻分析时,可能要对某些只占总体1%的子群的特征进行研究,我们也需要知道通过抽样数据对这些子集数据的统计量估算效果如何。为此,我们设计了一个虚拟的属性变量,总体数据根据这个属性被分为多个子集。其中四个子群A、B、C、D分别大约有230万条记录、29万条记录、3.6万条记录、以及4500条记录。这四个子群的大小分别是总体大小的1/2、1/16、1/128和1/1024。
为了评估抽样对通话时长的各项统计指标的估算影响,按照简单随机抽样的方法重复抽取该数据总体中的包含30万条记录的子集5,000次,评估利用抽样数据对总体统计量估计与真实的总体估计量之间的偏差。由图3A和图3B可以看出,通过30万条记录的抽样数据的统计量对总体数据的平均值和计数值能够进行较为精确的估算。例如,对于子群A、B、C、D的平均值估算结果和真实值之间的偏差分别大部分在±2%、±5%、±10%、±25%之间。而对于子群A、B、C、D的大小估算结果和真实值之间的偏差分别大部分在±1%、±2%、±5%、±10%之间。不过,如图3C所示,利用抽样的方法对各个子集的最大值的估算偏差较大。但是对各个子集的99%分位点的估算质量较好,如图3D所示。上述结论意味着通过抽样对数据的分析能够较为精确的估计总体数据中包括平均值、子集规模等常规的统计指标,不善于估算总体最大值这样极端的指标与特性。但是除此之外,如果希望估算99%分位点这一类的较为极端的指标,抽样的手段也能胜任,给出较为精确的结果。
通过这个利用真实世界数据的模拟可以看出,不论全体数据集合的规模有多大,利用一个大小只有30万的抽样数据子集就能够得到整体的大部分统计量有用的估算,并且能够对其中只占1%左右的子群的统计特征有一个可用的估算。而对只有30万条左右的数据集合的运算与处理,是目前大部分个人电脑甚至平板电脑、智能手机都能胜任的工作。所以,如果能够有效的生成与管理抽样数据,则能够大大降低对运算资源的需求,提升运算效率,提升系统响应的及时性。本申请将提出一个数据抽样系统,它能够有效的管理对海量数据的抽样设计与执行。
发明内容
数据抽样系统或简称抽样系统的目的是对源数据系统中的数据进行抽样,并将抽样后的数据或者统计推断结果推送给使用者或者目标系统使用。这个源数据系统往往是企业的数据仓库系统,但是抽样系统在应用过程中所使用的数据源并不限于数据仓库系统。使用抽样系统所生成数据的目标系统可能是基于数据仓库系统的商业智能应用程序,也可能是其他数据分析应用程序,还可能是分析师或者其他使用者对抽样系统的数据进行分析与即席(ad-hoc)查询。由此可见,抽样系统位于原有的源数据系统和数据应用系统之间,它并不承担数据采集和数据仓储的职责,它的主要职责是对其他系统尤其是数据仓库系统中已经搜集和存储的数据进行抽样,在能够保证具有足够的精度以及足够的决策质量的前提下,通过抽样降低数据应用系统与程序的对运算资源的需求,提升响应的及时性。抽样系统可能是显式的存在的, 也可能是隐式的存在的。即目标系统或使用者可能能够明确意识到抽样系统的存在,显式的知道其所处理的数据不是全体数据而是经过抽样的样本数据集,根据样本数据推断全体数据统计量的工作由目标系统或使用者显式的完成;或者抽样系统对目标系统或使用者是透明的,目标系统或使用者并不能明确的意识到抽样系统的存在,认为系统所提供的数据仍然是源数据系统中的全体数据,根据样本数据推断全体数据统计量的工作由抽样系统完成。
抽样系统由五个子系统组成,它们分别是抽样管理子系统、抽样数据元数据管理子系统、抽样调度子系统、抽样数据存储子系统、抽样数据分发子系统。数据抽样系统的构成及其和周边系统的关系如图4所示。
抽样管理子系统的主要功能是帮助与引导使用者设计抽样规则,为管理员提供抽样规则管理功能以及数据安全管理功能,并且对使用者所使用的计算资源和存储资源进行计费。它由抽样规则设计模块、预抽样与抽样控制模块、抽样管理模块、数据与规则匹配模块、数据安全管理模块、服务计费模块几个部分组成。
抽样数据元数据管理子系统的主要功能是对数据源、抽样数据、抽样规则的描述信息进行存储与管理。它由数据源元数据管理模块、抽样数据数据模型管理模块、抽样规则管理模块、统计推断引擎库、抽样调度信息库、抽样数据访问信息库、抽样数据版本控制与映射模块、源数据特征库几个部分组成。
抽样调度子系统是抽样系统和源数据系统的接口,它管理和调度抽样程序,并且将抽样结果保存在抽样数据存储子系统中,同时它也担负着抽样数据生命周期管理的任务。它由抽样调度引擎、抽样引擎、抽样数据生命周期管理模块几个部分组成。
抽样数据存储子系统是一个数据管理系统,它存储了抽样数据的各个版本。它包含抽样对象库、抽样数据库两个部分。
抽样数据分发子系统是抽样系统和使用抽样数据的目标系统以及使用者之间的接口系统。它可以通过请求应答的方式为其他系统提供数据。使用者也可以利用抽样系统自带的数据分析平台访问与分析抽样数据。它由统计推断引擎、数据与服务应答接口、抽样数据分析平台几个部分组成。
实现方式
抽样系统的几个子系统的构成如附图5所示,下面对抽样系统的几个子系统分别详细介绍。
1.抽样管理子系统的主要功能是帮助与引导使用者设计抽样规则,为管理员提供抽样规则管理功能以及数据安全管理功能,并且对使用者所使用的计算资源和存储资源进行计费。
1.1抽样规则设计模块:本模块提供一个帮助使用者进行抽样规则设计的人机交互界面。使用者根据自己研究问题的性质设计不同的抽样方案。抽样设计模块能够帮助使用者按照如下步骤完成抽样规则设计。
101.在进行抽样规则设计时,使用者需要定义抽样的数据总体。例如,在前面讨论的例子中,使用者的目的是研究该运营商某日手机通话时长的统计特征,则抽样总体是当日该运营商的所有手机通信话单。如果使用者研究的目的是当日活跃用户的行为特征,则抽样总体应当是当日所有活跃的手机用户。而如果使用者研究的目的是当月所有新增用户的行为特征,则抽样总体应当是所有当月所有带有新增用户标识的用户。从数据总体经过抽样获得的子集 在下文中被称作抽样对象。抽样对象将作为关联源数据系统中其他数据属性的基础。
102.使用者需要指定抽样对象待研究的数据属性。这些数据属性可以是数据的逻辑属性,例如“通话时长”,而系统能够根据元数据管理子系统中记录的源数据的属性字典中的信息将逻辑属性映射为源数据系统中的物理属性。使用者所指定的数据属性也可以是数据的物理属性,例如cdr0105数据库表中的duration字段。如果数据属性来自多个数据表,则使用者应当指定各个不同表之间关联的主键,缺省为将抽样对象作为各个表之间关联的主键。抽样对象和它们的属性一起构成了抽样数据集。
103.使用者还需要指定抽样对象及其关联属性的范围及其他限制条件。例如,源系统中存有用户五年的通话清单数据,但是使用者只关注用户2011年的通话特征,则使用者应限制只对2011年的通话清单进行抽样。
104.抽样引擎触发规则设置。抽样系统支持一次抽样与持续性抽样两种不同的抽样模式。一次抽样是系统提供给使用者一次性的根据历史数据生成的抽样数据集。而持续性抽样是当有新数据到达时,系统将根据抽样规则的设置自动更新抽样数据集。对于持续性抽样,使用者应当设置抽样程序触发规则或者调度规则,当未来满足条件的数据进入源系统或者每经过特定的时间周期,抽样系统会调度运行抽样程序从源系统中抽取数据。
105.使用者需要指定抽样系统和其他系统的接口方式。这个接口方式可能是数据库表,也可能是对其他系统的服务请求响应接口。
1.2预抽样与抽样控制模块。如前面讨论所述,抽样数据对总体数据的统计特征的估计的精确度和总体数据的数据分布特征密切相关。使用者需要对数据的分布情况有一定了解才能够更好的设计抽样方案。为此,抽样系统提供如下功能:
201.根据使用者设计的抽样规则,抽取少量样本数据,根据样本数据估算总体数据的均值、方差等对抽样设计相关的统计量,并且根据样本数据估算总体数据各个子群的数量分布情况以及各个统计量的分布情况,并将这些估算结果展现给使用者。
202.或者不必执行步骤201的预抽样操作,系统在元数据库中保存了一些关键属性的统计量的分布情况,系统将这些信息展现给使用者供设计抽样方案时参考。
203.或者不必执行上述201、202两个步骤,系统支撑使用者根据自己的经验设计抽样方案。
204.根据对各个统计量的估算结果,使用者设定抽样样本大小。样本大小设定有两种方式:一种是设定抽样比例、另一种是设定抽样样本大小的绝对值。样本大小直接决定了抽样和分析所需要的计算资源、根据样本进行推断结果的精确度、以及分析的及时性。
205.使用者根据研究目的,设定抽样方法。其中最简单的一种抽样方法为前面讨论的简单随机抽样。使用者可选的其他抽样方法包括:比例分层抽样,非比例分层抽样,整群抽样,多阶段抽样等。然而,对于后面几种抽样方法,需要更为复杂的计算方法由抽样样本的统计特征推断总体数据的统计特征,系统将指导使用者设计相应的统计推断引擎。
206.使用者为了平衡运算的及时性和估算的精确性之间的关系,使用者可以对同一个抽样规则设定抽样样本大小不同的多个版本。在对较小的样本经过数据探索之后,使用者对于数据总体有一个初步概念,这时使用者希望使用更多的计算资源,忍受更长的等待时间以得到更为精确的估算结果,或者使用者希望对于某个较小的子群进行深入研究,为此使用者可 以切换到更大的样本上进行数据分析。抽样控制系统能够帮助使用者设计同一抽样规则下大小与精度各不相同的多个版本。
1.3抽样管理模块:抽样管理模块需要完成以下功能:
a).对于持续性抽样以及需要耗费大量资源的一次性抽样,在使用者设计好抽样规则之后,需要将抽样规则提交给系统管理员,经过系统管理员的批准才能将其加入抽样调度列表中。
b).为了验证对整体数据特征估算的准确性,使用者可能使用相同的抽样规则抽取若干份相互独立的样本,使用相同的分析方法对抽样的各个版本进行相互独立的分析。抽样管理模块将完成对同一个抽样规则的不同版本的设计与管理工作。
c).为了平衡估算精度和估算的及时性之间的关系,使用者对同一个抽样规则设计了样本规模大小不同的多个版本。抽样管理模块将完成对同一个抽样规则的大小不同的多个版本的设计与管理工作。
1.4数据匹配与规则匹配与推荐模块:对全体数据的分析是对数据的唯一版本进行分析。而与对总体数据的分析不同,对抽样数据的分析意味着对同一数据的不同版本进行分析。这有可能造成抽样工作的重复与计算资源的浪费,数据的重复与存储资源的浪费,以及基于数据的应用重复开发与开发资源的浪费。并且,在海量数据中的抽样是一项耗时的工作,抽样规则设计完毕不一定能立刻得到抽样数据集。基于上述考虑,系统中包含了一个数据匹配与规则匹配模块,它将使用者设计的抽样规则与系统中现有的抽样规则和数据集进行比较,找到最为相似的抽样规则集与数据集,并且将其推荐给使用者。如果使用者认为已有的数据集和抽样规则能够满足自身的分析需求,则他将放弃自己的抽样规则,转而使用既有的抽样数据集和抽样规则获取抽样数据。
1.5数据安全模块:管理使用者对数据的访问权限,避免未经授权的数据访问。
1.6服务计费模块:对使用者耗费的系统资源进行计费。使用者分析数据的目的是为了指导决策,而对数据精度的需求应该是和决策的目的相匹配的。抽样系统中引入计费系统,对使用者耗费的计算资源、存储资源进行计费,能够促进使用者在设计抽样规则时所申请的资源和决策需求相匹配,从而实现更有效的资源配置。
2.抽样数据元数据管理子系统的主要功能是对数据源、抽样数据、抽样规则的描述信息进行存储与管理的子系统。它由如下几个部分组成:
2.1数据源元数据管理模块:记录并管理作为抽样数据来源的数据源的元数据信息,以作为抽样设计和抽样调度的基础。
2.2抽样数据数据模型管理模块:对总体数据进行抽样的结果数据将存储在抽样数据库中,而抽样系统的抽样数据元数据管理系统的数据模型管理模块将对抽样数据的逻辑模型和物理模型进行管理。
2.3抽样规则管理模块:对抽样规则进行记录与管理,其主要完成以下功能:
a).将使用者定义的抽样规则以xml的形式保存在抽样规则库中;
b).根据数据源的数据系统特征,数据源的数据模型,将抽样规则转换为可以在数据源系 统中运行的脚本或程序,并将其保存在抽样规则库中。
2.4统计推断引擎信息库:由于抽样规则设计的不同,如何利用通过不同抽样规则以及抽样方法得到的样本数据集推断总体数据的统计特征也有不同的方法,统计推断引擎信息库记录了一系列基本的统计推断工具,以及如何将基本的统计推断工具配以合适的参数以及必要的组合形成针对特定抽样规则与方法的统计推断引擎。
2.5抽样调度信息库:记录抽样调度引擎对抽样程序的调度执行状态以及执行结果的日志信息。
2.6抽样数据访问信息库:记录使用者或者其他系统对各个抽样数据集的访问情况,作为抽样数据结果集生命周期管理的依据,以及作为抽样规则推荐的数据基础。
2.7抽样数据版本控制与映射模块:同一个抽样规则由于多次调度执行而产生多个不同版本的抽样数据集,同一个抽样规则存在不同精度、不同样本大小的多个版本的抽样数据集。如果不能有效的对抽样数据的这些不同的版本进行控制,将造成使用者和基于抽样数据集的应用程序的混乱。抽样数据版本控制与映射模块的主要功能是对同一抽样规则所生成的不同抽样数据版本进行管理,并且将抽样结果的不同版本根据应用的需求映射成使用者或者应用程序能够使用的视图或者形式。使得不同版本的抽样数据对使用者与应用程序可见、可用、可控。
2.8源数据特征库:如前所述,通过样本数据对总体数据的统计量进行估算过程中,包括总体数据的均值、方差在内的统计量会对估算的精确程度产生影响。在“预抽样与抽样管理模块”中,我们通过预抽样的方式对总体数据的这些统计量进行估算以指导抽样设计。而另外一种方式是定期对作为抽样总体数据的源数据一些重要统计特征进行计算,并将它储存在源数据特征库中,以备抽样设计时参考。
3.抽样调度子系统是抽样系统和源数据系统的接口,它管理和调度抽样程序,并且将抽样结果保存在抽样数据存储子系统中,同时它也担负着抽样数据生命周期管理的任务。它由如下几个部分组成:
3.1抽样调度引擎:抽样调度引擎的主要功能是按照使用者以及系统管理员预先设定的规则调度执行抽样引擎,并监控抽样引擎的执行情况。该调度引擎可能是一个独立的调度引擎,也可能是作为数据仓库系统或者商业智能系统的调度引擎中的一部分。抽样调度引擎根据抽样引擎的调度执行条件是否满足以及抽样程序的优先级执行抽样引擎,抽样调度引擎支持在以下几种情况下触发运行抽样引擎:
a)事件触发:抽样调度引擎在特定事件发生的情况下触发运行抽样引擎,例如,数据的到达、数据更新等……
b)时间触发:抽样调度引擎按照事先指定的时间周期规则定期执行抽样引擎;
c)请求触发:抽样调度引擎只有当使用抽样数据集的应用程序发出数据请求时才执行抽样程序,为应用程序准备数据;
d)手动触发:当使用者在进行即席查询、对数据进行探索时,他们临时提出数据抽样的要求,从而手动触发抽样引擎。
3.2抽样引擎:抽样引擎是根据用户定义的抽样规则抽取数据源数据中的一个子集并且将 结果保存在抽样系统中的程序,抽样引擎的触发与执行是在抽样调度引擎的调度下进行的。抽样引擎需要建立并维系和源系统的数据接口,根据抽样规则在源系统上执行抽样脚本或程序,监控抽样脚本或程序执行情况,并且将监控结果反馈给抽样调度引擎。
3.3抽样数据生命周期管理模块:抽样数据的生命周期分为四个阶段:设计、部署、服务、消亡。在设计阶段,使用者设计抽样规则以及调度规则,并且将其提交给管理员。在部署阶段,管理员将经过验证的抽样规则提交抽样调度引擎进入调度序列,并且将该抽样规则的相关信息在系统中发布供相关人员参考。在服务阶段,抽样系统通过抽样调度引擎抽取源系统中的数据,并且将数据提交给使用者或者应用程序使用。抽样数据生命周期管理模块监控并发现那些长期未被访问的抽样数据集或者抽样规则,将长期未被访问的数据或规则归档,并且将其从服务列表中删除。
4.抽样数据存储子系统是一个数据管理系统,它存储了抽样数据的各个版本。它由如下几个部分组成:
4.1抽样对象库:因为抽样数据是从数据总体中随机选取的一个子集,所以即使是针对相同的数据总体使用相同的抽样规则,每次抽样也会得到不同的抽样子集。抽样对象库保留了从数据总体中进行抽样结果的历史快照,这个快照可能是所有产品的一个子集、所有用户的一个子集、或者所有操作日志的一个子集等,这些数据将作为关键字关联数据源系统的其他信息。抽样系统保留历史抽样对象一方面能够利用历史抽样对象关联数据源的数据从而方便的复现历史的分析结果。另一方面对于某些需要持续更新信息的数据分析,可以利用历史的抽样对象集和新的数据进行关联,从而保证分析的连贯性。例如,对去年活跃用户在今年的消费情况的研究就需要维系一个对去年活跃用户的抽样名单,利用该名单研究这部分用户今年的消费数据。历史上多次抽样的不同版本的抽样对象都储存在抽样对象库中,而不同版本的元数据信息则储存在抽样数据元数据管理子系统中。这些元数据信息包括,抽样对象的数据源、抽样规则、抽样时间、版本号、样本大小、抽样程序执行结果、抽样对象数据文件名称。
4.2抽样数据库:抽样数据库中记录了抽样对象集以及和抽样对象相关联的属性数据集,抽样数据库中的数据是抽样系统为其他应用系统提供数据服务以及为使用者提供查询与分析服务的数据基础。
5.抽样数据分发子系统是抽样系统和使用抽样数据的目标系统以及使用者之间的接口系统。它可以通过请求应答的方式为其他系统提供数据。使用者也可以利用抽样系统自带的数据分析平台访问与分析抽样数据。它由如下几个部分组成:
5.1统计推断引擎:统计推断引擎提供根据抽样规则以及抽样数据库中的抽样数据推断总体数据统计特征的程序。并且,统计推断引擎能够给出总体数据统计特征的95%置信区间的取值范围,置信区间大小是一个可以设定的参数。统计推断引擎支持多种根据抽样数据推断整体的方法:
a).利用内置的数学公式进行统计推断:对于使用一些相对简单的抽样方式得到的抽样样本推断常用的统计指标已经在数学上有了充分的研究,统计推断引擎使用相应的数学公式推断总体数据的特征。例如,对于使用简单随机抽样样本推断总体数据的均值、子群的比例分布等问题就属于这个范畴。
b).使用Monte Carlo或者再抽样(resampling)的方式进行统计推断:利用计算机的计算能力,使用模拟仿真等形式对总体数据的统计特征进行推断。
c).使用者定制的统计推断引擎:对于某些使用者定制的较为复杂的抽样规则,使用者希望能够定制统计推断引擎。统计推断引擎模块提供接口,使得使用者能够将他们定制设计的统计推断引擎注册到数据抽样系统中,并且系统能够在必要时调用相应的统计推断引擎。
不论用何种方式获得统计推断结果,推断引擎都将提供有关统计量的如下信息:统计量名称、统计量估计值、统计量95%置信区间取值范围、统计量估计方法、样本大小。
5.2数据与服务应答接口:服务应答接口接收并解析外部应用系统的应用程序提出的数据请求,并对请求作出应答,按照约定为外部程序提供数据与服务。数据抽样系统作为企业整个信息系统中的一部分,位于数据源和数据应用程序之间,原来的由数据源响应的数据应用程序的数据请求现在需要由数据抽样系统代为响应。所以由数据抽样系统提供的数据应答分为两种形式:
a).显式的:应用程序或者最终用户知道数据抽样系统的存在,并且知道其所获得的数据是经过抽样的数据而不是全体数据。数据与服务应答接口根据请求和抽样数据的元数据信息为应用程序提供抽样数据库中未经加工的抽样数据访问,而如何对这些抽样数据进行处理和解读是应用程序或者最终用户的任务。
b).隐式的:应用程序或者最终用户不知道数据抽样系统的存在,数据抽样系统对应用程序而言是透明的。例如,原来有一个使用源数据生成报表的报表生成程序,它是基于全体数据生成数据的汇总描述报表。而当引入数据抽样系统之后,该应用程序并不知道该系统的存在,并不知道目前是基于抽样数据集而不是全体数据的分析,这时抽样数据如果不经过一定的处理则报表生成程序所生成的报表中诸如活跃用户数、总收入等指标必然是错误的。数据与服务应答接口将调用统计推断引擎,利用抽样数据估算总体数据的统计特征,并且将估算结果返回给提出数据请求的应用程序。
5.3抽样数据分析平台:为使用者提供即席查询与分析的交互平台。这个平台提供对于抽样数据库的连接与访问功能。它能够解析并且处理使用者提交的类-SQL语句满足使用者抽样数据的即席查询功能。从这个意义上说,这个数据分析平台类似于对SQL进行处理的IDE集成开发环境。但是除此之外,抽样数据分析平台还能够提供以下功能:
a).能够方便在同一抽样规则获得的不同版本以及不同精度的抽样数据集之间切换,比较和验证同一即席查询在不同版本以及不同精度的抽样数据集的计算结果;
b).能够解析统计推断引擎所提供的有关统计结果推断的附加信息,并且将其以合适的方式展示给使用者。
c).能够记录各个抽样数据集的访问信息,并且将其提交给抽样数据元数据管理子系统进行保存,为抽样数据的生命周期管理提供必要的信息。
上文描述了抽样系统的体系架构以及构成抽样系统的各个组件的功能描述,下面通过一个典型的应用场景对系统各个组件之间的交互关系进行描述,组件之间的交互关系如图5所示,下面是对交互关系的描述。
(1)使用者利用1.1抽样规则设计模块通过指定数据总体、数据属性、抽样引擎触发规则等设定抽样规则。
(2)使用者对数据源以及数据总体的信息由2.1数据源元数据管理模块提供。
(3)使用者通过1.2预抽样与抽样控制模块对数据进行预抽样从而对数据总体的统计特征有一个初步了解,据此设定抽样方法以及样本大小。
(4)根据使用者设计的抽样规则,系统利用1.4数据匹配与规则匹配与推荐模块为其推荐系统中已有的抽样规则以及结果数据集。经使用者判断,系统推荐的抽样规则和结果数据集不能满足其分析需求,需要重新设计抽样规则。
(5)使用者通过1.3抽样管理模块将其设定的抽样规则提交管理员,管理员审批通过使用者的抽样规则。
(6)系统利用2.3抽样规则管理模块将使用者提交的抽样规则写入2.抽样数据元数据管理子系统。同时还利用2.2抽样数据数据模型管理模块将抽样数据的数据模型写入系统。
(7)3.1抽样调度引擎根据抽样规则库中的抽样规则监控是否满足触发运行抽样引擎的条件。
(8)当特定条件满足,例如,时间到达每天凌晨2时,3.1抽样调度引擎调度运行相应的3.2抽样引擎
(9)抽样引擎首先根据抽样规则获取本次抽样的抽样对象集合,并且将其记录到4.1抽样对象库中。
(10)抽样引擎根据以抽样对象库中的抽样对象作为主键,关联源数据系统中相应的属性数据集合抽取数据,并且将抽样数据记录到4.2抽样数据库中。
(11)3.1抽样调度引擎根据抽样引擎返回的任务执行信息在2.5抽样调度信息库中记录本次抽样任务的完成情况。
(12)如果本次抽样任务顺利完成,则3.1抽样调度引擎在2.7抽样数据版本控制与映射模块中记录本次抽样对应的版本信息以及对应的数据文件位置。
(13)使用者以两种方式利用抽样结果,其一是在5.3抽样数据分析平台上提交SQL查询请求,进行即席查询和数据探索。
(14)第二种方式是使用者旧有系统中拥有一个统计报表应用程序,使用者希望使用抽样数据而不是全体数据生成报表以节约计算资源,但是使用者希望这个改变对报表应用程序而言是透明的,报表生成程序应该做尽可能少的改动。5.1统计推断引擎利用抽样结果推断总体数据的统计特征,并且(15)通过数据与服务应答接口为该统计报表应用程序提供数据服务。
(16)抽样系统将使用者通过即席查询以及报表应用程序对抽样数据集的访问记录到2.6抽样访问信息库中。
(17)并且对于每次抽样与访问,1.6服务计费模块计算所耗费的资源,并且向使用者提交收费清单。
(18)随着时间的推移,2.6抽样访问信息库中的信息显示该抽样数据集已经长期没有得到被访问,3.3抽样数据生命周期管理模块将该抽样数据集归档,并且将其状态变为归档或者消亡状态。
附图说明
图1.海外某电信运营商某日通话时长分布情况
图2.对海外运营商日通话清单抽样模拟,样本大小和偏差范围之间的关系图。
图3.模拟抽样推断的统计特征值和真实的统计特征值之间偏差分布图。图3A、图3B、图3C、图3D分别为对平均值、子群规模、最大值、99%分位点的估算偏差。
图4.数据抽样系统的架构以及和外围系统之间的关系
图5.数据抽样系统的架构以及系统组件之间的交互关系。
Claims (7)
1.一种用于数据仓库系统、商务智能以及其他和海量数据分析与处理相关的领域中对海量数据进行抽样以及抽样数据管理的方法与系统,通过对数据抽样的方法降低分析与处理海量数据所需要的计算资源。
2.基于权利要求1的方法所构建的系统,它能够帮助使用者设计抽样规则,根据抽样规则调度抽样引擎对数据抽样,管理抽样数据以及利用抽样数据为其他系统提供数据支撑,其特征在于,包括以下几个子系统或模块:
抽样管理子系统、
抽样数据元数据管理子系统、
抽样调度子系统、
抽样数据存储子系统、
抽样数据分发子系统。
3.如权利要求2所述,构建抽样管理子系统,其主要功能是帮助与引导使用者设计抽样规则,为管理员提供抽样规则管理功能以及数据安全管理功能,并且对使用者所使用的计算资源和存储资源进行计费,其特征在于,包括以下几个模块:
抽样规则设计模块、
预抽样与抽样控制模块、
抽样管理模块、
数据与规则匹配模块、
数据安全管理模块、
服务计费模块。
4.如权利要求2所述,构建抽样数据元数据管理子系统,其主要功能是对数据源、抽样数据、抽样规则的描述信息进行存储与管理,其特征在于,包括以下几个模块:
数据源元数据管理模块、
抽样数据数据模型管理模块、
抽样规则管理模块、
统计推断引擎库、
抽样调度信息库、
抽样数据访问信息库、
抽样数据版本控制与映射模块、
源数据特征库。
5.如权利要求2所述,构建抽样调度子系统,其主要功能是抽样系统和源数据系统的接口,它管理和调度抽样程序,并且将抽样结果保存在抽样数据存储子系统中,同时它也担负着抽样数据生命周期管理的任务,其特征在于,包括以下几个模块:
调度引擎、
抽样引擎、
抽样数据生命周期管理模块。
6.如权利要求2所述,构建抽样数据存储子系统,其功能是对数据进行存储与管理,它存储了抽样数据的各个版本,其特征在于,包括以下几个模块:
抽样对象库、
抽样数据库。
7.如权利要求2所述,构建抽样数据分发子系统,其功能是提供抽样系统和使用抽样数据的目标系统以及使用者之间的接口,通过请求应答的方式为其他系统提供数据,也可以为使用者提供自带的数据分析平台访问与分析抽样数据,其特征在于,包括以下几个模块:
统计推断引擎、
数据与服务应答接口、
抽样数据分析平台。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011102334728A CN102262678A (zh) | 2011-08-16 | 2011-08-16 | 一个对海量数据进行抽样以及抽样数据管理系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011102334728A CN102262678A (zh) | 2011-08-16 | 2011-08-16 | 一个对海量数据进行抽样以及抽样数据管理系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102262678A true CN102262678A (zh) | 2011-11-30 |
Family
ID=45009306
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2011102334728A Pending CN102262678A (zh) | 2011-08-16 | 2011-08-16 | 一个对海量数据进行抽样以及抽样数据管理系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102262678A (zh) |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103823670A (zh) * | 2013-11-28 | 2014-05-28 | 云南电网公司文山供电局 | 一种基于数据库的多任务、可配置、自动统计数据方法 |
CN104881475A (zh) * | 2015-06-02 | 2015-09-02 | 北京京东尚科信息技术有限公司 | 一种用于大数据随机抽样的方法和系统 |
CN105844107A (zh) * | 2016-03-31 | 2016-08-10 | 百度在线网络技术(北京)有限公司 | 数据处理方法和装置 |
CN106649723A (zh) * | 2016-12-23 | 2017-05-10 | 河海大学 | 一种基于改进的水塘抽样的大数据集多遍随机抽样方法 |
CN106897883A (zh) * | 2017-01-23 | 2017-06-27 | 武汉奇米网络科技有限公司 | 一种自动化商品抽检方法及系统 |
CN107103542A (zh) * | 2016-02-23 | 2017-08-29 | 平安科技(深圳)有限公司 | 投保单抽样方法、装置和系统 |
CN107153700A (zh) * | 2017-05-10 | 2017-09-12 | 美亚联创(北京)科技有限公司 | 一种人口调查地图抽样管理系统 |
CN107506383A (zh) * | 2017-07-25 | 2017-12-22 | 中国建设银行股份有限公司 | 一种审计数据处理方法和计算机设备 |
CN108595625A (zh) * | 2018-04-23 | 2018-09-28 | 平安科技(深圳)有限公司 | Bi工具的运维方法、装置、计算机装置及存储介质 |
CN108694212A (zh) * | 2017-04-11 | 2018-10-23 | 腾讯科技(深圳)有限公司 | 一种样本对象的处理方法及装置 |
WO2019085824A1 (zh) * | 2017-10-31 | 2019-05-09 | 华为技术有限公司 | 移动通信系统扩容方法、设备及存储介质、程序产品 |
CN109920025A (zh) * | 2019-01-31 | 2019-06-21 | 甘肃省地震局 | 一种海量数据在时间域的高效分层抽样绘图方法及系统 |
CN110059083A (zh) * | 2019-04-24 | 2019-07-26 | 北京金堤科技有限公司 | 一种数据评价方法、装置和电子设备 |
CN110399413A (zh) * | 2019-07-04 | 2019-11-01 | 博彦科技股份有限公司 | 数据抽样方法、装置、存储介质和处理器 |
CN111131344A (zh) * | 2018-10-30 | 2020-05-08 | 北京天诚同创电气有限公司 | 能源互联网云平台数据传输和存储的方法和系统 |
CN111143577A (zh) * | 2019-12-27 | 2020-05-12 | 北京百度网讯科技有限公司 | 数据标注方法、装置和系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040030523A1 (en) * | 2000-08-30 | 2004-02-12 | Paul Banfer | Materials analytical review and reporting system |
CN1790344A (zh) * | 2004-12-15 | 2006-06-21 | 北京交通大学 | 一种城市道路交通流数据抽样存储方法与装置 |
-
2011
- 2011-08-16 CN CN2011102334728A patent/CN102262678A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040030523A1 (en) * | 2000-08-30 | 2004-02-12 | Paul Banfer | Materials analytical review and reporting system |
CN1790344A (zh) * | 2004-12-15 | 2006-06-21 | 北京交通大学 | 一种城市道路交通流数据抽样存储方法与装置 |
Cited By (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103823670A (zh) * | 2013-11-28 | 2014-05-28 | 云南电网公司文山供电局 | 一种基于数据库的多任务、可配置、自动统计数据方法 |
CN103823670B (zh) * | 2013-11-28 | 2017-02-22 | 云南电网公司文山供电局 | 一种基于数据库的多任务、可配置、自动统计数据方法 |
CN104881475A (zh) * | 2015-06-02 | 2015-09-02 | 北京京东尚科信息技术有限公司 | 一种用于大数据随机抽样的方法和系统 |
CN107103542B (zh) * | 2016-02-23 | 2021-05-14 | 平安科技(深圳)有限公司 | 投保单抽样方法、装置和系统 |
CN107103542A (zh) * | 2016-02-23 | 2017-08-29 | 平安科技(深圳)有限公司 | 投保单抽样方法、装置和系统 |
CN105844107A (zh) * | 2016-03-31 | 2016-08-10 | 百度在线网络技术(北京)有限公司 | 数据处理方法和装置 |
CN105844107B (zh) * | 2016-03-31 | 2019-10-15 | 百度在线网络技术(北京)有限公司 | 数据处理方法和装置 |
CN106649723A (zh) * | 2016-12-23 | 2017-05-10 | 河海大学 | 一种基于改进的水塘抽样的大数据集多遍随机抽样方法 |
CN106897883A (zh) * | 2017-01-23 | 2017-06-27 | 武汉奇米网络科技有限公司 | 一种自动化商品抽检方法及系统 |
CN108694212A (zh) * | 2017-04-11 | 2018-10-23 | 腾讯科技(深圳)有限公司 | 一种样本对象的处理方法及装置 |
CN107153700A (zh) * | 2017-05-10 | 2017-09-12 | 美亚联创(北京)科技有限公司 | 一种人口调查地图抽样管理系统 |
CN107506383A (zh) * | 2017-07-25 | 2017-12-22 | 中国建设银行股份有限公司 | 一种审计数据处理方法和计算机设备 |
WO2019085824A1 (zh) * | 2017-10-31 | 2019-05-09 | 华为技术有限公司 | 移动通信系统扩容方法、设备及存储介质、程序产品 |
US10887774B2 (en) | 2017-10-31 | 2021-01-05 | Huawei Technologies Co., Ltd. | Mobile communications system expansion method and device, storage medium, and program product |
CN108595625A (zh) * | 2018-04-23 | 2018-09-28 | 平安科技(深圳)有限公司 | Bi工具的运维方法、装置、计算机装置及存储介质 |
WO2019205346A1 (zh) * | 2018-04-23 | 2019-10-31 | 平安科技(深圳)有限公司 | Bi工具的运维方法、装置、计算机装置及存储介质 |
CN111131344A (zh) * | 2018-10-30 | 2020-05-08 | 北京天诚同创电气有限公司 | 能源互联网云平台数据传输和存储的方法和系统 |
CN109920025A (zh) * | 2019-01-31 | 2019-06-21 | 甘肃省地震局 | 一种海量数据在时间域的高效分层抽样绘图方法及系统 |
CN109920025B (zh) * | 2019-01-31 | 2023-10-27 | 甘肃省地震局 | 一种海量数据在时间域的高效分层抽样绘图方法及系统 |
CN110059083A (zh) * | 2019-04-24 | 2019-07-26 | 北京金堤科技有限公司 | 一种数据评价方法、装置和电子设备 |
CN110399413A (zh) * | 2019-07-04 | 2019-11-01 | 博彦科技股份有限公司 | 数据抽样方法、装置、存储介质和处理器 |
CN111143577A (zh) * | 2019-12-27 | 2020-05-12 | 北京百度网讯科技有限公司 | 数据标注方法、装置和系统 |
CN111143577B (zh) * | 2019-12-27 | 2023-06-16 | 北京百度网讯科技有限公司 | 数据标注方法、装置和系统 |
US11860838B2 (en) | 2019-12-27 | 2024-01-02 | Beijing Baidu Netcom Science And Teciinology Co., Ltd. | Data labeling method, apparatus and system, and computer-readable storage medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102262678A (zh) | 一个对海量数据进行抽样以及抽样数据管理系统 | |
Battle et al. | Characterizing exploratory visual analysis: A literature review and evaluation of analytic provenance in tableau | |
Calabrese et al. | ctmm: an R package for analyzing animal relocation data as a continuous‐time stochastic process | |
US7937416B2 (en) | Business intelligence data repository and data management system and method | |
Macintosh | A contextual model of information systems | |
KR20190108559A (ko) | 예측 데이터 분석을 위한 시스템 및 관련 방법 및 장치 | |
Teichroew | A survey of languages for stating requirements for computer-based information systems | |
CN112364094A (zh) | 数据仓库可视化建模方法、装置及介质 | |
CN101151592A (zh) | 按需解串行化数据对象 | |
CA2417765A1 (en) | Budget planning | |
Fernandes et al. | Performance evaluation of software development teams: a practical case study | |
CN102789487A (zh) | 数据查询检索处理装置和数据查询检索处理方法 | |
Hu | Information lifecycle modeling framework for construction project lifecycle management | |
Khojasteh et al. | A study of the influencing technological and technical factors successful implementation of business intelligence system in internet service providers companies | |
CN104123599A (zh) | 一种基于指标定义的数据推演预测方法 | |
Ariawan et al. | Design of Library Data Warehouse Using OLTP Result of Services Analysis | |
Eddins et al. | Using modeling and simulation in the analysis and design of information systems | |
Hammad et al. | Knowledge discovery in data: A case study | |
Heiskanen | Data Quality in a Hybrid MDM Hub | |
Azadeh et al. | Evaluating simulation software using fuzzy analytical hierarchy process | |
Aziz et al. | Using quantitative approaches to enhance construction performance through data captured from mobile devices | |
RU2733067C1 (ru) | Система автоматизации формирования и принятия управленческих решений по функционированию военно-строительного комплекса | |
Kanchymalay et al. | The Extent of ERP Customization towards User Satisfaction in Daily Operation for Manufacturing Companies. | |
Datla | Software Performance Workload Modelling | |
Firdaus et al. | Information Technology on Employee’s Daily Evaluation System Software |
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: 20111130 |