首页 百科知识 交通事故多维数据模型建立

交通事故多维数据模型建立

时间:2022-11-06 百科知识 版权反馈
【摘要】:由于现行的公安部交通事故信息系统采集的事故数据偏向于事故管理和责任认定,缺少为事故黑点分析提供更好的支持,采用多维信息管理技术对交通事故数据库进行设计,以满足事故黑点分析的需要。交通事故多维数据结构的星形模式组织模型继续向外延伸,对6个维表进一步扩展,即成为雪花模式。事故特征维表、事故位置维表、当事人维表、事故车辆维表、事故时间维表和

10.4.3 交通事故多维数据模型建立

由于现行的公安部交通事故信息系统采集的事故数据偏向于事故管理和责任认定,缺少为事故黑点分析提供更好的支持,采用多维信息管理技术对交通事故数据库进行设计,以满足事故黑点分析的需要。

img375

图10-8 系统外部数据库与空间数据连接途径

10.4.3.1 多维数据模型

多维数据模型是一个逻辑概念,该模型主要解决如何对大量数据进行快速查询和多角度展示,以便得出有利于管理决策的信息和知识,应用领域主要有数据仓库、OLAP、数据挖掘3个方面[127]

多维数据模型是一组事实的集合,事实是多维数据中最基本的信息元素,一个事实由一些度量值和一组与N个维值相关联的n重关系组成,这些关系中有一个或多个用来表示度量的特性。在多维数据模型中,用来表示度量特性的关系是由详细维层决定的,也就是说,多维数据模型中与事实度量直接相关联的维值都是维层的成员,与其他维值之间的联系都通过这些维层的成员和已定义的维层次关系来建立。

1)多维数据模型的基本结构

目前,多维数据模型主要有三种设计模式:星形模式、雪花模式和事实星座。下面我们对这三种模式作出说明:

(1)星形模式(Star Schema)

该模式是最常见的,其设计包括事实表和维表。事实表是一个大的包含大批数据和不含冗余的中心表;维表则是一组小的附属表,每个事实表的概念属性附属一个维表。

大多数数据仓库都采用“星形模型”来表示多维概念模型,星形模型使数据仓库的复杂查询可以直接通过各维的层次比较、上钻、下钻等操作完成。数据库中包括一张“事实表”,对于每一维都有一张“维表”。“事实表”中的每条元组都包含有指向各个“维表”的外键和一些相应的测量数据。“维表”中记录的是有关这一维的属性。事实表中的每一元组包含一些指针(是外键,主键在其他表中),每个指针指向一张维表,这就构成了数据库的多维联系。相应每条元组中多维外键限定数字测量值。在每张维表中除包含每一维的主键外,还有说明该维的一些其他属性字段。维表记录了维的层次关系。

(2)雪花模式(Snowflake Schema)

雪花模式是星形模式的变种,其中某些维表是规范化的,因而把数据进一步分解到附加的表中。雪花模式和星形模式的主要不同在于,雪花模式的维表可能是规范化形式,以便减少冗余。这种表易于维护并节省存储空间,因为维的结构信息作为列时,维表可能变得非常大。但是,由于执行查询需要更多的链接操作,雪花模式可能会降低浏览的性能。这样,系统的整体性能将受到影响,因此,在多维数据模型的设计中应慎重考虑采用雪花模式。

“雪花模型”是对星形模型的扩展。它对星形模型的维表进一步层次化,原有的各维表可能被扩展为小的事实表,形成一些局部的“层次”区域。它的优点是:通过最大限度地减少数据存储量以及联合较小的维表来改善查询性能。

(3)事实星座(Fact Constellation)

复杂的应用可能需要多个事实表共享维表,这种模式可以看作星形模式集,因此称作星系模式(Galaxy Schema)或事实星座。

2)基本分析动作

在一个多维空间上,所进行的基本数据分析动作包括“切片”、“切块”和“旋转”。

所谓切片可以定义成为:多维数组的某一维上选定一维成员的动作叫切片,即在多维数组(维1,维2,…,维n,变量)中选定一维i,并取其一个维成员Vi,所得到的多维数组的子集(维1,维2,…,维成员Vi,…,维n,变量),称为在维i上的一个切片。切片的作用是舍去一些观察角度,使得人们能够在少量维上集中观察问题。上述定义还可以进一步扩展,也就是说可以一次选定k(k≤n-2)维,取相应的维成员,生成多维数组的子集。当k=n-2时,所得到的切片均为2维空间。

切块是指在多维数组的某一维(或某几维)上选定某一区间的维成员的动作称为切块,在特殊情况下,切块的结果可以形成多维数组的3维子集。切块的目的与作用与切片相似。可以看成是在切片的基础上,进一步确定各个维成员的区间得到的片断体,也就是说可以看做是多个切片叠合而成。

旋转是改变维的显示方向,例如交换行和列,旋转可以理解为从不同的视角观察数据,便于发现潜在的问题。

3)维的层次关系和类

(1)层次

层次关系也是在关系数据模型的基础上构造多维数据模型的重要基础。在关系数据模型中,一个层次关系就是通过两个实体间的一对多的关系来体现的。维的层次关系是根据对数据组织详细的要求不同来建立的,以达到从不同层次对数据的聚合和分解。在交通事故数据的位置维上,具有这种层次性的数据组织关系特征。在图10-9所示的层次关系中,线路是根据道路的编号所确定的;路段则根据道路条件的变化,结合交通管理部门的管辖区段而划分。

img376

图10-9 交通事故数据位置维的层次关系结构

(2)类别(Class)

简化多维数据的另一种办法是使用维内元素的“类”的概念。类是指按照一定的划分标准对维成员全体的一种分类划分。设维的全体维成员为一个全集,则类就是该全集的一个划分。对应一个类属性,就有对维成员的一个划分,类属性不同,得到的类划分也不同。

例如,交通事故分布,在事故发生位置维上分类,可分为平直路段、交叉口、弯道、坡道等的事故;也可分为市区、公路、集镇的事故。在事故时间轴上分类,则有白天和夜晚。在事故类型维的分类,可分为尾随碰撞、侧面碰撞、正面碰撞、刮擦等。如图10-10所示为一空间位置、时间、事故类型三维数据立方体模型。

在事故类型维成员为正面对撞事故,分析该类事故在位置及时间维的分布情况,如此切片得到一个二维平面散点图(图10-11);若事故数据空间共有二维,则切片得到二维空间。

10.4.3.2 基于多维数据模型的交通事故数据库

道路交通安全本质上也是多维信息的综合,对道路的交通安全进行分析评价时,可从多维角度同时对目标道路进行分析。

img377

图10-10 交通事故数据的多维存储

img378

图10-11 交通事故的切片操作示例

与专用的多维数据库相比,采用关系数据库表达多维概念不太自然。但由于关系数据库管理系统目前得到广泛的应用,因此采用关系数据库管理系统构筑多维数据模型,仍然是一个实用可行的方案。

采用关系数据库的二维表表达多维概念时,可以把多维结构划分为两类表:一类是事实表,用来存储事实的度量值以及各个维的码值;另一类是维表,每一个维表至少有一个表用来保存该维的元数据,即维的描述信息,包括维的层次及成员类别等。在相关事实表中,这些值衍生出该维的列,从而事实表通过每一个维的值与维表联系在一起,称其为“星形模式”。图10-12显示了当交通事故数据各维均没有层次关系时的模型数据结构,这就是一种星形模式。

img379

图10-12 星形模式的交通事故多维数据结构

该结构中,交通事故情况表为事实表,存放了通过6个维表的主码:事故特征代码、事故时间代码、事故位置代码、当事人代码、事故车辆代码和交通环境代码。这样,通过这6个维表的主码,将事实表与维表连接在一起,形成了完整的“星形模式”,构筑了交通安全的多维数据模型。

交通事故多维数据结构的星形模式组织模型继续向外延伸,对6个维表进一步扩展,即成为雪花模式。事故特征维表、事故位置维表、当事人维表、事故车辆维表、事故时间维表和交通环境维表的雪花模式结构如图10-13~图10-18所示。

img380

图10-13 事故特征维表雪花模式结构示意图

img381

图10-14 事故点位置维表雪花模式结构示意图

img382

图10-15 当事人维表雪花模式结构示意图

img383

图10-16 事故车辆维表雪花模式结构示意图

img384

图10-17 交通环境维表雪花模式结构示意图

img385

图10-18 事故时间维表雪花模式示意图

在交通事故数据库建立时,对事实表、各维表和维属性信息分别进行了定义、编码和命名等工作,其各个维表的层次关系如表10-3所示。

表10-3 交通事故数据库事实表和维表信息

img386

多维数据模型的交通事故数据库,利用MS SQL Server来建立其事实表和相应的维表。维表与事实表之间通过相应的维表代码来连接。

通过以上分析可以看出,交通事故数据的多维信息管理模型的核心思想是利用基于关系数据库的多维数据模型,构建适用于多维分析处理的道路交通事故数据模型。交通事故数据多维信息管理模型不仅仅满足了道路交通事故数据的储存和维护,而且为事故黑点分析处理提供合理的数据组织和管理方法。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈