Ответ 1
Q1: нет явного ограничения в документах. На практике некоторые операции - это O (n) для числа таблиц; ожидают увеличения времени планирования и проблем с такими вещами, как autovacuum, поскольку вы получаете в тысячах или десятках тысяч таблиц в базе данных.
Q2: Это зависит от запроса. Как правило, огромные профсоюзы - плохая идея. Наследование таблиц будет работать немного лучше, но если вы используете constraint_exclusion
, это приведет к значительному увеличению времени планирования.
Оба эти вопроса указывают на основную проблему с вашим дизайном. Вам не нужно огромное количество таблиц и гигантских союзов.
Следуя комментарию в другом ответе, вы должны просто создать несколько таблиц. Кажется, вы хотите создать одну таблицу на номер телефона, что бессмысленно, и создать над ним число просмотров. Не делайте этого, это несовместимо с данными, и с ними будет работать сложнее, а не проще. Индексы, где предложения и объединения позволят вам использовать данные более эффективно, когда они логически структурируются в несколько таблиц. Я предлагаю изучить базовое реляционное моделирование.
Если вы столкнетесь с проблемами масштабируемости позже, вы можете посмотреть partitioning, но для этого вам не понадобятся тысячи таблиц.