不确定性数据管理技术研究综述.docx
《不确定性数据管理技术研究综述.docx》由会员分享,可在线阅读,更多相关《不确定性数据管理技术研究综述.docx(27页珍藏版)》请在冰豆网上搜索。
不确定性数据管理技术研究综述
不确定性数据管理技术研究综述
周傲英1)金澈清1)王国仁2)李建中3)
1)(上海高可信计算重点实验室华东师范大学上海200062)
2)(东北大学信息科学与工程学院沈阳110004)
3)(哈尔滨工业大学计算机科学与技术学院哈尔滨150001)
摘要:
随着数据采集和处理技术的进步,人们对数据的不确定性的认识也逐步深入。
在诸如经济、军事、物流、金融、电信等领域的具体应用中,数据的不确定性普遍存在。
不确定性数据的表现形式多种多样,它们可以以关系型数据、半结构化数据、流数据或移动对象数据等形式出现。
目前,根据应用特点与数据形式差异,研究者已经提出了多种针对不确定数据的数据模型。
这些不确定性数据模型的核心思想都源自于可能世界模型。
可能世界模型从一个或多个不确定的数据源演化出诸多确定的数据库实例,称为可能世界实例,而且所有实例的概率之和等于1。
尽管可以首先分别为各个实例计算查询结果,然后合并中间结果以生成最终查询结果,但由于可能世界实例的数量远大于不确定性数据库的规模,这种方法并不可行。
因此,必须运用排序、剪枝等启发式技术设计新型算法,以提高效率。
本文介绍了不确定性数据管理技术的概念、特点与挑战,综述了数据模型、数据预处理与集成、存储与索引、查询处理等方面的工作。
关键词不确定性数据;可能世界模型;数据集成;世系;不确定数据流
中图法分类号TP393文献标识码:
A
ASurveyontheManagementofUncertainData
ZHOUAo-yingJINChe-QingWANGGuo-RenLIJian-Zhong
(ShanghaiKeyLabofTrustworthyComputing,EastChinaNormalUniversity,Shanghai200062)
(SchoolofInformationScienceandEngineering,NortheasternUniversity,Shenyang110004)
(SchoolofComputerScienceandTechnology,HarbinInstituteofTechnology,Harbin150001)
Abstract:
Theimportanceofthedatauncertaintyisstudieddeeplywiththerapiddevelopmentindatagatheringandprocessinginvariousfields,inclusiveofeconomy,military,logistic,financeandtelecommunication,etal.Uncertaindatahasmanydifferentstyles,suchasrelationaldata,semi-structuredata,streamingdata,andmovingobjects.Accordingtoscenariosanddatacharacteristics,tensofdatamodelshavebeendeveloped,stemmingfromthecorepossibleworldmodelthatcontainsahugenumberofthepossibleworldinstanceswiththesumofprobabilitiesequalto1.However,thenumberofthepossibleworldinstancesisfargreaterthanthevolumeoftheuncertaindatabase,makingitinfeasibletocombinemedialresultsgeneratedfromallofpossibleworldinstancesforthefinalqueryresults.Thus,someheuristictechniques,suchasordering,pruning,mustbeusedtoreducethecomputationcostforthehighefficiency.Thispaperintroducestheconcepts,characteristicsandchallengesinuncertaindatamanagement,proposestheadvanceoftheresearchonuncertaindatamanagement,includingdatamodel,preprocessing,integrating,storage,indexing,andqueryprocessing.
Keywordsuncertaindata,possibleworldmodel;dataintegration;lineage;uncertainstream
1引言
近四十年来,传统的确定性数据(deterministicdata)管理技术得到了极大的发展,造就了一个几百亿的数据库产业。
数据库技术和系统已经成为建设信息化社会基础设施的重要支撑。
在传统数据库的应用中,数据的存在性和精确性均确凿无疑。
近年来,随着技术的进步和人们对数据采集和处理技术理解的不断深入,不确定性数据(uncertaindata)得到广泛的重视。
在许多现实的应用中,例如:
经济、军事、物流、金融、电信等领域,数据的不确定性普遍存在,不确定性数据扮演关键角色。
传统的数据管理技术却无法有效管理不确定性数据,这就引发了学术界和工业界对研发新型的不确定性数据管理技术的兴趣。
不确定性数据的产生原因比较复杂。
可能是原始数据本来就不准确或是采用了粗粒度的数据集合,也可能是原始数据是为了满足特殊应用目的或是经过处理缺失值或者数据集成而生成的。
(i)原始数据不准确。
这是产生不确定性数据最直接的因素。
首先,物理仪器所采集的数据的准确度受仪器的精度制约。
其次,在网络传输过程(特别是无线网络传输)中,数据的准确性受到带宽、传输延时、能量等因素影响。
最后,在传感器网络应用[1-2]与RFID应用[3]等中,周围环境也会影响原始数据的准确度。
(ii)使用粗粒度数据集合。
很明显,从粗粒度数据集合转换到细粒度数据集合的过程会引入不确定性。
例如,假设某人口分布数据库以乡为基础单位记录全国的人口数量,而某应用却要求查询以村为基础单位的人口数量,查询结果就存在不确定性。
(iii)满足特殊应用目的。
出于隐私保护等特殊目的,某些应用无法获取原始的精确数据,而仅能够得到变换之后的不精确数据。
(iv)处理缺失值。
缺失值产生的原因很多,装备故障、无法获取信息、与其他字段不一致、历史原因等都可能产生缺失值。
一种典型的处理方法是插值,插值之后的数据可看作服从特定概率分布。
另外,也可以删除所有含缺失值的记录,但这个操作也从侧面变动了原始数据的分布特征。
(v)数据集成。
不同数据源的数据信息可能存在不一致,在数据集成过程中就会引入不确定性。
例如,Web中含很多信息,但是由于页面更新等因素,许多页面的内容并不一致[4]。
对某些应用而言,还可能同时存在多种不确定性。
例如,基于位置的服务(Location-BasedService,LBS)[5]是移动计算领域的核心问题,在军事、通信、交通、服务业等中有着广泛的应用。
LBS应用获取各移动对象的位置,为用户提供定制服务,该过程存在若干不确定性。
首先,受技术手段(例如GPS技术)限制,移动对象的位置信息存在一定误差。
其次,移动对象可能暂时不在服务区,导致LBS应用采集的数据存在缺失值情况。
最后,某些查询要求保护用户的隐私信息,必须采用“位置隐私”等方式处理查询[6]。
实际上,针对不确定性数据的研究工作已经有几十年历史了。
从二十世纪八十年代末开始,针对概率数据库(probabilisticdatabase)的研究工作就从未间断[7-11],这类研究工作将不确定性引入到关系数据模型中去,取得较大研究进展。
近年来,针对不确定性数据的研究工作则在更广的范围之内取得更大的进展,即:
在更丰富的数据类型上处理更多种类的查询任务。
图1描述了不确定性数据管理技术的典型框架,它包含四大部分:
模型定义、预处理与集成、存储与索引、查询分析处理。
模型定义:
定义与应用场景相匹配的数据模型是不确定性数据管理的首要任务。
在不确定性数据管理领域,最常用的模型是可能世界模型(possibleworldmodel)[12-13]。
该模型从一个不确定性数据库演化出很多确定的数据库实例,称为可能世界实例,而且所有实例的概率之和为1。
不确定性数据的种类较多,例如关系型数据、半结构化数据、流数据、移动对象数据等,尽管存在许多与数据类型紧密相关的数据模型,但是这些模型最终都可以转化为可能世界模型。
预处理与集成:
某些应用需要为数据执行预处理操作,主动引入不确定性,从而达到信息隐藏和隐私保护的目的。
这种不确定性会降低查询结果质量,必须在查询质量与信息隐藏程度之间进行权衡。
当应用需要使用多个数据源时,数据不一致性问题就凸显出来。
这个问题在WEB上尤为突出。
数据集成所要应对的不确定性问题不仅包括原始数据不一致、还包括模式匹配不确定、待处理的查询语义不确定等多种因素。
存储与索引:
有效的存储和索引技术能够大幅提高数据管理效率。
尽管可以基于传统的关系型数据存储技术实现不确定性数据库的存储任务,但仍有必要开发新型存储技术,以提高特定查询任务(例如数据世系,datalineage)的执行效率。
概要数据结构(synopsisdatastructure)是存储流数据(datastream)[14-15]的典型技术。
不确定性数据与确定性数据的最大区别在于不确定性数据含有概率维度。
一部分查询任务仅使用基于非概率维度的索引。
例如,在处理不确定Top-k查询的过程中,往往只需对值维度以ranking函数创建索引。
另一类查询则需针对概率维度开发新的索引技术,例如:
范围查询(Rangequery)、最近邻查询(NearestNeighborquery)等。
当概率维度以概率密度函数(probabilisticdensityfunction,简称pdf)描述,而非概率值时,创建索引的难度更大。
查询分析处理:
查询分析处理是不确定性数据管理的最终目标。
查询类型非常丰富,例如关系查询操作、数据世系、XML处理、流数据查询、Ranking查询、Skyline查询、OLAP分析、数据挖掘等。
尽管可以分别针对各个可能世界实例计算查询结果,再合并中间结果以生成最终查询结果,但由于可能世界实例的数量远大于不确定数据库的规模,该方法并不可行。
因此,必须采用排序、剪枝等启发式技术优化处理,以提高效率。
另外,由于输入数据具有不确定性,查询结果也往往是近似结果。
1.1目前在研的主要项目
不确定数据管理正成为一个研究热点。
表1列举了一些知名大学以及公司的研究机构正在进行的相关科研项目的基本情况。
表1不确定性数据管理的相关研究项目
科研机构
项目名称
链接
描述
UniversityofPugetSound
proTDB
http:
//www.math.ups.edu/~anierman/umich/protdb/
主要研究概率半结构化数据的查询处理技术。
UniversityofToronto
Conquer
http:
//queens.db.toronto.edu/project/conquer/
主要研究针对不一致数据库(inconsistentdatabase)的高效管理技术。
主要应用查询重写技术、实时和动态数据清洗技术。
PurdueUniversity
Orion
http:
//orion.cs.purdue.edu/
曾用名:
U-DBMS,是一个通用目的的不确定性数据库系统。
它支持离散或连续的概率密度函数;高效的访问不确定性数据的方法;优化连接、选择等操作;图形可视化界面。
StanfordUniversity
Trio
http:
//infolab.stanford.edu/trio/
主要研究不确定数据管理技术,特别是针对不确定数据的世系分析技术。
它基于ULDB模型,使用TriQL语言。
CornellUniversity
MayBMS
http:
//www.cs.cornell.edu/database/maybms/
研究内容包括:
查询语言、表示与存储技术、支持数据清洗、高效的查询处理、更新等。
UniversityofWashington
MystiQ
http:
//www.cs.washington.edu/homes/suciu/project-mystiq.html
研究内容包括:
数据模型、查询处理技术、关系代数计算等。
Intel/Berkeley
HeisenData
http:
//www.eecs.berkeley.edu/Research/Projects/Data/102060.html
该项目试图将现有的确定性数据管理框架与不确定性查询处理技术相结合,从而使得新增的功能模块能够嵌入到现有框架中,增强其性能。
UniversityofMaryland
ProbDBs
http:
//www.cs.umd.edu/~vs/research.htm#pdb
研究概率聚集查询的计算方法,开发空间-时间概率数据库。
IBMAlmaden
Avatar
该项目有两大目标:
(1)从非结构化数据中抽取结构化的信息;
(2)基于这类信息构建下一代搜索和商业智能应用。
Re与Suciu[16]观察到不确定性数据广泛出现在诸多应用之中,并总结了不确定性数据管理所面临的巨大挑战。
Dalvi和Suciu[17]进一步从理论角度阐述不确定性数据管理的基础与挑战。
Aggarwal与Yu[18]从算法与应用角度综述了不确定数据管理技术。
Pei等人[19]回顾了近期不确定性查询处理方面的进展,特别是他们自己的工作,包括范围查询、skyline查询与Ranking查询等。
本文则以不确定性数据管理的框架为主线,综述了不确定性数据管理技术在数据模型、预处理与集成、存储与索引、查询分析处理等方面所取得的重要进展。
本文第2-5节分别介绍上述四个方面的内容,第6节总结全文。
2数据模型与挑战
2.1可能世界模型
不确定数据库建模的研究工作很多,可能世界模型则是应用最广泛的数据模型[12-13]。
在该模型中,各元组的任一合法组合均构成一个可能世界实例(instance),实例的概率值可以通过相关元组的概率计算得到。
可能世界实例的数量远远高于不确定性数据库的规模,甚至是后者的指数倍,这也是不确定性数据管理技术所面临的最大难点。
考虑如图2所示的一个例子。
图2(a)是一个不确定性数据库,包含三个元组,概率字段表示该元组的发生概率。
元组之间可能独立也可能存在依赖关系。
首先假设各个元组之间独立,则共有23=8个可能世界实例,各实例的概率等于实例内元组的概率乘积与实例外元组的不发生概率的乘积,如图2(b)所示。
例如,可能世界实例{1,2}的发生概率为:
0.3*0.7*(1-0.6)=0.084。
某些场景下,元组之间并非独立,而是存在依赖关系,这种依赖关系可以用规则描述。
假设规则为:
,即元组1与元组3不能够同时发生,但可以同时不发生[20]。
总共有6个可能世界实例,如图2(b)所示。
可能世界实例{1}的发生概率为0.3*(1-0.7)=0.09,可能世界实例{2}的发生概率为(1-0.3-0.6)*0.7=0.07。
ID
信息
概率
1
A
0.3
2
B
0.7
3
C
0.6
元组独立:
PW={{},{1},{2},{3},{1,2},{1,3},{2,3},{1,2,3}}
P(PW)={.084,.036,.196,.126,.084,.054,.294,.126}
依赖规则:
PW={{},{1},{3},{2},{1,2},{2,3}}
P(PW)={.03,.09,.18,.07,.21,.42}
(a)一个不确定数据库样例
(b)可能世界
图2可能世界样例
在大多数应用中,不确定性可细分为存在级不确定性(ExistentialUncertainty)和属性级不确定性(AttributeLevelUncertainty)。
存在级不确定性描述元组的存在与否,较为通用。
在图2中,各元组均具备存在级不确定性。
属性级不确定性并不涉及整个元组的不确定性,而是以概率密度函数或统计参数(例如方差等)来描述特定属性的不确定性。
例如,假设某传感器无法准确探测周围环境温度,典型的记录方式为:
70%的概率为26℃,30%的概率为25℃。
类似的记录均具有属性级不确定性。
属性级不确定性往往比存在级不确定性更容易处理。
有些时候,也可以将多个相关的元组视为单个含属性级不确定性的元组。
例如,图2(b)定义了依赖规则
,则元组1和3无法同时发生。
可以将这两个元组视为单个元组,该元组有存在级不确定性,发生概率为0.9;该元组的信息字段有属性级不确定性,由离散概率密度函数描述(信息=A的概率为1/3,信息=C的概率为2/3)。
作为不确定性数据库建模的最核心思想,可能世界模型被广泛采纳于各种应用之中,并衍生出多种应用相关的模型,特别是针对关系型数据、半结构化数据、流数据和多维数据的模型。
2.2针对关系型数据的模型
针对关系模型的扩展最为常见,包括Probabilistic?
-table[9,11]、Probabilisticor-settable[11]、Probabilisticor-set-?
table[11]、Probabilisticc-table[13]等。
Probabilistic?
-table以一个独立的概率字段表示元组的概率,且各元组之间独立。
一个特定的数据库实例(也即可能世界实例)的概率等于其所包含的元组的概率乘积和其所不包含的元组的不发生概率的乘积。
图3(a)所示的Probabilistic?
-table含3个字段c1、c2与概率字段,其中概率字段描述元组的发生概率。
该表中有2个元组,可构成4个可能世界实例。
Probabilistic?
-table能够描述存在级不确定性,而Probabilisticor-settable则倾向于描述属性级不确定性。
在Probabilisticor-settable中,元组的属性值被描述为多个候选值之间的“或”关系,可视为离散概率密度函数。
以图3(b)为例,元组1的c2字段既可取2,也可取3,其概率分别为0.4和0.6;元组2的c2字段既可取4也可取5,其概率分别是0.2与0.8。
Probabilisticor-set-?
Table[13,21]则是上述两种模型的综合体。
例如,在图3(c)中,元组2本身具有概率值,而且其c2字段既可取4,也可取5,概率分别是0.2和0.8。
Probabilisticc-table的定义与Probabilisticor-settable比较类似,不同之处在于它是从ctable衍生而出[22]。
部分学者也将probabilisticor-set- ?
table命名为x-relation,它包含若干x-tuple(无存在级不确定性)或者maybex-tuple(有存在级不确定性)[8,23]。
c1
c2
概率
1
2
.5
2
3
.6
c1
c2
1
<(2,.4),(3,.6)>
2
<(4,.2),(5,.8)>
c1
c2
概率
1
<(2,.4),(3,.6)>
2
<(4,.2),(5,.8)>
.8
(a)Probabilistic?
-table
(b)Probabilisticor-settable
(c)Probabilisticor-set-?
table
图3基于关系数据的扩展模型
2.3针对半结构化数据的模型
半结构化数据模型(semistructeddatamodel)能有效描述缺乏严格模式结构的数据[24]。
半结构化数据通常可以用文档树来描述。
Dekhtyar等人[25]提出了一种管理概率半结构化数据(probabilisticsemistructeddata)的方法,该方法以关系数据库技术为基础,支持丰富的代数查询。
更多的工作则是直接以文档树形式描述不确定性半结构化数据,例如p-文档模型(p-documentmodel)[26]、概率树模型(ProbabilisticTreeModel)[27-28]、PXDB模型[29]等。
p-文档模型[26]将概率值附加于文档树的边上,各节点的概率依赖于其祖先的概率,节点之间可以是互斥关系(mux)或相互独立(ind)。
在图4(a)所示的例子中,共有5个节点,4条边。
边A-B与A-C独立,概率值分别为0.7和0.8;边C-D与C-E互斥,概率值分别为0.4与0.5。
此时,包含且仅包含节点A、C、D的子图的概率为(1-0.7)*0.8*0.4=0.096;任意子图均不能同时包含D、E两个节点。
概率树模型是一个事件驱动的模型[27-28]。
它并不在各节点/边上附加概率值来描述不确定性,而是在各节点附加一系列事件变量,由外部事件的发生与否决定节点的存在性。
图4(b)描述了一个概率树的例子,共有2个外部事件w1和w2,其发生概率分别为0.7和0.8。
节点B出现的前提条件是事件w1发生且事件w2不发生;节点E存在的前提条件是事件w2发生。
由于节点B与E的存在条件互斥,不存在同时包含节点B、E的子图。
包含且仅包含A、C、D三个节点的子图的概率为:
(1-0.8)*(1-0.7)=0.06,前提是w1、w2均不发生。
可以看出,概率树模型的表达能力强于p-文档模型。
PXDB模型[29]扩展了p-文档模型,增加外部约束条件。
在图4(c)所示的例子中,左下角是一个完整的p-文档;右下角定义了两个子图SA与SAB,SA含节点A,SAB含节点A与B。
限制条件为:
对于任意一个SA子图,它所包含的SAB子图的数量不能够超过1个。
因此,尽管A-B边在p-文档中出现了2次,但它们无法同时出现在任意一个子图之中。
其他模型还包括PXML模型[30-31]、Keulen等人的概率树模型[32]、PrXML模型[33]等。
2.4针对数据流的模型
在数据流模型中,数据到达的速度极快、数据规模极大,仅能够开发一次扫描算法,使用有限内存在线计算查询结果。
在不确定性数据流(UncertainDataStream,或ProbabilisticDataStream)中,各元组具有不确定性。
文献[34]假设各元组可以在一个离散域B中取多值,流上各元组的值是基于这些离散域的一个概率密度函数,例如某元组t被描述为