chapter20926lg

收藏

编号:170819385    类型:共享资源    大小:1.14MB    格式:PPT    上传时间:2022-11-22
10
积分
关 键 词:
chapter20926lg
资源描述:
第2章 Oracle Spatial 概述要运行本章的例子,你需要在spatial模式中载入如下三个数据集:imp spatial/spatial file=gc.dmp ignore=y full=yimp spatial/spatial file=map_large.dmp tables=us_interstatesimp spatial/spatial file=map_detailed.dmp tables=us_restaurantsH大纲大纲2.1 2.1 技术和体系结构概述技术和体系结构概述2.2 Oracle Spatial入门2.3 Oracle Spatial技术产品 2.4 在Oracle Spatial安装中期望什么H技术和体系结构概述技术和体系结构概述Oracle Spatial技术分布在两层上:数据库服务器 存储模式、查询、分析工具和位置使能/加载实用工具 应用程序服务器 MapViewer组件H大纲大纲2.1 技术和体系结构概述2.2 Oracle Spatial2.2 Oracle Spatial入门入门2.3 Oracle Spatial技术产品 2.4 在Oracle Spatial安装中期望什么H2.2 Oracle Spatial入门入门 2.2.1 数据模型:存储空间数据 2.2.2 位置使能 2.2.3 查询分析 2.2.4 可视化数据 2.2.5 高级空间引擎H数据模型:存储空间数据数据模型:存储空间数据构成空间信息的两个组件:原点的位置和几何形状u位置 例如:旧金山的中心在一个二维“经度、纬度”空间中被定位到坐标(122.436,37.719)u形状 例如:旧金山的城市边界可能是一个连接多点的多边形SDO_GEOMETRY数据类型记录表中数据行的位置和形状信息。这个数据类型在Oracle内部表示成一个对象数据类型,可以为不同的形状如:点、线、多边形和它们三者之间适当的结合进行建模。(第四章)H位置使能位置使能创建创建us_restaurants_new表表SQL CREATE TABLE us_restaurants_new(id NUMBER,poi_name VARCHAR2(32),location SDO_GEOMETRY-New column to store locations);向一个向一个Oracle表的表的SDO_GEOMETRY列插入值列插入值SQL INSERT INTO us_restaurants_new VALUES(1,PIZZA HUT,SDO_GEOMETRY(2001,-SDO_GTYPE attribute:2 in 2001 specifies dimensionality is 2.NULL,-other fields are set to NULL.SDO_POINT_TYPE-Specifies the coordinates of the point(-87,-first ordinate,i.e.,value in longitude dimension38,-second ordinate,i.e.,value in latitude dimensionNULL-third ordinate,if any),NULL,NULL);转换地址数据(隐式空间信息)到转换地址数据(隐式空间信息)到SDO_GEOMETRY(显式空间数据)对象(显式空间数据)对象SQL SELECTSDO_GCDR.GEOCODE_AS_GEOMETRY(SPATIAL,-Spatial schema storing the geocoder dataSDO_KEYWORDARRAY-Object combining different address components(3746 CONNECTICUT AVE NW,WASHINGTON,DC 20008),US-Name of the country)geomFROM DUAL;GEOM(SDO_GTYPE,SDO_SRID,SDO_POINT(X,Y,Z),SDO_ELEM_INFO,SDO_ORDINATES)-SDO_GEOMETRY(2001,8307,SDO_POINT_TYPE(-77.060283,38.9387083,NULL),NULL,NULL)H查询分析查询分析 查询和分析组件提供了查询和分析空间几何体的核心功能,这个组件有两个子部分:几何体引擎 几何引擎提供分析、比较和操作几何体的函数。索引引擎 为了提高查询效率,Oracle Spatial提供了空间索引引擎。H几何体引擎几何体引擎程序清单程序清单2-4 到离到离I-795最近的五个餐馆最近的五个餐馆 SQL SELECT poi_nameFROM(SELECT poi_name,SDO_GEOM.SDO_DISTANCE(P.location,I.geom,0.5)distanceFROM us_interstates I,us_restaurants PWHERE I.interstate=I795ORDER BY distance)WHERE ROWNUM DROP INDEX us_restaurants_sidx;SQLCREATE INDEX us_restaurants_sidx ON us_restaurants(location)INDEXTYPE IS mdsys.spatial_index;程序清单程序清单2-6 使用空间索引查找距使用空间索引查找距I-795最近的五个餐馆最近的五个餐馆SQL SELECT poi_nameFROM us_interstates I,us_restaurants PWHERE I.interstate=I795AND SDO_NN(P.location,I.geom)=TRUEAND ROWNUM SELECT POI_NAMEFROM us_interstates I,us_restaurants PWHERESDO_ANYINTERACT(P.location,SDO_GEOM.SDO_BUFFER(I.geom,50,0.5,UNIT=KM)=TRUEAND I.interstate=I795;POI_NAME-SPICY DELIGHTPHILLYS STEAK EXPRESSEL TAMARINDOMCDONALDSPIZZA HUTCHINA HUTKFCBLAIR MANSION INN DINNER THEATERPIZZA BOLIS9 rows selected.H图2-2 在I-795公路50公里缓冲区内的餐馆H可视化数据可视化数据如何显现空间查询的结果呢?Oracle技术包含了MapViewer组件帮助从空间数据生成地图。每一个地图与一套主题相关,每一个主题表示来自一个具体的表的空间数据并且与一个显示样式相关联。Oracle Spatial提供适当的字典视图USER_SDO_MAPS、USER_SDO_THEME和USER_SDO_STYLES以定义新的地图,把地图与主题相联系,且指定数据库中每个主题的显示样式。此外,MapViewer显示有确定地图名的地图。基本上来说,一个Servlet程序查询数据库视图,根据指定的地图名获得相应的主题和样式规则。使用这些信息,MapViewer Servlet程序可生成一个新构成地图的图像。H图2-3 使用MapViewer生成的含有多个主题的样例地图H高级空间引擎高级空间引擎 高级空间引擎有若干个子组件以满足传统GIS应用程序所需要的复杂的空间数据分析和操作。网络数据模型 线性参考系统 空间分析和挖掘引擎 GeoRaster 拓扑数据模型H大纲大纲2.1 技术和体系结构概述2.2 Oracle Spatial入门2.3 Oracle Spatial2.3 Oracle Spatial技术产品技术产品 2.4 在Oracle Spatial安装中期望什么H2.3 Oracle Spatial技术产品技术产品 2.3.1 Locator 2.3.2 Spatial选项 HLocatorLocator为特定的应用程序提供了空间功能的核心子集。具体来说,它包含如下功能:p 使用SDO_GEOMETRY数据类型存储空间数据的数据模型:这包括存储所有类型的几何体(点、线、多边形等等)。p 使用索引引擎进行查询和分析:这包括创建空间索引和使用相关的空间操作符,如:SDO_NN进行查询。在Locator中,这个功能仅限于二维数据。p SDO_GEOM.SDO_DISTANCE和SDO_GEOM.VALIDATE_GEOMETRY_XXX函数:这些函数也是Locator的一部分。H图2-4 Locator的功能。Locator是Spatial技术的免费部分,用黑色显示。HLocator 将空间位置作为SDO_GEOMETRY列存储后,Locator可提供多种空间查询。如下是Locator的典型应用:简单的简单的GIS应用程序应用程序可能只需在简单的地理数据上,如:州、城市或者地产的边界,使用通过空间操作符实现的基于索引的查询。但是通常情况下,大部分GIS应用程序可能需要几何引擎的功能(这在Locator中不支持)。简易商业应用简易商业应用,这里的空间数据是从第三方供应商获得。正如你将在第8章看到的一样,Locator中支持的基于索引的操作符可以在商业应用程序中执行大量的分析。CAD/CAM和类似的应用程序和类似的应用程序,这里的空间数据不是指地球表面的位置。例如:在CAD/CAM应用程序中,数据可表示一个汽车不同部分的结构/形状。在这种情况下,数据本身就是在二维或者三维坐标空间中,不需要转换非空间属性(如地址)以获得空间信息。概括地讲,Locator提供Spatial技术的一个核心子集,如果你想要利用Spatial技术全部的特性集,你需要购买企业版Oracle数据库中的Spatial选项。HSpatial选项选项 Spatial选项是Oracle 数据库服务器企业版的一个付费选项。Spatial选项由以下部分组成:u使用使用SDO_GEOMETRY数据类型存储数据模型数据类型存储数据模型:这包括存储所有类型的几何体(点、线、多边形等等)。u使用索引引擎进行查询和分析使用索引引擎进行查询和分析:这包括创建空间索引和使用相关的空间操作符如:SDO_NN进行查询。这个功能也支持三维几何体,如:建筑模型的表面和实体以及其它在三维城市模型应用程序中的建筑元素。u使用几何引擎进行查询和分析使用几何引擎进行查询和分析:支持对单个几何体、一对几何体或者一组几何体进行不同的分析。典型的操作包括长度、二维几何体的面积和长度、三维几何体的面积和体积。u使用地理编码器实现位置使能使用地理编码器实现位置使能:这个功能帮助从地址数据到SDO_GEOMETRY数据的转换。u高级空间引擎功能高级空间引擎功能:这包括路由和网络分析。H图2-5 Spatial选项的功能用灰色显示H大纲大纲2.1 技术和体系结构概述2.2 Oracle Spatial入门2.3 Oracle Spatial技术产品 2.4 2.4 在在Oracle SpatialOracle Spatial安装中期望什么安装中期望什么H在在Oracle Spatial安装中期望什么安装中期望什么2.4.1 在数据库中安装Oracle Spatial2.4.2 升级2.4.3 理解Spatial安装 2.4.4 检查一个Spatial安装的版本H在数据库中安装在数据库中安装Oracle Spatial Oracle Spatial将随Oracle 数据库服务器的标准版和企业版自动被安装。所有的Spatial数据类型、视图、包和函数都是作为MDSYS模式的一部分被安装。为了验证Spatial是否被正确安装,首先需要检查MDSYS帐户是否存在。如果不存在,Spatial就没有被安装.你可以通过你的SYS(SYSDBA)帐户连接后执行程序清单2-8所示的SQL。程序清单2-8 验证Spatial是否成功安装SQL SELECT COMP_NAME,STATUSFROM DBA_REGISTRYWHERE COMP_NAME=Spatial;COMP_NAME STATUS-Spatial VALIDH升级升级H理解理解Spatial安装安装 当安装或者升级失败时,从哪里找到合适的空间文件,以及如何执行一些初步的调查?(1)要查看所有的空间文件,可以进入$ORACLE_HOME/md/admin目录。在这个目录中,你将发现与Oracle Spatial相关的所有的文件。(2)在创建数据库的过程中,MDSYS帐户被创建且拥有适当的权限(查看脚本mdinst.sql和mdprivs.sql以获得更多细节),而且catmd.sql文件被加载到MDSYS模式。这个文件以适当的次序加载所有的SDO和PRVT文件,并解决所有Spatial包之间的依赖性。对Locator来说,catmdloc.sql(而不是catmd.sql)被加载。同样的,这个目录里适当的文件,如:sdodbmig.sql(升级)、sdopatch.sql(打补丁)和sdoe*.sql(降级)在升级、打补丁和降级时被加载/执行。H程序清单程序清单2-9 在一个在一个Spatial安装中检查无效对象安装中检查无效对象SQL SELECT OBJECT_NAME,OBJECT_TYPE,STATUSFROM ALL_OBJECTSWHERE OWNER=MDSYS AND STATUS VALIDORDER BY OBJECT_NAME;如果程序清单2-9返回任何行,你应该联系Oracle 客户服务以获得疑难解答的帮助。H检查一个检查一个Spatial安装的版本安装的版本你可以通过执行列表2-10中的查询获得Spatial安装的版本 列表列表2-10 检查一个检查一个Spatial安装的版本安装的版本SQL SELECT SDO_VERSION FROM DUAL;H2.5 本章小节本章小节(1)Oracle Spatial中提供的功能:一个用于存储空间数据的SQL级别的数据类型、执行空间查询和分析的新的操作符和函数集、可视化空间数据的MapViewer和Oracle Maps技术以及执行像路由和网络分析这种复杂分析的高级组件。(2)讲述了这些功能如何被封装在数据库服务器 和应用程序服务器中。(3)讲述了在一个典型的Spatial安装中应期望什么和在哪里可以找到适当的Spatial文件。
展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
提示  装配图网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
关于本文
本文标题:chapter20926lg
链接地址:https://www.zhuangpeitu.com/article/170819385.html
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!