|
Просьба оценить производительность данной системы
|
|||
---|---|---|---|
#18+
Добрый день, предлагается некое самодельное ядро СУБД. Есть нижеследующий тест вставки и запросов. Может кто-нибудь оценить, как эти результаты соотносятся с производительностью стандартных БД? Structure of testing table:: 11 columns, 11 indexes: char 11, long, char 33, char 3, double, char 111, long, long, char 11, long, double Random data generation. Time per record inclusive update of all indexes. Inserting with 1000 records-chunks. Fully clearing all buffers after storage of every records-chunk. 0 - 700.000 records 0.2 - 5,5 ms 700.000 - 1.922.567 records 5,5 - 9,8 ms Adding 100.000 recs to table with 2.234.011 recs - average time 10,1 ms/rec Table with 2.334.011 records - total file(s) size 850 MB. Raw data size of this table is 201*2.234.011 = approx. 428 MB. Table with ~ 11 Mio records - inserting time ~38 ms/rec. Query execution ~5 Mio recs. Query: column generated data-span filter 0 (a - f), (k - r) 1 0 - 10 (0 - 4) (6 - 8) 2 (bababab - rarar), (sa - x) 6 0 - 300000000 (0 - 30000), (77777 - 9999999) 7 0 - 1000 (0 - 500) Time till all rec-ids retrieved: 4,5 sec ... |
|||
:
Нравится:
Не нравится:
|
|||
12.05.2011, 14:42 |
|
Просьба оценить производительность данной системы
|
|||
---|---|---|---|
#18+
TJ7 явно выигрывает. Так что, незачет. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.05.2011, 15:01 |
|
Просьба оценить производительность данной системы
|
|||
---|---|---|---|
#18+
dsrsman, вот тут винчестер тестировали, тоже очень неплохая производительность была ... |
|||
:
Нравится:
Не нравится:
|
|||
12.05.2011, 16:04 |
|
Просьба оценить производительность данной системы
|
|||
---|---|---|---|
#18+
SergSuper, все смеетесь.. все равно на флешку медленно.. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.05.2011, 16:10 |
|
Просьба оценить производительность данной системы
|
|||
---|---|---|---|
#18+
dsrsman, ну а кому нужна СУБД без тщательного тестирования? одно дело какую игрушку написать, а тут вещь таки серьезная и даже если дикая производительность, но нет уверенности в надежности - мало кого заинтересует собственно Вы тут не первый с этой утопичной идеей, скорее всего и не последний ... |
|||
:
Нравится:
Не нравится:
|
|||
12.05.2011, 16:18 |
|
Просьба оценить производительность данной системы
|
|||
---|---|---|---|
#18+
SergSuper, я с вами согласен. Я неправильно выразился, в общем ничего не предлагается, а есть просьба оценить параметры, и все. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.05.2011, 16:40 |
|
Просьба оценить производительность данной системы
|
|||
---|---|---|---|
#18+
dsrsman> average time 10,1 ms/rec 100 записей в секунду это ооочень медленно. Индексы правда мешаются. Ориентир 1000-10000/сек ... |
|||
:
Нравится:
Не нравится:
|
|||
12.05.2011, 21:42 |
|
Просьба оценить производительность данной системы
|
|||
---|---|---|---|
#18+
SiemarglОриентир 1000-10000/сек 10000-100000/сек ... |
|||
:
Нравится:
Не нравится:
|
|||
12.05.2011, 21:46 |
|
Просьба оценить производительность данной системы
|
|||
---|---|---|---|
#18+
Спасибо всем кто отозвался. Хочу отметить, меня не интересует скорость при условии засоса всей базы в память. Провел тест сам. СУБД - SQL Server 2008. Такая же таблица, индекс по каждому столбцу. Локальный сервер, один юзер. Аутокоммит офф, коммит каждые 1000 записей. Вставил 4 милл. записей. Перезапустил сервис, память очистилась. Теперь собственно тест. Вставка 20тыс. записей: Время - сначала 110 миллисек на запись, по мере заполнения памяти упала до 55 мсек. Т.е. в среднем 72 мс (14 записей в секунду). Могу смело утверждать, что с ростом БД будет намного медленнее. Простой запрос по 4 столбцам - 16-20 сек. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.05.2011, 17:17 |
|
Просьба оценить производительность данной системы
|
|||
---|---|---|---|
#18+
интересно что у вас за железяка? у меня не новый 2-х ядерный нотебук 2.2 Г, поставил сервер Microsoft SQL Server 2008 Express, ничего не настраивал Код: plaintext 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. 27.
Код: plaintext 1.
т.е. 100 000 (а не 20 000) вставилось за 4 сек ... |
|||
:
Нравится:
Не нравится:
|
|||
23.05.2011, 17:39 |
|
Просьба оценить производительность данной системы
|
|||
---|---|---|---|
#18+
SergSuper, Сравнение неверное. Таблицы в tempdb иначе себя ведут - транзакции не ждут подтверждения физической записи на диск, в отличие от таблиц в обычных БД ... |
|||
:
Нравится:
Не нравится:
|
|||
23.05.2011, 18:12 |
|
Просьба оценить производительность данной системы
|
|||
---|---|---|---|
#18+
SergSuper, не в железяке дело. Он держит все в памяти, пока влазит и пока может. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.05.2011, 18:25 |
|
Просьба оценить производительность данной системы
|
|||
---|---|---|---|
#18+
dsrsman, доступ к диску - еденицы миллисекунд. А сколько блоков нужно прочитать, чтобы обновить 10 индексов для тысячи записей в многомиллионной базе? Чудес не бывает. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.05.2011, 18:39 |
|
Просьба оценить производительность данной системы
|
|||
---|---|---|---|
#18+
SergSuper, прикиньте, сколько записей 4х int влезет в память Вашего ноутбука. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.05.2011, 18:45 |
|
Просьба оценить производительность данной системы
|
|||
---|---|---|---|
#18+
dsrsmanSergSuper, не в железяке дело. Он держит все в памяти, пока влазит и пока может. SQL Server пишет информацию об изменения в лог транзакций сразу, не кеширует ее в памяти. Более того - перед тем как сообщить о том что транзакция подтверждена, он дожидается окончания физической записи в лог. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.05.2011, 18:48 |
|
Просьба оценить производительность данной системы
|
|||
---|---|---|---|
#18+
dsrsmandsrsman, доступ к диску - еденицы миллисекунд. А сколько блоков нужно прочитать, чтобы обновить 10 индексов для тысячи записей в многомиллионной базе? Чудес не бывает. 10 индексов для тысячи записей в таблице с несколькими миллионами записей? Если предположить что индексы по полю типа int, то ответ - примерно 20 000 - 40 000 страниц данных. Ничего особенного. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.05.2011, 18:51 |
|
Просьба оценить производительность данной системы
|
|||
---|---|---|---|
#18+
andsmdsrsmandsrsman, доступ к диску - еденицы миллисекунд. А сколько блоков нужно прочитать, чтобы обновить 10 индексов для тысячи записей в многомиллионной базе? Чудес не бывает. 10 индексов для тысячи записей в таблице с несколькими миллионами записей? Если предположить что индексы по полю типа int, то ответ - примерно 20 000 - 40 000 страниц данных. Ничего особенного. Ну и сколько времени займет прочитать 20-40 тыс. страниц? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.05.2011, 18:58 |
|
Просьба оценить производительность данной системы
|
|||
---|---|---|---|
#18+
dsrsmanSergSuper, не в железяке дело. Он держит все в памяти, пока влазит и пока может.да нет, tempdb обычная база с этой точки зрения, Вы наверное путаете с таблицами-переменными сделал в обычной таблице, стало 10 сек для 100 000 дольше скорее из-за того что база увеличивалась слушайте, я ничего не собираюсь доказывать, просто мне показались странными Ваши цифры и я решил проверить, смотрите результаты и сами выводы делайте могу только посоветовать вместо изобретения велосипедов почитать что-нибудь полезное ... |
|||
:
Нравится:
Не нравится:
|
|||
23.05.2011, 20:16 |
|
Просьба оценить производительность данной системы
|
|||
---|---|---|---|
#18+
andsmSergSuper, Сравнение неверное. Таблицы в tempdb иначе себя ведут - транзакции не ждут подтверждения физической записи на диск, в отличие от таблиц в обычных БД в tempdb ждут подтверждения физической записи ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2011, 00:04 |
|
Просьба оценить производительность данной системы
|
|||
---|---|---|---|
#18+
MS-SQLв tempdb ждут подтверждения физической записи А зачем? Posted via ActualForum NNTP Server 1.4 ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2011, 00:43 |
|
Просьба оценить производительность данной системы
|
|||
---|---|---|---|
#18+
Dimitry SibiryakovMS-SQLв tempdb ждут подтверждения физической записи А зачем? Мне это тоже интересно, но факт. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2011, 01:12 |
|
Просьба оценить производительность данной системы
|
|||
---|---|---|---|
#18+
MS-SQLandsmSergSuper, Сравнение неверное. Таблицы в tempdb иначе себя ведут - транзакции не ждут подтверждения физической записи на диск, в отличие от таблиц в обычных БД в tempdb ждут подтверждения физической записи Создайте таблицу в обычной БД, затем вставьте в нее в цикле несколько тысяч записей. Замерьте время. Затем тоже самое для tempdb. Разница будет в несколько раз. То что транзакции в tempdb не ждут подтверждения физической записи на диск, вообще-то еще и много где описано. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.05.2011, 13:14 |
|
|
start [/forum/topic.php?fid=35&msg=37258002&tid=1552680]: |
0ms |
get settings: |
12ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
38ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
61ms |
get tp. blocked users: |
2ms |
others: | 245ms |
total: | 394ms |
0 / 0 |