分布式空间数据库
A. 传统单机数据库与分布式数据库分别什么场景使用
当明显感觉到查询响应时间较长,且SQL以及当前数据库设计没有优化空间时,可以考虑用分布式数据库。
公有云服务有:华为云DDM、阿里云DRDS、腾讯云DCDB。
B. 什么是分布式数据存储
什么是分布式存储
分布式存储是一种数据存储技术,它通过网络使用企业中每台机器上的磁盘空间,这些分散的存储资源构成了虚拟存储设备,数据分布存储在企业的各个角落。
分布式存储系统,可在多个独立设备上分发数据。传统的网络存储系统使用集中存储服务器来存储所有数据。存储服务器成为系统性能的瓶颈,也是可靠性和安全性的焦点,无法满足大规模存储应用的需求。分布式网络存储系统采用可扩展的系统结构,使用多个存储服务器共享存储负载,利用位置服务器定位存储信息,不仅提高了系统的可靠性,可用性和访问效率,而且易于扩展。
C. 什么是分布式存储
分布式存储系统,是将数据分散存储在多台独立的设备上。传统的网络存储系统采用集中的存储服务器存放所有数据,存储服务器成为系统性能的瓶颈,也是可靠性和安全性的焦点,不能满足大规模存储应用的需要。分布式网络存储系统采用可扩展的系统结构,利用多台存储服务器分担存储负荷,利用位置服务器定位存储信息,它不但提高了系统的可靠性、可用性和存取效率,还易于扩展。
(3)分布式空间数据库扩展阅读:
分布式存储,集中管理,在这个方案中,共有三级:
1、上级监控中心:上级监控中心通常只有一个,主要由数字矩阵、认证服务器和VSTARClerk软件等。
2、本地监控中心:本地监控中心可以有多个,可依据地理位置设置,或者依据行政隶属关系设立,主要由数字矩阵、流媒体网关、iSCSI存储设备、VSTARRecorder软件等组成;音视频的数据均主要保存在本地监控中心,这就是分布式存储的概念。
3、监控前端:主要由摄像头、网络视频服务器组成,其中VE4000系列的网络视频服务器可以带硬盘,该硬盘主要是用于网络不畅时,暂时对音视频数据进行保存,或者需要在前端保存一些重要数据的情况。
D. 网络数据库与分布式管理
浙江省国土资源遥感综合调查数据管理信息系统采用空间数据库引擎(ArcSDE)+大型关系型数据库系统(Oracle)为后台,在前台分别以ArcInfo和ArcIMS组成胖客户端和瘦客户端相结合的混合体系结构作为服务支持,在胖客户端主要采用内嵌的VBA环境结合AO组件进行开发,在瘦客户端遵循UML、XML、SQL、TCP/IP各种标准协议基础,应用JavaScript、Java Servlet、ASP、Java Applet等技术进行开发。因此,这是一种由不同部门协同工作、共享信息资源的全新的GIS应用模式,可实现对成果信息的全面共享管理。
由于采用了分布式服务体系结构,充分利用了现有的网络资源,有效地平衡了客户端和服务器端之间的处理负载,对于复杂的处理,诸如大规模SQL查询和空间分析等,交由服务器端的应用程序执行,而数据量较小的简单操作,诸如分层显示和按比例尺缩放地图等,则交由客户端的应用程序完成,从而提高了整个系统的执行效率,避免了服务器的瓶颈问题。因此,基于WebGIS开发的浙江省遥感综合调查管理信息系统是一种较为理想的全局优化管理模式。
E. 分布式数据库系统
分布式数据库系统(DDBS)包含分布式数据库管理系统(DDBMS)和分布式数据库(DDB)。在分布式数据库系统中,一个应用程序可以对数据库进行透明操作,数据库中的数据分别在不同的局部数据库中存储、由不同的 DBMS进行管理、在不同的机器上运行、由不同的操作系统支持、被不同的通信网络连接在一起。
一个分布式数据库在逻辑上是一个统一的整体,在物理上则是分别存储在不同的物理节点上。一个应用程序通过网络的连接可以访问分布在不同地理位置的数据库。它的分布性表现在数据库中的数据不是存储在同一场地。更确切地讲,不存储在同一计算机的存储设备上。这就是与集中式数据库的区别。从用户的角度看,一个分布式数据库系统在逻辑上和集中式数据库系统一样,用户可以在任何一个场地执行全局应用。就好像那些数据是存储在同一台计算机上,有单个数据库管理系统(DBMS)管理一样,用户并没有什么感觉不一样。
分布式数据库系统是在集中式数据库系统的基础上发展起来的,是计算机技术和网络技术结合的产物。分布式数据库系统适合于单位分散的部门,允许各个部门将其常用的数据存储在本地,实施就地存放本地使用,从而提高响应速度,降低通信费用。分布式数据库系统与集中式数据库系统相比具有可扩展性,通过增加适当的数据冗余,提高系统的可靠性。在集中式数据库中,尽量减少冗余度是系统目标之一.其原因是,冗余数据浪费存储空间,而且容易造成各副本之间的不一致性.而为了保证数据的一致性,系统要付出一定的维护代价.减少冗余度的目标是用数据共享来达到的。而在分布式数据库中却希望增加冗余数据,在不同的场地存储同一数据的多个副本,其原因是:①.提高系统的可靠性、可用性当某一场地出现故障时,系统可以对另一场地上的相同副本进行操作,不会因一处故障而造成整个系统的瘫痪。②.提高系统性能系统可以根据距离选择离用户最近的数据副本进行操作,减少通信代价,改善整个系统的性能。
F. 海量空间数据存储
(一)空间数据存储技术
随着地理信息系统的发展,空间数据库技术也得到了很大的发展,并出现了很多新的空间数据库技术(黄钊等,2003),其中应用最广的就是用关系数据库管理系统(RDBMS)来管理空间数据。
用关系数据库管理系统来管理空间数据,主要解决存储在关系数据库中的空间数据与应用程序之间的数据接口问题,即空间数据库引擎(SpatialDatabase Engine)(熊丽华等,2004)。更确切地说,空间数据库技术是解决空间数据对象中几何属性在关系数据库中的存取问题,其主要任务是:
(1)用关系数据库存储管理空间数据;
(2)从数据库中读取空间数据,并转换为GIS应用程序能够接收和使用的格式;
(3)将GIS应用程序中的空间数据导入数据库,交给关系数据库管理。
空间数据库中数据存储主要有三种模式:拓扑关系数据存储模式、Oracle Spatial模式和ArcSDE模式。拓扑关系数据存储模式将空间数据存在文件中,而将属性数据存在数据库系统中,二者以一个关键字相连。这样分离存储的方式由于存在数据的管理和维护困难、数据访问速度慢、多用户数据并发共享冲突等问题而不适用于大型空间数据库的建设。而OracleSpatial实际上只是在原来的数据库模型上进行了空间数据模型的扩展,实现的是“点、线、面”等简单要素的存储和检索,所以它并不能存储数据之间复杂的拓扑关系,也不能建立一个空间几何网络。ArcSDE解决了这些问题,并利用空间索引机制来提高查询速度,利用长事务和版本机制来实现多用户同时操纵同一类型数据,利用特殊的表结构来实现空间数据和属性数据的无缝集成等(熊丽华等,2004)。
ArcSDE是ESRI公司开发的一个中间件产品,所谓中间件是一个软件,它允许应用元素通过网络连接进行互操作,屏蔽其下的通讯协议、系统结构、操作系统、数据库和其他应用服务。中间件位于客户机/服务器的操作系统之上,管理计算资源和网络通讯,并营造出一个相对稳定的高层应用环境,使开发人员可以集中精力于系统的上层开发,而不用过多考虑系统分布式环境下的移植性和通讯能力。因此,中间件能无缝地连入应用开发环境中,应用程序可以很容易地定位和共享中间件提供的应用逻辑和数据,易于系统集成。在分布式的网络环境下,客户端的应用程序如果要访问网络上某个服务器的信息,而服务器可能运行在不同于客户端的操作系统和数据库系统中。此时,客户机的应用程序中负责寻找数据的部分只需要访问一个数据访问中间件,由该中间件完成网络中数据或服务的查找,然后将查找的信息返回给客户端(万定生等,2003)。因此,本系统实现空间数据库存储的基本思想就是利用ArcSDE实现各类空间数据的存储。
目前,空间数据存储技术已比较成熟,出现了许多类似ArcSDE功能的中间件产品,这些软件基本上都能实现空间数据的数据库存储与管理,但对于海量空间数据的存储,各种软件性能差别较大。随着数据量的增长,计算机在分析处理上会产生很多问题,比如数据不可能一次完全被读入计算机的内存中进行处理。单纯依赖于硬件技术,并不能满足持续增长的数据的处理要求。因此需要在软件上找到处理海量数据的策略,并最终通过软硬件的结合完成对海量数据的处理。在海量数据存储问题上,许多专家从不同侧面进行过研究,Lindstrom在地形简化中使用了外存模型(Out-of-core)技术;钟正采用了基于数据分块、动态调用的策略;汪国平等人在研究使用高速网络进行三维海量地形数据的实时交互浏览中,采用了分块、多分辨率模板建立模型等方法。这些技术、方法已经在各自系统上进行了研究和实现。本系统采用的ArcSDE软件基本上也是采用分块模型的方法,具体存储和操作不需要用户过多了解,已经由ArcSDE软件实现。因此,对海量数据的存储管理,更需要从数据的组织方式等方面进行设计。塔里木河流域生态环境动态监测系统采集了大量的遥感影像、正射影像等栅格结构的数据,这些数据具有很大的数据量,为适应流域空间基础设施的管理需要,采取一种新的方式来管理、分发这些海量数据以适应各部门的快速浏览和管理需要。
(二)影像金字塔结构
影像数据库的组织是影像数据库效率的关键,为了获得高效率的存取速度,在数据的组织上使用了金字塔数据结构和网格分块数据结构。该技术主导思想如下:
(1)将数据库中使用到的纹理处理成为大小一致的纹理块;
(2)为每块纹理生成5个细节等级的纹理,分别为0、1、2、3、4,其中1级纹理通过0级纹理1/4压缩得到,2级纹理通过1级纹理1/4压缩得到,…,以此类推;
(3)在显示每个块数据之前,根据显示比例的大小,并以此决定该使用那一级的纹理;
(4)在内存中建立纹理缓冲池,使用LRU算法进行纹理块的调度,确保使用频率高的纹理调度次数尽可能少。
(三)影像数据压缩
影像数据压缩有无损压缩和有损压缩两个方法,具体采取哪种压缩方法需根据具体情况确定。对于像元值很重要的数据,如分类数据、分析数据等采用无损压缩(即LZ77算法),否则采用有损压缩(即JPEG算法)。通过对影像数据的压缩,一方面可以节约存储空间,另一方面可以加快影像的读取和显示速度。影像数据的压缩一般与构建金字塔同时进行,在构建影像金字塔过程中自动完成数据的压缩。
G. 分布式数据库的工作原理是什么
分布式数据有不同的理论支撑,TiDB 官方社区(AskTUG)
目前国产数据排名靠前的可以了解下 TiDB
水平弹性扩展
通过简单地增加新节点即可实现 TiDB 的水平扩展,按需扩展吞吐或存储,轻松应对高并发、海量数据场景。
分布式事务
TiDB 100% 支持标准的 ACID 事务。
真正金融级高可用
相比于传统主从 (M-S) 复制方案,基于 Raft 的多数派选举协议可以提供金融级的 100% 数据强一致性保证,且在不丢失大多数副本的前提下,可以实现故障的自动恢复 (auto-failover),无需人工介入。
H. 为什么分布式gis是gis发展的一个趋势 在空间数据库中 如何建立定性关系 定位关系 拓扑关系
对于考研,这个问题只要把握 一些概念就好,在此基础上说一下 地理信息的分布性就行,答题时将理论结合自己的认识,分数会高点。
在空间数据库中 如何建立定性关系 定位关系 拓扑关系,这个gis的书上都有的!可以操作arcgis 学习一下,那样容易理解理论。
I. 无缝空间数据库设计与构建
(一)问题的提出
塔里木河流域生态环境动态监测系统的运转需要大量的空间数据支持。在空间数据库构建前期,采集了塔里木河流域的各尺度基础地形图、生态环境专题图以及遥感影像资料等图形、图像数据,这些数据都是以分幅的成果进行收集和提交的,需要进入综合数据库中,以实现数据的共享。
我国国土版图大,而且大部分位于中、低纬度地区,因此我国现行的大于1∶50万比例尺的各种地形图都采用高斯-克里格投影即横切椭圆柱正形投影。经过高斯-克里格投影后的平面直角坐标系是以相切的经线(中央经线)的投影为X轴,以赤道的投影为Y轴。高斯-克里格投影具有以下特点:
(1)中央经线投影为直线,而且是投影的对称轴(也是投影平面的X轴);
(2)高斯-克里格投影是等角投影,投影后具有角度不变、伸长固定的特点(即同一地点各个方向的长度比不变),满足等角的要求;
(3)中央经线上长度没有变形,离中央经线越远变形越大。为了限制投影变形,必须进行分带投影。所谓分带就是按照一定的经度差,将椭球体按经线划分成若干个狭窄的区域,各个区域分别按高斯投影的规律进行投影,每一个区域就称为一个投影带。在每一个投影带内,位于各带中央的子午线就是轴子午线,各带相邻的子午线叫边缘子午线。分带之后,各带均有自己的坐标轴和原点,形成各自独立但又相同的坐标系统。根据国际通用方法,我国投影分带主要有两种:在我国1∶2.5万到1∶50万地形图均采用6°分带投影,1∶1万及更大比例尺的地形图采用3°分带投影,以保证投影变形误差满足地图的精度要求(王密等,2001)。
本系统所采集到的数据产品的空间参考大都是以高斯投影后的平面坐标为基础的分幅数据。塔里木河流域地域广阔,地理坐标介于东经73°10'~94°05',北纬34°55'~43°08'之间,以1∶10万基础地形图数据为例,按照高斯投影后的坐标分成了13°、14°、15°、16°四个6°高斯投影带,每个带的坐标都是以本带的坐标原点为参考点,空间基准不统一,如果将这些数据直接进行入库,将在跨带处产生缝隙,不能形成逻辑意义上完整的河流表现,也无法完成基于整个流域的生态环境分析,因此,必须采用相应的数据处理与建库技术,实现塔河整个流域数据的无缝集成管理,使之形成统一的整体。从基础数据的获取开始,进行精心设计和组织,分离出数据物理层和数据逻辑层,在统一的空间框架之下,将物理层归化到逻辑层,以消除逻辑层的缝隙,从而实现用户级的逻辑无缝空间数据库。
(二)无缝数据库
随着GIS数据发布与共享技术的发展,无缝空间数据库逐渐分化出两个层次的含义:一是GIS系统内部的数据无缝,一是不同GIS实现互操作时的数据无缝。前者是通常意义的无缝,后者主要通过数据标准化与操作标准化来实现。无缝空间数据库的最终含义体现在逻辑无缝数据库。无论是多源还是单源、同构还是异构,跨越数据层呈现在用户面前的GIS空间数据库必须是逻辑无缝的。
空间数据的无缝连接是一个建立在用户与数据库接口基础上的概念,意味着GIS管理的数据不再是单一、被硬性割裂的图幅,而是范围更加广阔的区域,这个区域小可到一个城市,大可到一个国家甚至整个地球(王卉、王家耀,2004)。由于硬软件条件的限制,计算机系统尚不能同时处理海量的空间数据,因此从具体技术的实施上,可采用将空间数据分块存储于数据库中,数据库提供相应的图块拼接信息。物理上空间数据是有缝隙的,但空间数据库提供图块之间的接图信息及相应的拼接访问手段,保障了空间数据在使用上的空间连贯性,即数据在逻辑使用上是无缝的(王密等,2001)。
(三)缝隙产生原因
在现实世界中,地理空间是由地貌、地物组成的连续的表层空间,地理信息则是有关地理空间的一切有用的知识。在计算机世界中,地理信息通过抽象、建模形成数字化的表示形式,通过空间数据库来进行表达、存储和管理(朱欣焰等,2002)。空间地理数据缝隙是在数据的获取、表示与处理过程中产生的数据不连续现象。
1.数据源
由于历史和现实的原因,地图是绝大多数GIS系统直接的数据源。地图是地球三维椭球面的二维平面表达,本身对真实世界有扭曲;地图是对连续空间的割裂表达,实体被分割到不同的地图空间中去;高斯投影是基本比例尺地形图经常选用的投影,也是绝大多数GIS系统的数学基础,由于分带的原因,使得投影后带有高斯投影平面坐标的地图无法实现无缝拼接。
2.数据表达与组织方式
空间地理几何数据的表示主要有栅格和矢量两种不同的形式。栅格形式是将地理表层空间划分为一系列网格,空间目标由这些网格的位置及其量化值来表示,这些网格本身就是连续空间信息的离散表达。矢量形式则是将地理空间的一切事物、概念进行抽象,形成点、线、面,由点、线、面来组成各类空间目标。按点、线、面来分类和按分层的思想来组织空间数据,也割裂了实体之间内在的联系。
在空间数据库组织与管理上,目前主要有文件型、文件与关系数据库混合型、全关系型以及对象关系型。传统的文件型空间数据库、文件与关系混合型空间数据库,按图幅或一定的区域范围以文件的形式来组织与存储空间几何数据,不同的图幅或区域之间存在缝隙。在文件与关系数据库混合型的空间数据库中,空间几何数据贮存在文件中,属性数据贮存在关系数据库中,属性数据和几何数据之间通过内部标识来链接,空间几何数据和属性数据之间存在缝隙。
3.数据处理
数据处理的过程中也会引入缝隙,产生这种缝隙的原因有:①数据处理过程的顺序不一致;②选择的处理参数不一致;③数字化的精度不一致。
4.多源异构数据共享
数据属性(数学基础、比例尺、用途、时间、精度等)的不同,导致了数据的差异,这些差异是多层次和多方面的,它们集中体现了数据的异构。数据异构和多源往往是一体的,多源异构是系统内部和系统之间数据裂隙的主要原因(刘仁峰,2005)。
(四)数据缝隙类别和表现
数据缝隙基本可以分为物理缝隙和逻辑缝隙两类。物理缝隙是地理空间的分离存储,本来连续的实体空间被分离到不同的存储空间和存储单元中去,例如空间数据的分幅、分层存储。逻辑缝隙是指逻辑上本身连续的信息不能以逻辑连续的方式呈现,例如跨越多幅图的一条河流,在图幅内查询河流属性(如长度)时只能获取其在本图幅内的相关信息而不是实体整体的信息。显然,由于空间信息本身的海量特性,要完全意义上的实现物理无缝的空间数据库目前还是不可能的,也没有必要。GIS用户关心的不是空间数据是物理无缝,因为GIS呈现给用户的是数据逻辑层,只需要保证用户看到的数据是逻辑无缝的。
物理有缝的数据库向逻辑无缝数据库的转换是无缝空间数据库构建的重要一环。
(五)无缝镶嵌技术
数据的无缝连接包含以下几个问题:投影、坐标系统、比例尺、数据精度等。对不同投影和坐标系统的空间数据在投影和坐标系统上统一采用相同的标准,当空间数据具有多尺度时,无缝连接寻找数据集之间连续的表达方式,它表现为不同尺度数据之间的集成。建立无缝空间数据的关键在于在合适的空间信息框架上实现多源异构空间数据的融合,框架是基础,融合是手段。
1.合适的空间框架选择
(1)适合多尺度信息表达。地球是一个开放的非常复杂的巨大系统,随着观察视角的变化,我们希望空间地理信息比例尺也自动增减。由于地图的自动综合受诸多因素的影响,目前比较可行的是采用多尺度空间数据支持来达到目的。所谓多尺度就是指系统内包含几种不同比例尺(或分辨率)的空间数据,其目的是为了适度地反映系统所关心区域的空间地理信息,以避免地物信息的过粗、失真或地物信息的负载量过大而无法使用。无缝空间数据库也应该符合多尺度空间数据库要求。
(2)适合大区域表达。各种自然和人文现象的空间分布,有其内在的原因和规律,这些原因和规律的获得,往往需要研究大区域多因素的综合作用;另一方面,对于全球范围的环境变异和气候变迁的研究需要基于数字地球的空间框架。大区域的表达,还涉及空间尺度问题,不应继续采用欧氏空间尺度,而应该采用大地线尺度空间。
2.多源异构空间数据的融合
(1)GIS的迅速发展和广泛应用导致了多源空间数据的产生。如何实现不同的GIS软件共享并操作不同来源的地理数据,即GIS多源空间数据的集成,成为GIS发展的关键。目前GIS多源空间数据的集成主要朝着三个方向发展,一是通过建立统一的数据交换标准来约束并规范已有的各类地理信息系统,采用数据交换标准来进行空间数据交换;二是建立开放式地理数据互操作规范,进行地理信息系统互操作;三是GIS数据中间件技术。
(2)统一数据交换标准存在很多实现上的困难。互操作是一个重要发展趋势,是在异构分布式数据库中实现信息共享的途径,它需要将GIS技术、分布处理技术、面向对象方法、数据库设计及实时信息获取方法更有效地结合起来。所谓GIS数据中间件技术是指能够嵌入各类GIS系统的软件,GIS开发者通过中间件开发商提供的接口,访问和操作特定的数据源。
(3)在多源异构数据集成技术尚未成熟的时候,人们再次把目光投向数据本身,如果可以提供关于数据的详细描述,是否可以提高融合数据的能力呢?于是,对于“关于数据的数据”的研究,即对于元数据的研究便普遍展开。从DublinCore到CSDGM与OGC,都提出了相应的元数据标准体系,有了完整而完善的元数据描述,必将提高数据的效能,从而最终促进多源异构数据库向无缝空间数据库的归化。
为实现塔河整个流域数据的无缝集成管理,使之形成统一的整体,设计从缝隙产生的地方开始,分离出数据物理层和数据逻辑层,在统一的空间框架之下,将物理层归化到逻辑层,以消除逻辑层的缝隙,从而实现用户级的逻辑无缝空间数据库;同时制定统一的数据提交规范,如所有矢量数据在入库前统一采用经纬度坐标,栅格数据统一提供两套数据,即高斯坐标和经纬度坐标,以满足不同用户的管理需求和精度要求。