|
|
|
Его Величество Миллиард (эксперименты с таблицей в 10E9 строк)
|
|||
|---|---|---|---|
|
#18+
ТаблоидBuffers = 16384 Какой мазохист такой базе даст такой мизерный кэш?.. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.07.2013, 01:42:19 |
|
||
|
Его Величество Миллиард (эксперименты с таблицей в 10E9 строк)
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovТаблоидBuffers = 16384 Какой мазохист такой базе даст такой мизерный кэш?..Он в начале был вообще дефолтным, 2048 :-) Ну, а сколько бы ты сам назначил ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.07.2013, 01:55:21 |
|
||
|
Его Величество Миллиард (эксперименты с таблицей в 10E9 строк)
|
|||
|---|---|---|---|
|
#18+
Ясно же говорит: ТаблоидReads = 26771 Вот эту цифру надо как минимум удвоить. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.07.2013, 01:58:44 |
|
||
|
Его Величество Миллиард (эксперименты с таблицей в 10E9 строк)
|
|||
|---|---|---|---|
|
#18+
... не взлетает и при 65535: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. trace Код: 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. 28. 29. 30. 31. 32. 33. 34. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.07.2013, 02:03:12 |
|
||
|
Его Величество Миллиард (эксперименты с таблицей в 10E9 строк)
|
|||
|---|---|---|---|
|
#18+
... и при buf=250'000 результат - тоже печалько (разумеется, я поставил перед этим FileSystemCacheThreshold = 256K и рестартанул всё): Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.07.2013, 08:13:21 |
|
||
|
Его Величество Миллиард (эксперименты с таблицей в 10E9 строк)
|
|||
|---|---|---|---|
|
#18+
Таблоид, Ты наивно ждешь эффекта от большого кеша при первом выполнении запроса? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.07.2013, 10:10:16 |
|
||
|
Его Величество Миллиард (эксперименты с таблицей в 10E9 строк)
|
|||
|---|---|---|---|
|
#18+
dimitrТы наивно ждешь эффекта от большого кеша при первом выполнении запроса?нет, конечно :-) я всё к тому, что нерационально тратить время на вычитку PP, когда стало ясно, что у мну вообще нет прав на таблицу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.07.2013, 10:19:33 |
|
||
|
Его Величество Миллиард (эксперименты с таблицей в 10E9 строк)
|
|||
|---|---|---|---|
|
#18+
Увеличение кеша на такой базе вообще не помогает. Видимо, просто мало физической памяти. На "разогретой" базе (насколько этот термин вообще применим к файлу 115 Гб) с cache=250'000 ввожу запрос: Код: plaintext В другом окошке делаю: Код: 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. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.07.2013, 10:30:56 |
|
||
|
Его Величество Миллиард (эксперименты с таблицей в 10E9 строк)
|
|||
|---|---|---|---|
|
#18+
ТаблоидSQL> select first 1 t1.* from t t1 join t t2 on t1.s=t2.s and t1.id<t2.id and t1.id+gen_id(g,1)>=0Какой у этого запроса план? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.07.2013, 13:01:25 |
|
||
|
Его Величество Миллиард (эксперименты с таблицей в 10E9 строк)
|
|||
|---|---|---|---|
|
#18+
NickDeeТаблоидSQL> select first 1 t1.* from t t1 join t t2 on t1.s=t2.s and t1.id<t2.id and t1.id+gen_id(g,1)>=0Какой у этого запроса план? Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.07.2013, 13:11:48 |
|
||
|
Его Величество Миллиард (эксперименты с таблицей в 10E9 строк)
|
|||
|---|---|---|---|
|
#18+
Надо тут было проверить еще раз кое-что, на миллиарднике этом. И сразу вопрос вылез: запустил я создание индекса по полю varchar(8), ждал минут 40, вижу в top'e: ФБ почти ничего не делает. Запустил тогда скрипт с запросом к mon$-таблицам каждые 10 сек : mon$-запрос Код: sql 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. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. Затем открываю отчет в экселе, и диву даюсь: 1) счетчик reads снова НЕ меняется (такое уже было вроде!) 2) счетчик fetches меняется просто нищенскими темпами - см аттач, графа diff:fetches. Кроме того, изменение числа фетчей совершенно неравномерное. Пытаться вычислить среднее тут - бесполезняк, разброс просто сильнейший. пример Код: plaintext 2 dimitr: может ли ФБ показывать что-то типа статистики ожиданий, т.е. чтобы точно было видно: вот тут у нас 90 фетчей, но мы ждали ответа от "чего-то там" 100500 миллисекунд. PS. Индекс в итоге строился почти час (3504 сек): Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.09.2013, 12:09:52 |
|
||
|
Его Величество Миллиард (эксперименты с таблицей в 10E9 строк)
|
|||
|---|---|---|---|
|
#18+
Таблоидможет ли ФБ показывать что-то типа статистики ожиданий сейчас нет, в недалеком будущем - возможно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.09.2013, 12:41:48 |
|
||
|
Его Величество Миллиард (эксперименты с таблицей в 10E9 строк)
|
|||
|---|---|---|---|
|
#18+
dimitr, чек мыл, плз. (Что-то не врубаюсь: запрос к mon$-таблицам в течение работы пяти DML длится по 3-4 минуты. То ли огромный объём IO и ожидание сбросов на диск так сильно влияет, то ли еще чего. Но в целом стало получше, чем было описано в тикете 4179 ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.09.2013, 16:04:11 |
|
||
|
Его Величество Миллиард (эксперименты с таблицей в 10E9 строк)
|
|||
|---|---|---|---|
|
#18+
И всё-таки снова вопрос про откаты после срубания незавершенных DML, в том числе при шатдауне базы. Нельзя ли подправить консерваторию, чтобы движок начинал записывать в firebird.log два факта: 1) начало обратной перемотки (для каждой таблицы) 2) окончание этой перемотки. Пусть он делает это хотя бы только при shutdown'e, чтобы на это мог смотреть ДБА, который ввёл шатдаун и собирается базу копировать/паковать и проч. В идеале - также при delete from mon$attachments / mon$statements. Ибо запустил я с единственного isql'я запрос на апдейт 1 млрд строк (в 16:03), затем через два часа отправил базу в шатдаун: Код: plaintext 1. 2. И вижу уже 20 минут , что ФБ до сих пор держит файл базы открытым (lsof показывает так), хотя активность процесса ФБ при этом обманчиво нулевая: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. В трейсе для DML-коннекта - разумеется, тоже тишина. Прочухается только после полной "отмотки взад". Неправильно это! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.09.2013, 18:29:53 |
|
||
|
Его Величество Миллиард (эксперименты с таблицей в 10E9 строк)
|
|||
|---|---|---|---|
|
#18+
Таблоид, не место этому в firebird.log. Я понимаю если бы ты это в трейсе попросил выводить, да и то для каждой таблицы сомнительно... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.09.2013, 18:36:53 |
|
||
|
Его Величество Миллиард (эксперименты с таблицей в 10E9 строк)
|
|||
|---|---|---|---|
|
#18+
Симонов Денисне место этому в firebird.log. Я понимаю если бы ты это в трейсе попросил выводить, да и то для каждой таблицы сомнительно...А что с ним станется, с firebird.логом, опухнет и лопнет ? Вот я останавливаю базу шатдауном - и что, мне трейс перед/после этого запускать, дабы увидеть сообщение о завершении отмотки ? (да и много ли персон из почтеннейшей публики запускают у себя трейс-то ?...) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.09.2013, 18:45:00 |
|
||
|
Его Величество Миллиард (эксперименты с таблицей в 10E9 строк)
|
|||
|---|---|---|---|
|
#18+
ТаблоидПрочухается только после полной "отмотки взад"Ну-с, встречаем. Через 40 минут: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. Число апдейтов и бекаутов - смешное, 296 тыс. Фетчей - тоже ерунда, 1.3 млн. Чего он там сопли жевал столько времени - хз. DDL таблицы: Код: plaintext 1. 2. 3. 4. 5. 6. 7. gstat -r до начала bulk-DML'ей: Код: 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. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.09.2013, 18:51:51 |
|
||
|
Его Величество Миллиард (эксперименты с таблицей в 10E9 строк)
|
|||
|---|---|---|---|
|
#18+
Таблоид, одно дело записать в firebird.log что шатдаун был, другое - пытаться туда засунуть информацию о внутренностях. Вот зачем это? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.09.2013, 18:58:25 |
|
||
|
Его Величество Миллиард (эксперименты с таблицей в 10E9 строк)
|
|||
|---|---|---|---|
|
#18+
Симонов Денисодно дело записать в firebird.log что шатдаун был, другое - пытаться туда засунуть информацию о внутренностях. Вот зачем это?тогда уж инфу о GC тоже из лога убирать надо. Чем не внутренности ?... 0xFF. А про спам errno=104/110 я уж вообще не говорю - такие важнейшие события отражаются в логе... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.09.2013, 19:08:11 |
|
||
|
Его Величество Миллиард (эксперименты с таблицей в 10E9 строк)
|
|||
|---|---|---|---|
|
#18+
Таблоид, хорошо представь себе у тебя 250 активных коннектов. Вдруг ты решил сделать полный шатдаун. Что будет содержаться в firebird.log в этом случае? Причём пользователи могут работать с разными таблицами. По поводу GC, errno=104/110 вроде бы есть тикет по разделению лога на несколько. Правда многим это не нравится. errno=104/110 не совсем спам они свидетельствуют о наличии проблем в сети. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.09.2013, 19:27:15 |
|
||
|
Его Величество Миллиард (эксперименты с таблицей в 10E9 строк)
|
|||
|---|---|---|---|
|
#18+
Таблоид> Вот я останавливаю базу шатдауном - и что, мне трейс перед/после Таблоид> этого запускать, дабы увидеть сообщение о завершении отмотки ? Ага. А зачем тебе это сообщение-то? > (да и много ли персон из почтеннейшей публики запускают у себя трейс-то ?...) Вряд ли. Но запускающих шатдаун да ещё желающих увидеть при этом какие-то сообщения о каких-то отмотках в логе - на порядок меньше. :) Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.09.2013, 20:05:19 |
|
||
|
Его Величество Миллиард (эксперименты с таблицей в 10E9 строк)
|
|||
|---|---|---|---|
|
#18+
Симонов Денисхорошо представь себе у тебя 250 активных коннектов. Вдруг ты решил сделать полный шатдаун. Что будет содержаться в firebird.log в этом случае? Причём пользователи могут работать с разными таблицами.а не надо путать активный коннект с активным (выполняющимся в момент выдачи шатдауна) стейтментом. Первых - да, полно. Вторых (при которых соб-сно и будет "отмотка взад") - хорошо, если десяток-другой будет. В oltp системах запросов хоть и много, но 99.9% из них - короткие. Дальше юзер тупо смотрит на результат или вводит там что-то в морде приложения. Симонов ДенисПо поводу GC, errno=104/110 вроде бы есть тикет по разделению лога на несколько. Правда многим это не нравится. errno=104/110 не совсем спам они свидетельствуют о наличии проблем в сети.Это в любом случае проблемы НЕ Firebird'a, а железячников. А про errno=10054 (под виндой, по кр. мере)- вообще песня. Достаточно из isql закрыть "крестиком" снять его pskill'ом, даже просто выйти из него по Ctrl- Break - всё, "произошла проблема, подробности смотрите в логе". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.09.2013, 21:34:22 |
|
||
|
Его Величество Миллиард (эксперименты с таблицей в 10E9 строк)
|
|||
|---|---|---|---|
|
#18+
Гаджимурадов РустамАга. А зачем тебе это сообщение-то?Мну давно интересно, что будет с базой, если после шатдауна её тут же начать копировать куда-нить... Ну, то есть так: ФБ тихо дописывает в неё свои откаты срубленных BULK_DML'ей, а я чихал на это и копирую базу в этот же исторический момент на "внешний носитель" Жаль, что база с таблицей-миллиардником занимает больше половины диска, скопировать надо было для "домашнего просмотра" :-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.09.2013, 21:38:05 |
|
||
|
Его Величество Миллиард (эксперименты с таблицей в 10E9 строк)
|
|||
|---|---|---|---|
|
#18+
ТаблоидВот я останавливаю базу шатдауном - и что CORE-3809 можно уже удалять из трекера? А если нет, то какого ляда мы тут видим эти стенания? Ты проси или быстрый шатдаун или трейс медленного шатдауна, но оба вместе это уже шизофрения. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.09.2013, 21:52:05 |
|
||
|
Его Величество Миллиард (эксперименты с таблицей в 10E9 строк)
|
|||
|---|---|---|---|
|
#18+
dimitrТаблоидВот я останавливаю базу шатдауном - и что CORE-3809 можно уже удалять из трекера? А если нет, то какого ляда мы тут видим эти стенания? Ты проси или быстрый шатдаун или трейс медленного шатдауна, но оба вместе это уже шизофрения.Быстрый шатдаун, после которого уже точно нет никакой записи в файл базы - важнее всего. Если же он недостижим (на сегодняшний день) и в момент шатдауна были срублены bulk_DML'и, то обязательно надо выводить хоть какое-то сообщение об этом. Если такого сообщения не выводить, нужно где-то в официальной доке отметить этот "артефакт" и сказать, следует ли ДБАям следить за ним или нет (попросту говоря: следует ли после шатдауна вводить пару раз lsof, дабы убедиться что база больше не держится ФБ-процессом). Даже если шатдаун срубит сразу 300 активных стейтментов (это сколько же тогда коннектов должно быть ? 3000 ?), сообщений будет 300*2 = 600 - не страшно, диск не переполнится. Моё мнение - место таким сообщениям в логе сервера, а не в трейсе. ЗЫ. И кстати! Этот тикет, 3809, он же не только про роллбаки, но и про невозможность в *линуксе* убить процесс ФБ командой /etc/init.d/firebird stop, которая выдает к тому же бравурное "ОК", а на самом деле процесс живой! И я видел это до самых недавних пор в трёшке, когда срубал 300-400 окон теста на массовые коннекты / ожидание ими вставки строки / принудительный их дисконнект. Как дело с этим на нынешнем снапшоте - не знаю, еще не проверял. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.09.2013, 22:20:48 |
|
||
|
|

start [/forum/topic.php?fid=40&msg=38348057&tid=1564260]: |
0ms |
get settings: |
7ms |
get forum list: |
18ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
191ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
53ms |
get tp. blocked users: |
1ms |
| others: | 227ms |
| total: | 513ms |

| 0 / 0 |
