|
|
|
Вопрос по SQL таблицам
|
|||
|---|---|---|---|
|
#18+
Доброго времени суток. Есть такой вопрос: что будет работать быстрее и меньше нагружать сервер: одна большая таблица на тысячи (десятки тысяч, и возможно даже сотни тысяч записей), или же разбить эту таблицу на тысячи маленьких таблиц (выйдет где-то по 20-30 записей в каждой)? Спасибо! )) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.08.2008, 14:18 |
|
||
|
Вопрос по SQL таблицам
|
|||
|---|---|---|---|
|
#18+
Извиняюсь за глупый вопрос... Просто очень надо, не хотелось бы подвесить сервак или что-то типа того (типа заставлять пользователей по 10 минут ждать обработки запроса) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.08.2008, 14:31 |
|
||
|
Вопрос по SQL таблицам
|
|||
|---|---|---|---|
|
#18+
Абстрактный вопрос, но отвечу - одна большая. Тем более, что для серъёзной СУБД сотни тысяч записей - это совсем немного. Nai tiruvantel ar varyuvantel i Valar tieyanna nu vilya Aiya Eärendil Elenion Ancalima! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.08.2008, 15:00 |
|
||
|
Вопрос по SQL таблицам
|
|||
|---|---|---|---|
|
#18+
а для гигантских таблиц в миллионы записей в оракле есть PARTITION таблицы (с можно работать с со всей таблицей или только с нужными порциями), думаю с других серьезных субд тоже есть чтото подобное ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.08.2008, 15:37 |
|
||
|
Вопрос по SQL таблицам
|
|||
|---|---|---|---|
|
#18+
ПрограмёрИзвиняюсь за глупый вопрос... Просто очень надо, не хотелось бы подвесить сервак или что-то типа того (типа заставлять пользователей по 10 минут ждать обработки запроса) индексы делай по полям участвующим в выбоках и не будет тормозить и нагружать ничего. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.08.2008, 15:40 |
|
||
|
Вопрос по SQL таблицам
|
|||
|---|---|---|---|
|
#18+
Интересно представить как с этими тысячами таблиц работать ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.08.2008, 15:41 |
|
||
|
Вопрос по SQL таблицам
|
|||
|---|---|---|---|
|
#18+
XDiaBLoИнтересно представить как с этими тысячами таблиц работать Ну так потому и спрашиваю (новичёк, потому не знаю какая будет реакция, если отправить запрос поиска в большую таблицу, и какая, если будет много маленьких) ))) Всем спасибо... Значит лучше одна большая ))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.08.2008, 15:51 |
|
||
|
Вопрос по SQL таблицам
|
|||
|---|---|---|---|
|
#18+
XDiaBLoИнтересно представить как с этими тысячами таблиц работать ну если разбивать на строки не абы как а по смыслу например по годам , то проблем особо не будет, динамически создавать запрос и все, но я бы так не делал. Лучше уж сделать основную таблицу например с операциями/транзакциями и архивную куда переносить старые записи из основной через определенное время (когда они уже не нужны особо будут), а если нужно в отчет по старому периоду (раньше даты переноса) то делать его по архивной таблице, такие отчет скорее всего вобще не нужны будут, а если понадобятся то подождут, главное что актуальные будут быстро работать. Ну или если субд поддерживает портиции на таблицах то на них бы сделал, считай тоже самое, только СУБД сама за кадром разруливает с какой частью таблицы работать ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.08.2008, 15:51 |
|
||
|
Вопрос по SQL таблицам
|
|||
|---|---|---|---|
|
#18+
barrabas XDiaBLoИнтересно представить как с этими тысячами таблиц работать ну если разбивать на строки не абы как а по смыслу например по годам , то проблем особо не будет, динамически создавать запрос и все, но я бы так не делал. Лучше уж сделать основную таблицу например с операциями/транзакциями и архивную куда переносить старые записи из основной через определенное время (когда они уже не нужны особо будут), а если нужно в отчет по старому периоду (раньше даты переноса) то делать его по архивной таблице, такие отчет скорее всего вобще не нужны будут, а если понадобятся то подождут, главное что актуальные будут быстро работать. Ну или если субд поддерживает портиции на таблицах то на них бы сделал, считай тоже самое, только СУБД сама за кадром разруливает с какой частью таблицы работать У нас на Орякле несколько сотен миллионов строк в некоторых таблицах, работают же. Правда в случае фуллскана кошмар начинается, но это редко нужно. Какой-никакой индекс обычно можно использовать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.08.2008, 15:59 |
|
||
|
Вопрос по SQL таблицам
|
|||
|---|---|---|---|
|
#18+
XDiaBLoУ нас на Орякле несколько сотен миллионов строк в некоторых таблицах, работают же. Правда в случае фуллскана кошмар начинается, но это редко нужно. Какой-никакой индекс обычно можно использовать. а кто сказал что не будет работать то в силу индексов мы верим просто часто бывает что время для выдачи результата в 15-30 секунд уже не приемлимо. Вот и начинается тюнинг - материализованные вьюхи, портиции. Вот разрешьте свою таблицу на портиции и проверьте. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.08.2008, 16:05 |
|
||
|
Вопрос по SQL таблицам
|
|||
|---|---|---|---|
|
#18+
XDiaBLoУ нас на Орякле несколько сотен миллионов строк в некоторых таблицах, работают же. А-а... тогда у меня проблем не должно быть с этим ( с моей как оказывается мини базой ) Спасибо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.08.2008, 17:01 |
|
||
|
Вопрос по SQL таблицам
|
|||
|---|---|---|---|
|
#18+
Програмёр wrote: > Ну так потому и спрашиваю (новичёк, потому не знаю какая будет реакция, > если отправить запрос поиска в большую таблицу, и какая, если будет > много маленьких) ))) > Всем спасибо... Значит лучше одна большая ))) Она не лучше, она - не хуже, чем N маленьких. А в итоге, если учесть, что запросы в N таблиц писать менее удобно, чем в одну, и выполяться они будут N раз вместо одного, то получается, что смысла бить таблицу горизонтально нет. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.08.2008, 19:14 |
|
||
|
Вопрос по SQL таблицам
|
|||
|---|---|---|---|
|
#18+
barrabas XDiaBLoУ нас на Орякле несколько сотен миллионов строк в некоторых таблицах, работают же. Правда в случае фуллскана кошмар начинается, но это редко нужно. Какой-никакой индекс обычно можно использовать. а кто сказал что не будет работать то в силу индексов мы верим просто часто бывает что время для выдачи результата в 15-30 секунд уже не приемлимо. Вот и начинается тюнинг - материализованные вьюхи, портиции. Вот разрешьте свою таблицу на портиции и проверьте. Я про это в курсе, просто я с базой ничего такого творить не могу, это запрещено фирмой разработчиком, всё только через них делается. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.08.2008, 07:07 |
|
||
|
|

start [/forum/topic.php?fid=16&fpage=139&tid=1345110]: |
0ms |
get settings: |
9ms |
get forum list: |
16ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
52ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
49ms |
get tp. blocked users: |
1ms |
| others: | 286ms |
| total: | 429ms |

| 0 / 0 |
