我在PostgreSQL中创建了一个数据库,我们称之为 testdb 。
我在此数据库中有一组通用表, xxx_table_one , xxx_table_two 和 xxx_table_three 。
现在,我有Python代码,我希望动态创建并删除这3个表的“集合”到我的数据库中,表名中的唯一标识符区分不同的“集合”,例如,
设置1
testdb.aaa_table_one
testdb.aaa_table_two
testdb.aaa_table_three
设置2
testdb.bbb_table_one
testdb.bbb_table_two
testdb.bbb_table_three
我想这样做的原因是让相关数据的多个LARGE数据集合彼此分开。我需要定期覆盖单个数据集合,如果我们可以删除数据集合表并重新创建一组完整的新表,这很容易。另外,我不得不提一下,不同的数据集合适用于相同的模式,因此我可以使用标识符将所有数据集合保存在一组表中,以区分数据集合,而不是使用不同的表格将它们分开。
我想知道,有些事情
答案 0 :(得分:14)
PostgreSQL没有很多限制,你的硬件更受限制,这是你遇到大多数问题的地方。 http://www.postgresql.org/about/
您可以在一个数据库中拥有2 ^ 32个表,超过40亿个。
答案 1 :(得分:2)
答案 2 :(得分:0)
如果您的数据不相关,我认为您的表可能位于不同的模式中,然后您将使用SET search_path TO schema1, public
,这样您就不必在查询中动态生成表名。我打算在一个存储日志和其他跟踪信息的大型数据库上尝试这种结构。
如果您的操作系统有限制或受到大目录大小的影响,您也可以更改tablespace
。