1

目前我有2个数据库

  1. 主要(默认)数据库,包含用户、帖子等所有内容(这个在 PostgreSQL wie psycopg2 上运行)
  2. 辅助(地理)数据库,仅包含地理数据(这个在 postgis 1.5 上运行)

Django 和 PG 不支持跨数据库关系是有充分理由的,我已经知道了,但是我将我的数据库分开了,因为我担心地理数据库针对地理数据进行了优化,如果我将所有数据混合在一个数据库中,那么整个性能会受此影响,而且我什至不知道我是否可以在一个数据库地理和普通数据中拥有所有内容。但我想将主要(1)数据库中的数据与辅助(2)数据库相关联。

这种方法是合理的还是完全错误的?

4

1 回答 1

2

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

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

如果您担心启用 PostGIS 会向“公共”模式添加数百个功能,您可以创建一个“postgis”模式并将扩展名放在那里。请参阅这些详细信息。但是,我不确定 geodjango 将如何应对这种设置。

于 2013-03-05T09:36:21.783 回答