情况:
我有一组 12 个相同结构的表(按月份表示数据),它们存在于不同数据库的 6 个分片中的每一个上。我需要在任何给定月份的任何这些数据库中获取一组样本数据。
数据库由记录id决定,表由记录中某日期值的月份决定。
问题:
为此设置 SQLAlchemy ORM 的最佳方法是什么?
最初我只需要一次查询一个月的数据,所以我设置了一个 ShardedSession 将我的 Data 类映射到十二个数据表之一,而忽略了我不需要的那些表的存在。现在我需要在任何给定时间选择 3 个不同月份的随机数据集。有没有办法可以将同一个类映射到相同结构的 3 个不同的表上,以便它们都被视为一个?这样我就可以从这 3 个月中随机选择记录。
我以前问过一个类似的问题,并在这里发布了我想出的解决方案: SQLAlchemy Classical Mapping Model to sharded Postgres databases 我正在使用 Classical Mapping Model,我不确定这是否是最好的,但这是我唯一的方法可以弄清楚如何使事情正常进行。
我已经阅读了一些关于具体表继承和实体名称的内容,但上次我尝试无法让实体名称解决方案工作。
任何指针将不胜感激!谢谢!