lixaokui
路人甲
路人甲
  • 注册日期2003-12-25
  • 发帖数768
  • QQ28796446
  • 铜币27枚
  • 威望0点
  • 贡献值0点
  • 银元0个
阅读:1329回复:2

ArcSDE for Oracle配置和调整初步

楼主#
更多 发布于:2004-09-22 15:51
<TABLE cellSpacing=6 cellPadding=6 width="100%" border=0>

<TR>
<TD width="100%">
<P align=center><FONT face=黑体 size=3>ArcSDE for Oracle</FONT><FONT size=3>配置和调整初步</FONT></P>
<HR>
</TD></TR>
<TR>
<TD width="100%"><B></B><FONT face=Arial size=3></FONT><FONT size=3></FONT><B><FONT size=3></FONT><FONT face=宋体 size=3></FONT></B><B>
<P  align=justify><FONT size=2>【摘要】</FONT></B><FONT size=2><FONT>由于</FONT>ArcSDE<FONT>本身所具有的海量数据存储、多用户并发访问、版本管理、长事务处理等强大优势,在</FONT>GIS<FONT>应用系统中引入</FONT>ArcSDE<FONT>作为空间数据存储和管理引擎,变得越来越普遍。随着</FONT>ArcSDE<FONT>的应用日益广泛,</FONT>ArcSDE<FONT>的性能越来越受到关注。本文以</FONT>Oracle<FONT>数据库为例,从影响</FONT>ArcSDE<FONT>性能的关键环节出发,主要介绍数据库和</FONT>ArcSDE<FONT>两个方面的一些基本配置和调整手段。</FONT></FONT></P>
<P  align=justify><B><FONT size=2>【关键词】</FONT></B><FONT size=2>ArcSDE Oracle <FONT>配置 调整</FONT></FONT></P><B>
<P > </P>
<P ><FONT size=2>一、主要内容</FONT></P></B>
<P  align=justify><FONT size=2><FONT>影响</FONT>ArcSDE<FONT>性能的因素很多,但是归根到底包括两个方面,后台的</FONT>Oracle<FONT>和</FONT>ArcSDE<FONT>的配置。</FONT>Oracle<FONT>方面,不仅包含数据库组件大小定义、存储参数等内容,还包括</FONT>Oracle<FONT>实例的初始化参数、</FONT>Oracle<FONT>统计信息分析等内容。</FONT>ArcSDE<FONT>方面包括</FONT>DBTUNE<FONT>存储参数、空间索引、以及统计信息更新等方面。作为建立在后台数据库系统之上的空间数据库引擎,</FONT>ArcSDE<FONT>的性能很大程度上取决于</FONT>Oracle<FONT>的性能状况。换句话说,如果没有良好性能的</FONT>Oracle<FONT>系统的支持,就无法建立高效的</FONT>ArcSDE<FONT>数据访问引擎。</FONT></FONT></P><FONT face=宋体 size=3></FONT><B>
<P > 
<P ><FONT size=2>二、降低</FONT><FONT size=2>Oracle<FONT>磁盘</FONT>I/O</FONT></P></B>
<P ><FONT size=2><FONT>典型的</FONT>Oracle<FONT>安装方便了数据库安装的过程,但一定不会达到预期的良好性能。没有经过认真配置和调整的</FONT>Oracle<FONT>系统不会获得满意的效率。在</FONT>Oracle<FONT>系统中,磁盘</FONT>I/O<FONT>冲突导致了大多数明显的性能上的瓶颈。除了购买更快的磁盘驱动器和附加的网卡外,问题的解决方法在于平衡文件系统中的磁盘</FONT>I/O<FONT>,尽可能将其降至最低,减少进程间</FONT>I/O<FONT>等待发生的可能性。</FONT></FONT></P><B>
<P  align=justify> </P>
<P  align=justify><FONT size=2>合理放置数据库组件的参考原则</FONT></P></B>
<P ><FONT size=2>如果估算好了数据文件的大小,就可以确定在文件系统中如何放置它们。本段中列举了一些相关的指导,不必完全照搬,因为需要考虑自己磁盘驱动器的数目和大小。这些指导原则上按照其重要程度从大到小进行排序。数据库使用一段时间之后,一种正常的使用模式也就建立了,访问非常频繁的数据文件需要隔离在单独的磁盘上。</FONT></P>
<UL>
<LI>
<P ><FONT size=2>分离表和索引</FONT> </P></LI></UL>
<P ><FONT size=2><FONT>每次</FONT>Oracle<FONT>访问索引来定位到某个记录行时,它必须同时访问表来取出所指向的行。此时如果表和索引存放在同一个磁盘上时,磁头就需要在索引和表之间进行移动。尽可能不要把索引和表存储在同一个表空间中。始终将表的数据文件和索引的数据文件分开存放。当表及其索引的数据块位于同一磁盘驱动器时,这样做可以减少磁头移动的发生。</FONT></FONT></P>
<UL>
<LI>
<P ><FONT size=2>按照活动性放置文件</FONT> </P></LI></UL>
<P ><FONT size=2><FONT>将联机重做日志文件存储在它们自己的磁盘驱动器上。经常进行编辑操作</FONT>(inserts<FONT>,</FONT>updates<FONT>,</FONT>or deletes)<FONT>的</FONT>Oracle<FONT>数据库具有非常活跃的联机重做日志文件。将联机重做日志文件和其他也需要频繁进行</FONT>I/O<FONT>操作的数据文件从物理上分离是很重要的。只要有可能,将日志文件创建在自己单独的磁盘驱动器上,或者和其他一些相对静态的文件一起存放。在一个经常进行编辑操作的数据库中,就</FONT>I/O<FONT>而言,联机重做日志文件是最活跃部分。如果无法将它们安排在自己单独的磁盘驱动器上,就将它们和那些相对</FONT>I/O<FONT>操作较少的文件放置在一起。</FONT></FONT></P>
<P ><FONT size=2><FONT>一定将回滚段数据文件与重做日志文件分离。当数据库被编辑时,回滚段会被经常性地访问。要尽量将这些数据文件和其他活动性强的文件分开存放。这样做能够提高</FONT>Oracle<FONT>处理事务的效率。</FONT></FONT></P>
<P ><FONT size=2><FONT>在索引建立之后,如果</FONT>SORT_AREA_SIZE<FONT>参数已经设置为推荐的</FONT>512KB<FONT>,</FONT>ArcSDE<FONT>就不再使用临时表空间。因此,如果其他的应用程序也同样不使用临时表空间的话,临时表空间可以和其他活动性高的文件放置在一起。</FONT></FONT></P>
<P ><FONT size=2><FONT>将系统表空间数据文件和其他活动性强的数据文件放置在一起。对系统表空间数据字典表的访问率相对较低,因为它们的数据缓存在共享池(</FONT>shared pool<FONT>)和高速缓冲区</FONT>(buffer cache)<FONT>中。</FONT></FONT></P>
<P ><FONT size=2><FONT>根据预期的</FONT>I/O<FONT>访问情况放置</FONT>business<FONT>表和索引数据文件。如果预期某个特定的数据文件会具有很高的</FONT>I/O<FONT>访问,尽量把它单独放置在自己的磁盘驱动器上或者和其他活动性较低或中等的数据文件放置在一起。</FONT></FONT></P><B>
<P > 
<P ><FONT size=2>三、ArcSDE<FONT>存储参数</FONT></FONT></P></B>
<P ><FONT size=2><FONT>和</FONT>Oracle<FONT>系统相同,典型的</FONT>ArcSDE<FONT>安装过程很方便,但一定不会达到预期的良好性能。没有经过配置和调整的</FONT>ArcSDE<FONT>也同样不会获得满意的效率。</FONT></FONT></P>
<OL>
<OL><B>
<LI>
<P ><FONT size=2>DBTUNE<FONT>表</FONT></FONT> </B></P></LI></OL></OL>
<P ><FONT size=2><FONT>如前所述,</FONT>ArcSDE<FONT>的性能很大程度上取决于</FONT>Oracle<FONT>的效率,那么如何把先前提到的</FONT>Oracle<FONT>中减少</FONT>I/O<FONT>冲突和瓶颈的原则体现到</FONT>ArcSDE<FONT>的配置过程中呢?即如何控制</FONT>ArcSDE<FONT>表和索引在</FONT>Oracle<FONT>中的的存储配置呢?我们可以通过</FONT>DBTUNE<FONT>中定义的存储参数来实现。</FONT></FONT></P>
<P ><FONT size=2>ArcSDE<FONT>从</FONT>DBTUNT<FONT>表中读取存储的参数,用来定义</FONT>ArcSDE<FONT>表和索引的物理数据参数。这些存储参数按照配置关键字进行分组。当</FONT>ArcSDE<FONT>客户端程序创建数据对象(表和索引)时,这些数据对象会被赋予配置关键字。</FONT></FONT></P>
<P ><FONT size=2><FONT>在</FONT>ArcSDE<FONT>之前,配置关键字存储在一个名为“</FONT>dbtune.sde<FONT>”的文件中,位于</FONT>ArcSDE<FONT>的</FONT>etc<FONT>目录中。在执行</FONT>sdesetupora8*<FONT>命令时,</FONT>ArcSDE<FONT>使用</FONT>dbtune.sde<FONT>文件进行存储参数的初始化。配置参数从</FONT>dbtune.sde<FONT>文件读出,然后写入</FONT>DBTUNE<FONT>数据表。</FONT></FONT></P>
<P ><FONT size=2><FONT>应该注意到,</FONT>ArcSDE<FONT>已经简化了存储的参数。</FONT>ArcSDE<FONT>没有为每一个</FONT>Oracle<FONT>的存储参数匹配一个相同的</FONT>ArcSDE<FONT>参数;</FONT>ArcSDE<FONT>的存储参数已经演变为配置的字符串,反应表和索引的整体存储配置。</FONT></FONT></P>
<P ><FONT size=2>ArcSDE<FONT>以前版本的存储参数可以自动转换为新的、更为简化的</FONT>ArcSDE<FONT>版本的存储参数。</FONT>ArcSDE<FONT>的存储参数保留了</FONT>Oracle<FONT>的</FONT>CREATE TABLE<FONT>或</FONT>CREATE INDEX<FONT>语句中所有存储参数。</FONT></FONT></P>
<P  align=justify><FONT size=2>ArcSDE<FONT>在安装过程中产生</FONT>DBTUNE<FONT>表。如果</FONT>dbtune.sde<FONT>文件不存在或者为空,</FONT>sdesetupora8*<FONT>就会利用缺省的配置关键字(</FONT>ArcSDE<FONT>的最小配置)创建并生成</FONT>DBTUNE<FONT>表。在几乎所有的情况下,需要利用指定的存储参数为数据库创建表。</FONT></FONT></P><B>
<P ><FONT face=Arial size=2>2</FONT><FONT size=2>、编辑</FONT><FONT size=2>DBTUNE<FONT>表</FONT></FONT></B>
<P ><FONT size=2><FONT>尽管可以使用</FONT>SQL<FONT>语句来编辑</FONT>DBTUNE<FONT>表的内容,比如</FONT>SQL*Plus<FONT>,但是</FONT>ArcSDE<FONT>中引入的</FONT>Sdedbtune<FONT>命令为</FONT>ArcSDE<FONT>管理员提供了一种方便的管理和维护</FONT>DBTUNE<FONT>表的方式。</FONT>Sdedbtune<FONT>命令将</FONT>DBTUNE<FONT>表中的记录和</FONT>ArcSDE etc<FONT>目录中的文件之间进行导入或者导出。</FONT></FONT></P>
<P ><FONT size=2><FONT>转出的文件可以在文本编辑器中进行修改(</FONT>UNIX<FONT>下的</FONT>”vi”<FONT>,或者</FONT>Windows NT<FONT>中的</FONT>”notepad”<FONT>)。下面的例子中</FONT>DBTUNE<FONT>表转出到</FONT>dbtune.out<FONT>文件中,而该文件被</FONT>vi<FONT>编辑之后再转入到表中:</FONT></FONT></P>
<P ><FONT size=2>$ sdedbtune -o export -f dbtune.out -u sde -p fredericton</FONT></P>
<P ><FONT size=2>$ vi dbtune.out</FONT></P>
<P ><FONT size=2>$ sdedbtune -o import -f dbtune.out -u sde -p fredericton -N</FONT></P>
<P ><FONT size=2>sdedbtune<FONT>管理工具总是转出文件到</FONT>ArcSDE<FONT>的</FONT>etc<FONT>目录中。不能改变和指定文件的存放位置到别的路径。通过不允许其他目录,可以保证只有</FONT>ArcSDE<FONT>管理目录的所有者才能执行</FONT>sdedbtune<FONT>命令。</FONT></FONT></P><B>
<P ><FONT face=Arial size=2>3</FONT><FONT size=2>、DBTUNE<FONT>修改实例</FONT></FONT></B>
<P  align=justify><FONT size=2><FONT>比如我们已经在</FONT>Oracle<FONT>中分别创建了用于存放空间数据的表空间</FONT>sdedata<FONT>和用于存放索引的</FONT>sdeindx<FONT>表空间,并根据“索引和数据分开存放”的原则,将它们建立在不同的的物理驱动器上。然后,我们可以修改</FONT>dbtune<FONT>中</FONT>default<FONT>关键字中的参数如下:</FONT></FONT></P>
<P  align=justify><FONT size=2>##DEFAULTS</FONT></P>
<P  align=justify><FONT size=2>GEOMETRY_STORAGE "SDEBINARY"</FONT></P>
<P  align=justify><FONT size=2>ATTRIBUTE_BINARY "LONGRAW"</FONT></P>
<P  align=justify><FONT size=2>B_STORAGE "PCTFREE 10 PCTUSED 90 INITRANS 4 TABLESPACE </FONT><B><FONT size=2>sdedata</FONT></P></B>
<P  align=justify><FONT size=2>STORAGE (FREELISTS 4 MINEXTENTS 1 PCTINCREASE 0)"</FONT></P>
<P  align=justify><FONT size=2>B_INDEX_ROWID "PCTFREE 10 INITRANS 4 TABLESPACE </FONT><B><FONT size=2>sdeindx</FONT></P></B>
<P  align=justify><FONT size=2>STORAGE (FREELISTS 4 MINEXTENTS 1 PCTINCREASE 0) NOLOGGING"</FONT></P>
<P  align=justify><FONT size=2>B_INDEX_SHAPE "PCTFREE 10 INITRANS 4 TABLESPACE </FONT><B><FONT size=2>sdeindx</FONT></P></B>
<P  align=justify><FONT size=2>STORAGE (FREELISTS 4 MINEXTENTS 1 PCTINCREASE 0) NOLOGGING"</FONT></P>
<P  align=justify><FONT size=2>B_INDEX_USER "PCTFREE 10 INITRANS 4 TABLESPACE </FONT><B><FONT size=2>sdeindx</FONT></P></B>
<P  align=justify><FONT size=2>STORAGE (FREELISTS 4 MINEXTENTS 1 PCTINCREASE 0) NOLOGGING"</FONT></P>
<P  align=justify><FONT size=2>………….</FONT></P>
<P  align=justify><FONT size=2><FONT>在该例中,将</FONT>business<FONT>表的数据存放在</FONT>sdedata<FONT>表空间中,其他索引存放在</FONT>sdeindx<FONT>表空间中。当然,其他存储参数,诸如初始大小、最大值、增长率等都可以根据需要进行调整。</FONT></FONT></P>
<P  align=justify> </P><B>
<P ><FONT size=2>四、ArcSDE<FONT>空间索引</FONT></FONT>
<OL><FONT face=宋体 size=3></FONT>
<LI>
<P ><FONT size=2>基本概念</FONT> </P></LI></OL>
<P ></B><FONT size=2><FONT>为了提高空间查询的性能,</FONT>ArcSDE<FONT>采用空间索引的机制。是一个覆盖整个要素类的两维索引,类似于一般的道路图上的索引网格。</FONT>ArcSDE<FONT>可以赋予三层空间索引网格,每个网格层都具有自己的格网大小。第一层网格为必需,它的格网尺寸最小;而第二和第三层可选,它们的网格可以通过设置为</FONT>0<FONT>使之无效。如果有效,第二层网格大小必须至少比第一层网格大三倍,而第三层网格大小也必须至少比第二层网格大三倍。</FONT></FONT></P><B>
<OL start=2>
<LI>
<P ><FONT size=2>建立空间索引</FONT> </B></P></LI></OL>
<P ><FONT size=2><FONT>每次向</FONT>business<FONT>表添加要素类时,会为它自动创建一个的空间索引。</FONT>ArcSDE<FONT>服务器在整个要素类的生命周期内都管理它的空间索引。当插入、更新或者删除要素时,空间索引会被自动更新。</FONT>load-only<FONT>模式会禁止空间索引的管理,直到载入数据结束。这种做法充分地提高了载入的性能,并且在大批量载入数据时必不可少。</FONT>Load-only<FONT>模式不允许</FONT>SQL<FONT>之外的查询操作。</FONT></FONT></P>
<P ><FONT size=2><FONT>数据载入结束后,返回</FONT>normal<FONT>模式,空间索引就可用了。从</FONT>normal I/O<FONT>模式到</FONT>load-only I/O<FONT>模式的转换会重建空间索引。在</FONT>normal I/O<FONT>模式下,插入、更新或者删除要素会更新空间索引。</FONT></FONT></P>
<P ><FONT size=2>ArcSDE<FONT>首先将每个要素的范围覆盖到最低层的网格,获得网格数量。如果要素超过四个格网,</FONT>ArcSDE<FONT>将该要素提升到更高层次的网格(如果定义了更高层次的网格)。</FONT>ArcSDE<FONT>会一直提升要素到更高层次网格,直到该要素位于四个格网之内或者已到达最高层次的网格水平。在最高一层网格,图形可以被超过四个的格网索引。</FONT></FONT></P>
<P ><FONT size=2>ArcSDE<FONT>将要素的格网和相应的</FONT>shape ID<FONT>、和要素范围一起添加到空间索引表中。网格层次和每个格网都进行编码,如下例:该要素类有两个网格层次。面状图形</FONT>101<FONT>位于第</FONT>1<FONT>层的第</FONT>4<FONT>号格网,那么空间索引表中就添加了一条记录,因为该要素在四个格网之内(事实上是一个格网)。面状要素</FONT>102<FONT>的范围位于第一层网格的格网</FONT>1<FONT>到</FONT>8<FONT>中。因为该要素的范围超出了四个格网,所以该要素被提升到第二层,在第二层中它位于两个格网之内。因此,要素</FONT>102<FONT>被第二层网格索引,并在空间索引表中添加了</FONT>2<FONT>条记录。</FONT></FONT></P>
<P  align=center><IMG src="http://www.esrichina-bj.cn/library/chinanews/image/cn14-ye.gif" border=0></P>
<OL start=2>
<OL start=3><B>
<LI>
<P ><FONT size=2>空间查询和空间索引</FONT> </P></LI></OL></OL></B>
<P ><FONT size=2><FONT>空间查询,比如查找某个州边界内的所有湖泊,就会使用空间索引。空间索引会被使用,除非</FONT>SE_stream_set_spatial_constraints<FONT>函数中的查找顺序设置为</FONT>SE_ATTRIBUTE_FIRST<FONT>。当查找顺序设为</FONT>SE_ATTRIBUTE_FIRST<FONT>时,</FONT>ArcSDE<FONT>忽略空间索引,而采用属性条件作为</FONT>where<FONT>子句查找满足条件的要素类中的记录。当使用空间索引时,</FONT>ArcSDE<FONT>通常按照下面的过程执行查询:</FONT></FONT></P>
<UL>
<LI>
<P ><FONT size=2><FONT>定义范围。范围可以之间由应用程序定义,比如</FONT>ArcMap<FONT>的</FONT>zoom in<FONT>工具定义的范围。此外,范围也可以由其他的要素范围来确定。</FONT></FONT> </P>
<LI>
<P ><FONT size=2><FONT>连接(</FONT>Join<FONT>)空间索引表和要素表,返回与该范围相交的格网。</FONT></FONT> </P>
<LI>
<P ><FONT size=2><FONT>连接(</FONT>Join<FONT>)要素表和</FONT>business<FONT>表,应用属性条件中的</FONT>where<FONT>子句进行更进一步的查询。</FONT></FONT> </P></LI></UL><B><FONT face=宋体>
<OL>
<OL start=4></FONT>
<LI>
<P ><FONT size=2>调整空间索引</FONT> </B></P></LI></OL></OL>
<P ><FONT size=2><FONT>格网的大小影响空间索引表的大小。设置空间索引在于寻找格网大小的平衡点</FONT>—<FONT>较小的格网会使每个要素对应较多的格网,也就需要空间索引表中的更多记录。由于客户端应用程序和空间数据的特征在各个系统之间差异很大,所以没有单一的适合所有情形的空间索引,有时需要尝试不同的格网大小和网格层次的配置。</FONT></FONT></P>
<P ><FONT size=2>sdelayer<FONT>命令有几个操作选项可以通过改变格网大小和添加新的网格层次优化空间索引(</FONT>’alter’<FONT>操作选项)。</FONT>‘stats’<FONT>和</FONT>‘si_stats’<FONT>操作显示当前空间数据特征和空间索引信息。</FONT></FONT></P>
<P ><FONT size=2>如下为一些提高空间查询性能的方法:</FONT></P>
<P ><FONT size=2><FONT>考虑需要多少个网格层次,而且记住</FONT>ArcSDE<FONT>服务器为每个网格层次扫描一次空间索引表。经常一个网格层次对一个要素类而言就是最好的解决方法,即使认为将几何图形分布在多个不同的网格层次可以减少空间索引表的入口。</FONT></FONT></P>
<P ><FONT size=2>对于纯点状类型的要素类,使用一个网格层次,而且考虑增大格网大小。空间查询一般处理点状图形要比其他类型快。</FONT></P>
<P ><FONT size=2>监视空间索引。如果数据经常发生变化,调整空间索引会很困难。调整措施取决于空间数据的结构。当空间数据变化时,定期访问空间索引。</FONT></P>
<P ><FONT size=2>根据具体应用建立空间索引。将应用程序窗口大小和空间索引网格大小相匹配。</FONT></P>
<P ><FONT size=2><FONT>对于未知的或者变化的应用程序窗口,开始定义一个网格层次,格网大小为要素平均范围大小的</FONT>3<FONT>倍。可以利用如下的查询获得要素的平均大小:</FONT></FONT></P>
<P ><FONT size=2>select (avg(emaxx - eminx) + avg(emaxy - eminy)) / 2 from f<N></FONT></P>
<P ><FONT size=2>(where <N> is the layer number of the feature class)</FONT></P>
<P ><FONT size=2>根据数据种类设计要素类,比如类型、几何大小、和分布情况。有时精心设计的要素类会更加充分地提高空间查询的性能。</FONT></P>
<OL>
<OL start=5><B>
<LI>
<P ><FONT size=2>查看空间索引统计值</FONT> </P></LI></OL></OL></B>
<P ><FONT size=2>sdelayer<FONT>命令的空间索引统计操作</FONT>‘si_stats’<FONT>,能够有助于确定优化的空间索引网格大小。优化网格大小取决于所有要素几何图形的空间范围、要素几何空间范围的差异、和要对该要素类进行的查询类型。以下是一个</FONT>si_stats<FONT>输出的例子:</FONT></FONT></P>
<P ><FONT size=2>$ </FONT><B><FONT size=2>sdelayer -o si_stats -l victoria,parcels -u av -p mo -i sde81</FONT></P></B>
<P ><FONT size=2>输出结果显示每个网格层次的统计值:</FONT></P>
<UL>
<LI>
<P ><FONT size=2>网格层次和格网大小</FONT> </P>
<LI>
<P ><FONT size=2>当前网格层次总的空间索引记录数</FONT> </P>
<LI>
<P ><FONT size=2>当前网格层次种存储的图形总数</FONT> </P>
<LI>
<P ><FONT size=2>每个图形的空间索引比率</FONT> </P>
<LI>
<P ><FONT size=2>分组的图形数量和百分比。表明图形空间索引在该网格层次如何分组。</FONT> </P>
<LI>
<P ><FONT size=2>每个网格的图形平均数</FONT> </P>
<LI>
<P ><FONT size=2>每个网格的最大数量</FONT> </P>
<LI>
<P ><FONT size=2>完全在一个网格中的图形的百分比</FONT> </P></LI></UL><FONT face=宋体 size=3></FONT><B>
<P ><FONT size=2>五、总结</FONT></B>
<P ><FONT size=2><FONT>本文并没有涉及所有</FONT>ArcSDE<FONT>性能的调整和配置内容,也没有就所有影响其性能的因素进行讨论。本文仅从最关键的磁盘</FONT>I/O<FONT>和空间索引等因素出发,介绍了配置和调整的一些关键原则。关于其他因素的配置和调整情况,比如</FONT>Oracle<FONT>实例的初始化参数、</FONT>Oracle<FONT>数据库组件的大小、</FONT>Oracle<FONT>数据库的统计信息更新、以及</FONT>ArcSDE<FONT>的其他存储参数,可以参考相关的指南。</FONT></FONT></P></TD></TR></TABLE>
喜欢0 评分0
西门吹血,有了鼓风机,就不用吹啦!
agua
路人甲
路人甲
  • 注册日期2003-07-29
  • 发帖数109
  • QQ
  • 铜币344枚
  • 威望0点
  • 贡献值0点
  • 银元0个
1楼#
发布于:2004-09-22 16:37
<img src="images/post/smile/dvbbs/em01.gif" />
举报 回复(0) 喜欢(0)     评分
nash13
路人甲
路人甲
  • 注册日期2008-03-28
  • 发帖数86
  • QQ
  • 铜币316枚
  • 威望0点
  • 贡献值0点
  • 银元0个
2楼#
发布于:2008-04-10 15:59
<img src="images/post/smile/dvbbs/em02.gif" /><img src="images/post/smile/dvbbs/em04.gif" />very good document!thanks!!!!
举报 回复(0) 喜欢(0)     评分
游客

返回顶部