
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
11.09.2016, 18:29
|
|||
|---|---|---|---|
|
|||
Партицирование и агрегация данных |
|||
|
#18+
Добрый вечер! Объясните, пожалуйста, как организовать агрегацию,сортировку и выборку данных среди партиций. Например, имеется 1 000 пользователей, у каждого своя таблица; поэтому 1000 таблиц. Жизнь осложняется тем, что у каждого пользователя есть куча атрибутов(пол,сем. положение,возраст,рост,вес и т.д.), которые используются в качестве фильтра Поэтому заранее повесить на эти таблицы ярлыки с MIN и MAX нельзя, т.к. эти величины динамические, зависящие от фильтра. Интересуют вопросы: 1) Как найти среди всех пользователей самого молодого(MIN) и самого старого MAX() человека? 2) Как выбрать людей в возрасте, например, от 20 до 30 лет? 3) Отсортировать выборку, как если бы это была единая таблица. Устраивать оргии с партийцами, т.е. с партициям?! Через UNION? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
11.09.2016, 18:34
|
|||
|---|---|---|---|
|
|||
Партицирование и агрегация данных |
|||
|
#18+
как-то размазано описываете... ничего непонятно... почему 1000 таблиц, почему нет отдельной табл Users с атрибутами.... DDL показывйте... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
11.09.2016, 19:05
|
|||
|---|---|---|---|
|
|||
Партицирование и агрегация данных |
|||
|
#18+
Нет отдельной таблицы, потому что это сейчас 1 000 пользователей(вместо пользователей могут быть любые сущности). В дальнейшем могут быть миллионы сущностей - здесь все рекомендуют прибегать к партицированию, шардированию. Но никто не говорит о сквозной выборке, а также сквозной сортировке и агрегатных функциях. Причём здесь DDL? Я спрашиваю абстрактные, теоретические вещи! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
11.09.2016, 19:46
|
|||
|---|---|---|---|
|
|||
Партицирование и агрегация данных |
|||
|
#18+
это не теоретические вещи, это гадание на кофейной гуще. 1000 одинаковых таблиц по структуре? или 1000 разных? Абстракция выходит за рамки понимания, ее можно только представить. Представлять на недосказанном нечего.... смотрите Merge-таблицы если ничего говорить не хотите ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
11.09.2016, 20:09
|
|||
|---|---|---|---|
|
|||
Партицирование и агрегация данных |
|||
|
#18+
Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. Естественно, таблицы одной структуры. Таких таблиц может быть тысячи. Как решить три вопроса, которые я озвучил выше? За Merge-таблицы большое спасибо. Опять же, насколько всё это будет производительным? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
11.09.2016, 21:04
|
|||
|---|---|---|---|
|
|||
Партицирование и агрегация данных |
|||
|
#18+
dmaytry79, если нет вариантов менять структуру - Merge - это единственный нормальный способ, - насколько всё это будет производительным? также как и 1000 отдельных запросов с UNION, единственный плюс - упрощение записи запроса ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=47&mobile=1&tid=1831419]: |
0ms |
get settings: |
5ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
159ms |
get topic data: |
7ms |
get forum data: |
1ms |
get page messages: |
23ms |
get tp. blocked users: |
1ms |
| others: | 191ms |
| total: | 401ms |

| 0 / 0 |
