详细信息:我公司目前以各种矢量和栅格文件格式传递地理数据,并且组织不明确。大多数处理都是使用开源工具完成的,但是一些客户要求我们以ESRI Map服务格式托管数据。我们已经有一个承载这些服务的ArcGIS Server实例,但是在将结果转储到ESRI arcsde地理数据库之前,我们仍然使用开源工具在上游进行处理。据我所知,ogr / gdal从arcsde地理数据库读取/写入的能力有限,但不足以使我可以将所有数据合理地存储在arcsde地理数据库中,并期望我们的处理工具能够使用arcsde地理数据库作为公司的主要数据存储。我错了吗?如果我切换到开源地理数据库(如postgis),则我们的处理工具可以正常工作,但我认为我不能使用postgis数据库作为托管ESRI服务的数据存储。我错了吗?是否有可以无缝服务开源和ESRI的地理数据库类型?如果不是,那么维护并行地理数据库的惯例是一种惯例,一种是开放源代码,另一种是ESRI?
其他缺点:
我得到的答案是使用PostgreSQL / PostGIS。唯一的潜在问题是我想将此数据库托管在Amazon Web Services(AWS)上,并且如果可能的话,我想使用Amazon Relational Database Service(RDS)来最小化我们的数据库管理开销(备份,负载平衡)。等)。但是,RDS当前仅支持MySQL,Oracle和SQL Server作为数据库引擎。我在想,如果RDS开始支持PostgreSQL,那将是理想的方案,但要仔细检查一下,PostgreSQL是我对基于ArcGIS + gdal / ogr的开源互操作性正确的唯一选择吗?如果是这样,我可能会在AWS上创建一个PostgreSQL数据库,我只需要花费更多的资源来管理它。
#1 楼
您可以将本地PostGIS数据库用作SDE数据存储。http://resources.arcgis.com/en/help/main/10.1/index.html#//002p0000006v000000
该链接描述了向SDE注册本机PostGIS表的基本设置。缺点是ESRI仅支持少量的Postgres和PostGIS版本,下面是它们支持的列表:
http://resources.arcgis.com/en/help/system-requirements/ 10.1 / index.html#// 015100000075000000
评论
谢谢!我在ESRI手册的该部分中有很多文章要做,但是如果我正确理解,我应该能够设置PostgreSQL / PostGIS地理数据库并从ArcGIS连接到它,而不必运行“ EnableEnterpriseGeodatabase( )”功能是否可以从ArcGIS方面解决?另外,一旦连接,我应该能够使用PostGIS作为数据存储来创建所有ArcGIS服务类型(地图服务,要素服务等)吗?
– Ethan H
13年5月24日在14:27
您仍然需要运行“创建企业级地理数据库”工具,但是要先创建PostGIS数据库,然后将其指向现有数据库。
–HeyOverThere
13年5月24日在14:39
好的,并且Enable / CreateEnterpriseGeodatabase工具不会干扰postgis数据库的结构,从而使gdal / ogr很难读取/写入正确的数据吗?
– Ethan H
13年5月24日在16:41
正确。它将要做的是创建一个名为sde的新架构,并将所有与sde相关的内容放入其中。它实际上不会涉及您现有表中的数据,它们将保留为PostGIS几何形状。您仍然可以在非ESRI软件中查看和编辑,但是,如果您对数据进行版本控制,则非ESRI软件将忽略这些版本并直接编辑表格,这可能会破坏您的版本。我认为可以,但是我尚未检验该假设。
–HeyOverThere
13年5月24日在17:51
@HeyOver在那里,如果直接编辑基表,则不会破坏任何内容,因为结果将显示为不可预测的。如果要使用其他软件访问ArcSDE版本数据,则应使用“移至基本”选项和版本视图查看注册为版本。
– Travis
13年7月6日在8:26
#2 楼
您不必完全将数据库设置为SDE地理数据库。在ArcGIS 10.1中,ArcGIS可以读写SQL Server和PostGIS(以及其他)本机数据库。这意味着您可以在开源软件包和ArcGIS支持的RDBMS之一中建立数据库(就我个人而言,可以说是MS SQL Server或PostGIS),并可以在ArcGIS中进行访问。带有更多信息的帮助系统链接:
在ArcGIS中使用数据库的快速浏览
评论
我怀疑您是否可以使用ArcGIS编辑任何数据库而无需将其注册为SDE地理数据库(具有适当的许可证)...从10.0版开始,ESRI使您可以在没有SDE的情况下直接连接数据库,但只能用于读取和编辑。您不能使用任何功能,例如拓扑,网络或版本编辑。
– EtienneDesgagné
13年6月14日在12:18
@EtienneDesgagné-据我所知,他们在10.1上增加了非SDE功能以支持阅读。但是,正确的是,在ArcGIS中使用非SDE数据库时,不支持地理数据库功能,如拓扑,版本控制,要素数据集等。另一方面,当使用开放源代码工具并且在ArcGIS环境之外使用SDE数据库也不是那么直观时,地理数据库功能将不可用。
–布赖恩
2013年6月14日14:45
评论
在我写这个问题的时候,RDS不支持PostgreSQL,但是现在支持了,将PostGIS添加到RDS PostgreSQL数据库也很容易。