ArcSDE geodatabase直连原理----flyingme

客户端应用程序直接连接到GeoDatabase意味着,数据库和客户端之间通过直连驱动通讯,而不是ArcSDE服务。这也意味着,在服务器端运行的很多进程将在客户端机器上运行。除此之外, ArcSDE服务创建连接时,ArcSDE执行的某些限制,例如密码长度,将由DBMS来执行。
ArcSDE直连驱动和ArcSDE服务采用相同的代码构建。不同的是,ArcSDE直连驱动是一系列动态链接库dll,安装和运行于客户端应用程序的进程空间内;而ArcSDE服务是可执行程序,运行于服务器端。
由于直连驱动和ArcSDE服务采用相同的代码构建,因此数据库配置必须与使用ArcSDE服务连接数据库时所安装的数据库保持一致,即同样的ArcSDE管理员账户和ArcSDE空间数据库系统表必须存在。在ArcSDE连接请求之前,必须安装好,同时客户端机器要配置好,用于网络访问。
1.    使用直连的情形
使用直连的一些例子如下所示。
1)    不管理ArcSDE服务
直连数据库驱动不需要管理ArcSDE服务,不需要安装、配置和启动中间进程giomgr.exe。
2)    为可伸缩的系统提供更多的选择
直连架构将ArcSDE组件的功能迁移到桌面执行,移除了服务器端的ArcSDE负载,释放更多的资源可供DBMS使用,为数据库服务器提供了更好的可伸缩性。
3)    直连速度更快
直连在客户机上执行处理,比服务器端处理更快。与客户机上执行处理相比,服务器端执行要同时处理来自许多客户机的请求,然后把计算结果需通过网络传送到客户机。
4)    直连配置完全适用于failover环境。
例如,使用直连驱动可非常方便的配置使用Oracle RAC的系统。
备注:Switchover and Failover- SwitchOver是Oracle DataGuard环境中一个很重要的角色,用来完成在primary database 和 standby databases中无任何数据丢失的主备切换。在主备切换中,采用switchover方式,可以保证不丢失任何数据。在主备切换过程中,原来的 primary database 将转变为standby role ,而原来的standby database将转变为primary role. 这种模式的切换在主备端都不需要重建database.
与SwitchOver想对应,还有一种切换模式叫FailOver,FailOver是一种不可逆的从standy database 到primary database切换的过程,这种情况发生在主库不可用的情况下,比如主库的主机或存储出现重大故障,短期内无法修复的情况下。
5)    使用操作系统认证访问Oracle, DB2, Informix, or PostgreSQL的ArcSDE geodatabase。
6)    连接SQL Server Express的ArcSDE geodatabase。
2.    不能使用直连的情形
以下是不能使用直连的例子。
1)    桌面端机器没有足够的资源处理ArcSDE进程。
2)    ArcSDE geodatabase和客户端版本不兼容。
如果使用ArcGIS 9.2 Service Pack (SP) 5之前的版本, 客户端应用程序和ArcSDE必须保持版本一致.例如, 如果 ArcSDE geodatabase的版本是9.1, ArcGIS Desktop和 ArcIMS必须也是9.1.
从ArcGIS 9.2 SP 5,可与ArcSDE geodatabase 9.3建立直连. 同样, 使用ArcGIS 9.3客户端,可与 ArcSDE 9.0, 9.1, 9.2, or 9.3 geodatabase进行直连. 但要注意的是,直连需要独立安装直连驱动。从ArcGIS 9.2 SP5 或后发布的补丁的客户端直连到ArcSDE 9.3 geodatabase, 需从ESRI支持网站下载驱动. 从 ArcGIS 9.3 或后发布的补丁的客户端连接到老版本的ArcSDE geodatabase, 必须安装正确的直连驱动,直连驱动在软件安装介质中提供。
3)    减少配置每台客户机的繁琐
大多数DBMS,使用直连需要在客户机上进行相应的配置。
3.    直连驱动
直连驱动支持连接和使用DBMS中存储的空间数据,其以动态链接库dll的形式安装在客户端应用程序的Bin目录(windows操作系统),或者UNIX/Linux 操作系统的lib目录。
这些驱动为ArcGIS系列产品、ArcView 3.x Database Access、ArcIMS产品自动安装;如果使用ArcSDE C API构建自定义的应用程序,需要单独安装直连驱动。
4.    Geodatabase安装文件
通过ArcGIS Server企业级的ArcSDE组件,安装GeoDatabase及管理文件。如果使用中仅仅需要直连方式,不需要启动ArcSDE服务,仅安装ArcSDE组件文件,并在Postinstallation配置向导中,创建储存库Repository,并对软件进行授权Authorization。通过ArcSDE组件安装的管理文件,例如sdesetup, sdeconfig, and sdedbtune,可对空间数据库进行有效的管理。

基于数据库和操作系统安装特定的ArcSDE组件,在安装目录下可看到GeoDatabase的安装文件。注意阅读DVD光盘中提供的特定数据库的安装向导,按照postinstallation配置指南安装。不过,忽略创建ArcSDE服务步骤
如果仅使用直连方式,没有必要安装创建ArcSDE服务。ArcSDE for SQL Server Express通过ArcCatalog来管理,包括GeoDatabase安装。因此,不安装独立的管理程序,例如sdeconfig。
5.    客户机安装
使用直连方式连接到到大多数DBMS都需要安装特定的文件,并在客户机上进行配置。
1)    Oracle
客户机直连到oracle空间数据库,需预安装Oracle客户端,并进行配置。
2)    Microsoft SQL Server
客户机直连到Microsoft SQL Server空间数据库,需预安装MDAC。如果使用ArcCatalog9.0或者ArcView3.3,需要MDAC2.6(SP1)及以上版本。如果使用ArcIMS9.0或者ArcGIS9.0,需MDAC2.6及以上版本。
ESRI建议保持最新的MDAC文件。注意MDAC2.8版本不包含在操作系统的更新中。
3)    DB2
客户机需配置远程数据库访问。使用数据库主机上的DB2配置助手连接远程数据库。
4)    Informix
客户机直连到Informix空间数据库,需安装Infomix客户端开发包SDK3,同时安装SetNet32应用程序。客户端软件与操作系统的对应关系如下表所示。
Client SDK    Operating System
CSDK 3.00.HC2    HP-UX
CSDK 3.00.TC2    Windows
CSDK 3.00.UC2    IBM AIX
CSDK 3.00.UC2    Sun Solaris
5)    PostgreSQL
如果使用ArcGIS客户端直连到数据库,例如ArcGIS Desktop,不需要安装额外的数据库驱动。但是,如果使用第三方客户端直连,必须在客户机上安装和配置合适的连接驱动,例如psqlODBC或者JDBC。
6.    环境变量
DBMS variables
Oracle, DB2, and Informix需要在客户机上设置某些环境变量支持直连。
ArcSDE variables
与DBMS进行直连的ArcSDE应用程序从SERVER_CONFIG表中读取参数,与ArcSDE服务读取参数类似。但是,ArcSDE直连程序并不使用ArcSDE服务使用的所有初始化参数。例如TCPKEEPALIVE和MAXTIMEDIFF并不影响直连模式。
7.    错误信息
ArcSDE把错误信息写到sdedc_<dbms>.log日志文件中。如果已经设置SDEHOME环境变量,日志文件将写入该位置的etc目录下;如果etc文件夹安装在ArcGIS的安装目录下,日志文件将写入该位置。如果上述情形皆不成立,日志文件将写入temp目录下。
8.    操作系统认证
使用操作系统认证方式连接到Oracle, DB2, Informix, 或者PostgreSQL数据库,必须使用直连方式。ArcSDE geodatabases for SQL Server Express自动使用操作系统认证,并且自动使用直连模式进行连接。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值