|
|
|
10 млн строк в таблице
|
|||
|---|---|---|---|
|
#18+
Добрый день коллеги, Проектирую внутренню систему проведения опросов. Схема у меня вырисовывается такая, что в одной из таблиц может быть 3-4 млн строк примерно и это число я думаю может расти и до 10 млн. Вопрос вот в чем , будет ли такой размер проблемой для Oracle 12? Это похоже на ошибку дизайна или это такое количество строк нормально? Как это получилось: Представим таблицу с опросами - survey_table их будет примерно 17, таблицу с назначениями survey_assignments кому назначен опрос ( около 17 * 2000 пользователей ) , и survey_questions таблица с вопросами примерно 17*100. Все ответы будут в одной таблице survey_results и нужный ответ я буду выбирать по id опроса, и assignement id. И получается 17 опросов * 100 вопросов * 2000 пользователей. Я смотрел структуру базы open source системы опросов Lime Survey и там я вижу, что для каждого Survey создается своя таблица вида lime_survey_XXXXX, и lime_syrvey_token_XXXX где XXXX что то типа номера опроса. Я думал от этого отойти и использовать фиксированное количество таблиц. Кроме того, мне не нравится что в их структуре таблицы с ответами каждая строка соответствует ответу одного пользователя на все вопросы. К количество колонок в таблице получается более 100. На Mysql INNODB таблицах мы даже столкнулись с ограничением на максимальную длину строки. Что думаете коллеги? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.09.2017, 23:01 |
|
||
|
10 млн строк в таблице
|
|||
|---|---|---|---|
|
#18+
vlad2010, 10 млн. строк - не проблема. При правильной индексации и/или секционирование - работать будет на "ура" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.09.2017, 03:13 |
|
||
|
10 млн строк в таблице
|
|||
|---|---|---|---|
|
#18+
Только так. Иначе при появлении 101 вопроса гемора будет больше. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.09.2017, 04:47 |
|
||
|
10 млн строк в таблице
|
|||
|---|---|---|---|
|
#18+
vlad2010, Визуализируй свои мысли - набросай ER-диаграмму. Вопросы открытые/закрытые, с единственнным/множественным выбором, условные переходы и т.д. vlad2010Кроме того, мне не нравится что в их структуре таблицы с ответами каждая строка соответствует ответу одного пользователя на все вопросы. К количество колонок в таблице получается более 100.Подход с динамическим созданием колонок в зависимости от набора вопросов и ответов текущего опроса - это не для нас. Структуру самого опросника, а так же факты ответов на него можно хранить, например, в плоской EAV-подобной структуре, либо XML. Если XML, то для контроля целостности можно прикрутить проверку по XSD средствами БД. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.09.2017, 10:58 |
|
||
|
10 млн строк в таблице
|
|||
|---|---|---|---|
|
#18+
AmKad, откуда такие познания в сфере опросов? или сходу придумываешь? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.09.2017, 14:29 |
|
||
|
10 млн строк в таблице
|
|||
|---|---|---|---|
|
#18+
Коллеги спасибо, мои опасения не подтвердились и предложенная мной схема имеет право на жизнь ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.09.2017, 22:38 |
|
||
|
10 млн строк в таблице
|
|||
|---|---|---|---|
|
#18+
vlad2010Добрый день коллеги, Проектирую внутренню систему проведения опросов. Схема у меня вырисовывается такая, что в одной из таблиц может быть 3-4 млн строк примерно и это число я думаю может расти и до 10 млн. Вопрос вот в чем , будет ли такой размер проблемой для Oracle 12? Это похоже на ошибку дизайна или это такое количество строк нормально? Как это получилось: Представим таблицу с опросами - survey_table их будет примерно 17, таблицу с назначениями survey_assignments кому назначен опрос ( около 17 * 2000 пользователей ) , и survey_questions таблица с вопросами примерно 17*100. Все ответы будут в одной таблице survey_results и нужный ответ я буду выбирать по id опроса, и assignement id. И получается 17 опросов * 100 вопросов * 2000 пользователей. Я смотрел структуру базы open source системы опросов Lime Survey и там я вижу, что для каждого Survey создается своя таблица вида lime_survey_XXXXX, и lime_syrvey_token_XXXX где XXXX что то типа номера опроса. Я думал от этого отойти и использовать фиксированное количество таблиц. Кроме того, мне не нравится что в их структуре таблицы с ответами каждая строка соответствует ответу одного пользователя на все вопросы. К количество колонок в таблице получается более 100. На Mysql INNODB таблицах мы даже столкнулись с ограничением на максимальную длину строки. Что думаете коллеги? Лучше увеличивать количество записей в таблицах чем количество таблицы и полей. Когда последний раз считал у меня в самой толстой таблице было около 4 млрд записей. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.09.2017, 00:12 |
|
||
|
|

start [/forum/topic.php?fid=52&fpage=145&tid=1885214]: |
0ms |
get settings: |
9ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
93ms |
get topic data: |
13ms |
get forum data: |
4ms |
get page messages: |
51ms |
get tp. blocked users: |
2ms |
| others: | 235ms |
| total: | 428ms |

| 0 / 0 |
