1、MOD系统概要设计MOD系统概要设计标 题 : MOD系统概要设计项目名称: 移动目标数据库 文档编号: MOD1 设计者 : 审查者 : 时 间 : 版 本 : 目录1 引言1.1编写目的1.1.1范围1.1.2定义2 总体设计2.1概述2.2系统构思2.3模拟器设计2.4数据模型和数据获取子系统2.5 AU索引设计2.5.1 current AU2.5.2 past AU2.6其他部分设计2.7 用于比较性能的TPR树和TB树的设计2.8基本处理流程2.8.1数据获取子系统处理流程2.8.2 AU处理流程3.系统数据结构设计3.1数据结构3 引言1.1编写目的本概要设计旨在说明移动目标数据
2、库系统的概念结构,定义系统各模块的功能,简明给出其实现方法,定义各模块的输入输出,以及主要数据结构。预期读者为MOD系统的开发人员。1.1.1范围 本概要设计包括系统整体构思,主要模块工作原理和实现方法的说明和索引部分数据结构。1.1.2定义 MOD是移动目标数据库的缩写,其中包括产生数据源的模拟器traffic simulator,这是由细胞自动机CA产生的。Simulator将其产生的移动对象位置数据交给数据获取子系统进一步处理,这就需要根据移动目标的物理位置判定其逻辑位置,如某点(x,y)在哪一条路上,这就需要一个道路拓扑结构映射,称为MAP。数据获取子系统将获得的数据以适当的格式表示,
3、称为数据模型。移动目标数据库为不同类型的查询提供相应的索引,主要分为current index和past index,前者为当前时间移动目标所在位置的索引主要包括,后者主要提供轨迹查询等操作。current index 主要包括 TPRtree和current AU index,AU即自适应单元adaptive unit。past index主要包括TBtree和past AU index。系统的其他部分包括查询处理器,图形界面GUI等。2.总体设计2.1概述2.1.1 功能描述 MOD系统提供一个从数据源生成,到数据的获取及其优化,到数据表示,到支持不同查询的索引,到存储管理,到图形化查询界
4、面的移动目标数据管理和查询系统。2.1.2 运行和开发环境 开发环境:JBUlider,运行平台windows,java运行环境2.2系统构思2.2.1 系统框架 MOD系统旨在通过实现一套较全面的对移动数据管理和查询的流程,并实现我们对数据获取的优化策略,适应快速更新的索引方法以及能新型的数据模型等,并期望从中发现新的值得研究的潜在问题。 MOD系统功能模块如下:其中GPS所输入数据由数据模拟器产生,它采用的原理是细胞自动机。由它不断给出移动对象在当前时刻的位置信息,即x,y,速度v,方向d。这些数据在实际应用中应该是通过无线通信方式传给一个数据服务器,称为数据获取子系统,由它负责收集和表示
5、这些数据。由于无线网络中带宽资源的有限的,针对不断变化的大量移动位置信息数据的收集需要做一定的优化处理。由数据获取子系统给出的具一定顺序和一定格式的数据需要提供给索引来支持用户各种各样的查询。它主要包括current index和past index,前者为当前时间移动目标所在位置的索引主要包括,后者主要提供轨迹查询等操作。current index是常驻内存的,而past index由于不需要更新,只需要追加所以可以存入外存。如何对存有移动对象轨迹的庞大索引进行分块?这里就需要一个存储管理器。此外,系统还提供可视化的查询界面。2.2.2 系统功能模块功能模块说明:1simulator,car
6、 table和seg table对应模拟器2.Filter,Regrassion 和CA构成数据获取子系统。3Index包括各种索引。4Storage 对应存储管理器。5此外还包括图型界面GUI和查询处理器2.3模拟器概要设计2.3.1 功能:模拟器负责产生移动对象数据源,把它们显示在图形界面上,并提供数据给其他模块处理。2.3.2输出: A一个根据carID排序的表,其中包括移动对象的位置等属性。 B一个根据segID排序的表,其中每个segID包括一个已排好序的car的序列。Seg_IDCell-1Cell-2Cell-3Cell-4Cell-5Cell-61Car-1Car-5Car-9
7、2Car-8Car-113Car-3Car-6Car-154Car-15Car-16 Car-172.3.3 说明: A模拟器产生的两个表包含的数据都是高速更新的,要保证数据的实时更新。2.4数据模型和数据获取子系统 2.4.1流程和各部分功能CA接受由current index中每个seg包含的项和 segtable表中的数据,按每个seg中数据元素的顺序用CA对它们未来运动趋势进行模拟,并将结果返回给current index,regression将CA传来的数据进行回归,得到一条最适合它的方程(回归模型)及其参数。Regression将这些方程和参数按carID排序交给filter,fi
8、lter另一端的输入是carID表,filter将把两端输入的数据转换成统一格式进行比较,如果符合CA的预测就不需上传更新的位置信息。2.4.2 输入 current index中seg所含的项和seg table。2.4.3 输出同car table。2.4.4 说明 预期由filter输出的数据量将大大减少。2.5 AU索引设计2.5.1 current AU2.5.1.1功能目标 对当时移动数据的位置进行索引,目的是尽量减少索引空间的更新和重叠,从而达到较好的索引性能。2.5.1.2 输入 AsegID表的移动目标位置信息B经过CA和数据获取子系统处理得到的数据方程和参数。2.5.1.3
9、 输出 提供原子查询接口给查询处理器2.5.1.4 说明 注意此索引用的数据表示不同与其他同类索引结构,是一个非线性模型,目的是达到减少数据量和提供更精确的预测。2.5.2 past AU2.5.2.1 功能 对过去时间移动对象的轨迹进行索引,目的是提供轨迹查询和需要时态的特殊查询,如聚集查询等2.5.2.2 输入 同current AU2.5.2.3 输出 A提供原子查询给查询处理器 B提供按seg-ID排序的AU数据给存储管理器2.5.2.4 说明 此部分实现还需要提供缓存管理2.6其他部分设计2.7 用于比较性能的TPR树和TB树的设计3.系统数据结构设计3.1 AU数据结构class
10、AUint inSeg;/处于哪一个seg中int velocity;/速度int direction;/方向int inCell;/cell中点的数目int radius;/AU半径int mixBound;/AU最小包含car个数int maxBound;/AU最大包含car个数int overlap;/AU允许的重叠int cellSet;/AU包含的cell集合int carSet;/AU包含的car集合operate operateSet;/操作集合public int getVelocity();/得到速度public int getDirection();/得到方向public AU create();/AU创建public AU drop();/AU消除public car insert();/插入对象public car delete();/删除对象
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1