将GEO数据库与普通数据库分开

时间:2013-03-05 00:53:44

标签: python django postgresql postgis geo

目前我有2个数据库

  1. 主要(默认)数据库,包含用户,帖子等所有内容(此内容可在PostgreSQL上运行,与psycopg2相同)
  2. 辅助(地理)数据库,仅包含地理数据(此版本在postgis 1.5上运行)
  3. Django和PG不支持跨数据库关系,我已经知道了,但是我将数据库拆开了,因为我担心geo数据库针对地理数据进行了优化,如果我将所有数据混合在一个数据库中整个性能将受此影响,而且我甚至不知道我是否可以拥有一个数据库地理数据和普通数据。 但我想将主(1)数据库中的数据与辅助(2)数据库相关联。

    这种做法是否合理,或将其拆分是完全错误的?

1 个答案:

答案 0 :(得分:2)

如果您担心性能,很明显数据需要在一个数据库中。

Spatial并不特别,它只是另一种数据类型。我不明白为什么启用PostGIS会损害数据库的性能。但是,使用主数据库的副本进行测试并不会有什么坏处,特别是对于生产环境。

如果您担心启用PostGIS会向“公共”模式添加数百个功能,您可以制作“postgis”模式并将扩展名放在那里。 See these details。但是,我不确定geodjango将如何应对这种设置。

相关问题