Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
"RAW device" vs "BLOCK device"
|
|||
|---|---|---|---|
|
#18+
Журавлев Денис onstat-Когда производится индексный поиск, база с помощью упреждающего чтения читает индексное дерево в буфера. нонсенс. Мы читаем одну страницу (корневую), далее смотрим что у нее внутри решаем пойти налево, читаем страницу вообще из другого гигабайта, тут не может быть упреждающего чтения, оно только мешает. То что для индексов используется упреждающее чтение написано в доке, я когдато уже цитировал . Хотя могут быть случаи когда оно и не используется. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.04.2008, 11:29 |
|
||
|
"RAW device" vs "BLOCK device"
|
|||
|---|---|---|---|
|
#18+
Журавлев Денис buffers=1000000 2G - получается буфер информикса в тестах с рау, и ~8G при блочных. Журавлев Денис svat2 В системе - 8G RAM. "Простаивают" из них ~5. Я лично для себя по результатам тестов делаю вывод, что их лучше ИСПОЛЬЗОВАТЬ.Так отдайте их информиксу, увеличте буферс. vasilis А что мешает использовать всю доступную память под буферный пул Информикса ? У вас же 64-разрядная версия. Та я только за! :) Вот, отдал почти всю память под Информикс и выполнил тест на RAW-devices: $ onstat -c | grep BUFFERPOOL BUFFERPOOL size=2K,buffers=3000000,lrus=128,lru_min_dirty=94.500000,lru_max_dirty=95.000000 $ onstat - IBM Informix Dynamic Server Version 11.10.FC2TL -- On-Line -- Up 00:04:53 -- 7737844 Kbytes результаты: ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.04.2008, 11:46 |
|
||
|
"RAW device" vs "BLOCK device"
|
|||
|---|---|---|---|
|
#18+
svat2 Та я только за! :) Вот, отдал почти всю память под Информикс и выполнил тест на RAW-devices: $ onstat -c | grep BUFFERPOOL BUFFERPOOL size=2K,buffers=3000000,lrus=128,lru_min_dirty=94.500000,lru_max_dirty=95.000000 $ onstat - IBM Informix Dynamic Server Version 11.10.FC2TL -- On-Line -- Up 00:04:53 -- 7737844 Kbytes результаты: Крутите упреждающее чтение в Informix и скорость посторйки индексов на raw сильно увеличится, Также будут использоваться ресурсы процессора для сортировки, которые раньше уходили на переброску данных между кешами в случае с блочными девайсами . Еще хорошо бы sar -ud увидеть для всех вариантов особенно на постройке индексов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.04.2008, 11:57 |
|
||
|
"RAW device" vs "BLOCK device"
|
|||
|---|---|---|---|
|
#18+
Код: 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. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. А вазелин еще надо заслужить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.04.2008, 12:18 |
|
||
|
"RAW device" vs "BLOCK device"
|
|||
|---|---|---|---|
|
#18+
onstat- В предыдущем тесте попробуйте поиграться с параметрами упреждающего чтения Informix при использовании RAW , думаю разница очень сильно сократится, може быть даже вы получите выигрыш на RAW если на предыдущих тестах процессор был достаточно сильно нагружен( больше70-80 %). Вот данные загрузки системы/процессора/РЕЙДов по последнему тесту: ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.04.2008, 12:18 |
|
||
|
"RAW device" vs "BLOCK device"
|
|||
|---|---|---|---|
|
#18+
Журавлев Денис вы настроили размер логического и физического лога как советует информикс, для максимальной эффективности при новых чекпоинтах? А как советует информикс ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.04.2008, 12:20 |
|
||
|
"RAW device" vs "BLOCK device"
|
|||
|---|---|---|---|
|
#18+
vasilis Журавлев Денис вы настроили размер логического и физического лога как советует информикс, для максимальной эффективности при новых чекпоинтах? А как советует информикс ? Я криво выразился видимо. online.log 15:34:54 Performance Advisory: Based on the current workload, the logical log space might be too small to accommodate the time it takes to flush the buffer pool. 15:34:54 Results: The server might block transactions during checkpoints. 15:34:54 Action: If transactions are blocked during the checkpoint, increase the size of the logical log space to at least 46200 KB. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.04.2008, 12:29 |
|
||
|
"RAW device" vs "BLOCK device"
|
|||
|---|---|---|---|
|
#18+
svat2 Покажите-ка # rpm -qa libaio libaio-0.3.104-3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.04.2008, 12:33 |
|
||
|
"RAW device" vs "BLOCK device"
|
|||
|---|---|---|---|
|
#18+
svat2 onstat- В предыдущем тесте попробуйте поиграться с параметрами упреждающего чтения Informix при использовании RAW , думаю разница очень сильно сократится, може быть даже вы получите выигрыш на RAW если на предыдущих тестах процессор был достаточно сильно нагружен( больше70-80 %). Вот данные загрузки системы/процессора/РЕЙДов по последнему тесту: На посторойке индексов слишком низкая нагрузка на CPU, думаю общее время постройки можно сократить в десятки раз если таблицы фрагментированы. Если не фрагментированы прирост раза в 1,5 -2 получить тоже можно. Сколько процов? Фрагментированы ли таблицы? Настраивался ли PDQ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.04.2008, 12:34 |
|
||
|
"RAW device" vs "BLOCK device"
|
|||
|---|---|---|---|
|
#18+
onstat- Журавлев Денис onstat-Когда производится индексный поиск, база с помощью упреждающего чтения читает индексное дерево в буфера. нонсенс. Мы читаем одну страницу (корневую), далее смотрим что у нее внутри решаем пойти налево, читаем страницу вообще из другого гигабайта, тут не может быть упреждающего чтения, оно только мешает. То что для индексов используется упреждающее чтение написано в доке, я когдато уже цитировал . Хотя могут быть случаи когда оно и не используется. Господа, вы оба правы :) RA используется при чтении группы листьевых страниц индекса, когда нужно прочитать ключ "от и до". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.04.2008, 12:39 |
|
||
|
"RAW device" vs "BLOCK device"
|
|||
|---|---|---|---|
|
#18+
vasilisГоспода, вы оба правы :) RA используется при чтении группы листьевых страниц индекса, когда нужно прочитать ключ "от и до".ключ? индекс ты хотел сказать. В терминах офтопа index_range_scan VS index_fast_full_scan Таким образом прав я в случае oltp должны быть index_range_scan и никакого ra не будет ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.04.2008, 12:42 |
|
||
|
"RAW device" vs "BLOCK device"
|
|||
|---|---|---|---|
|
#18+
Журавлев Денис onstat -c |grep -i direct_io DIRECT_IO 0 # Use direct I/O for chunks (Yes = 1, No = 0) informix@nag:~> onstat -g glo ... # strace -p 2444 -p 2448 -p 2450 -p 2451 -p 2452 -p 2453 -p 2454 -f 2>&1|grep io_ мощно инстертим и в конце onmode -c стрейс выдает пустоту # strace -p 2444 -p 2448 -p 2450 -p 2451 -p 2452 -p 2453 -p 2454 -f 2>&1|grep write мощно инстертим и в конце onmode -c [pid 2448] pwrite64(256, "\202\231\0\0\1\0i\375\360\0\1\10\330\3d\0\0\0\0\0\0\0\0"..., 2048, 80482304) = 2048 ... > onstat -c |grep -i direct_io DIRECT_IO 1 # Use direct I/O for chunks (Yes = 1, No = 0) ... # strace -p 2559 -p 2563 -p 2565 -p 2566 -p 2567 -p 2568 -p 2569 -f 2>&1|grep write мощно инстертим и в конце onmode -c показывает запись в онлайнлог [pid 2559] write(6, "12:10:36 ", 10) = 10 [pid 2559] write(6, "Booting Language <spl> from modu"..., 37) = 37 # strace -p 2559 -p 2563 -p 2565 -p 2566 -p 2567 -p 2568 -p 2569 -f 2>&1|grep io_ мощно инстертим и в конце onmode -c [pid 2559] io_submit(1077178368, 1, {...}) = 1 [pid 2559] io_getevents(1077178368, 1, 100, {}{0, 1000000}) = 0 ... Денис, если не трудно, теперь своими словами сформулируй - что ты хотел показать (доказать) этими данными ? Или кому что доказывал ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.04.2008, 12:43 |
|
||
|
"RAW device" vs "BLOCK device"
|
|||
|---|---|---|---|
|
#18+
Журавлев Денис Покажите online.log Вложил. Добавлю к этому: Код: 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. Код: plaintext 1. 2. 3. 4. 5. 6. Можно цитату/ссылку/страницу мануала, где можно ознакомиться с теми советами, которые имеются ввиду? Я учитывал на всякий случай только рекомендацию делать размер физ.лога как минимут 110% от общего объема BUFFERS. Размер же лога транзакций брался с потолка. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.04.2008, 12:47 |
|
||
|
"RAW device" vs "BLOCK device"
|
|||
|---|---|---|---|
|
#18+
vasilisДенис, если не трудно, теперь своими словами сформулируй - что ты хотел показать (доказать) этими данными ? Или кому что доказывал ? Я слабо разбираюсь в программировании таких вещей. И я считал что в случае (DIRECT_IO 1) я увижу pwrite64 с флагом O_DIRECT. Но оказалось что там совсем другой системный вызов (io_submit). Я искренне удивлен, и буду разбираться что происходит, сюда я это написал как информация к размышлению ну например для onstat-. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.04.2008, 12:48 |
|
||
|
"RAW device" vs "BLOCK device"
|
|||
|---|---|---|---|
|
#18+
Журавлев Денис vasilisГоспода, вы оба правы :) RA используется при чтении группы листьевых страниц индекса, когда нужно прочитать ключ "от и до".ключ? индекс ты хотел сказать. В терминах офтопа index_range_scan VS index_fast_full_scan Таким образом прав я в случае oltp должны быть index_range_scan и никакого ra не будет А почему при index_range_scan не может быть RA ? В чем принципиальная разница ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.04.2008, 12:49 |
|
||
|
"RAW device" vs "BLOCK device"
|
|||
|---|---|---|---|
|
#18+
vasilisА почему при index_range_scan не может быть RA ? В чем принципиальная разница ?может, только зачем? читаются рандомные страницы, RA будет безполезен. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.04.2008, 12:52 |
|
||
|
"RAW device" vs "BLOCK device"
|
|||
|---|---|---|---|
|
#18+
Журавлев Денис vasilisДенис, если не трудно, теперь своими словами сформулируй - что ты хотел показать (доказать) этими данными ? Или кому что доказывал ? Я слабо разбираюсь в программировании таких вещей. И я считал что в случае (DIRECT_IO 1) я увижу pwrite64 с флагом O_DIRECT. Но оказалось что там совсем другой системный вызов (io_submit). Я искренне удивлен, и буду разбираться что происходит, сюда я это написал как информация к размышлению ну например для onstat-. Спасибо. Теперь я перестал чувствовать себя... идиотом :)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.04.2008, 12:55 |
|
||
|
"RAW device" vs "BLOCK device"
|
|||
|---|---|---|---|
|
#18+
svat2 Можно цитату/ссылку/страницу мануала, где можно ознакомиться с теми советами, которые имеются ввиду? Я учитывал на всякий случай только рекомендацию делать размер физ.лога как минимут 110% от общего объема BUFFERS. Размер же лога транзакций брался с потолка. Читаете online.log при старте IBM Informix Dynamic Server Started. В аттаче старта нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.04.2008, 12:57 |
|
||
|
"RAW device" vs "BLOCK device"
|
|||
|---|---|---|---|
|
#18+
Журавлев Денис vasilisА почему при index_range_scan не может быть RA ? В чем принципиальная разница ?может, только зачем? читаются рандомные страницы, RA будет безполезен. Как это рандомные ? index_range_scan - это чтение группы подряд лежащих индексных страниц с ключами (чтение диапазона значений ключа, тот же битвин). И для этого (чтения диапазона) даже не нужно подниматься на верхний уровень после каждой листьевой страницы - у них есть ссылки на следующую страницу своего уровня. Другое дело, что диапазоны могут быть разными, в том числе и маленькими, и вполне помещаться на одну или две страницы и для этого RA не понадобится. Но для большого диапазона (или индексов с большими ключами, а значит большим количеством страниц) это будет очень даже полезно. Вот тут и должен помочь прогноз оптимизатора по количеству возвращаемых строк. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.04.2008, 13:04 |
|
||
|
"RAW device" vs "BLOCK device"
|
|||
|---|---|---|---|
|
#18+
Журавлев Денис Покажите-ка # rpm -qa libaio libaio-0.3.104-3 Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.04.2008, 13:05 |
|
||
|
"RAW device" vs "BLOCK device"
|
|||
|---|---|---|---|
|
#18+
Журавлев Денис vasilisДенис, если не трудно, теперь своими словами сформулируй - что ты хотел показать (доказать) этими данными ? Или кому что доказывал ? Я слабо разбираюсь в программировании таких вещей. И я считал что в случае (DIRECT_IO 1) я увижу pwrite64 с флагом O_DIRECT. Но оказалось что там совсем другой системный вызов (io_submit). Я искренне удивлен, и буду разбираться что происходит, сюда я это написал как информация к размышлению ну например для onstat-. Спасибо, это действительно полезная информация. Мне тоже в этом нужно еще разбираться. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.04.2008, 13:06 |
|
||
|
"RAW device" vs "BLOCK device"
|
|||
|---|---|---|---|
|
#18+
onstat- В предыдущем тесте попробуйте поиграться с параметрами упреждающего чтения Informix при использовании RAW , думаю разница очень сильно сократится, може быть даже вы получите выигрыш на RAW если на предыдущих тестах процессор был достаточно сильно нагружен( больше70-80 %). Я НЕ "думаю разница очень сильно сократится" в данном тесте при использовании каких бы то ни было параметров RA (хотя всегда стараюсь его использовать по максимуму :) onstat-На посторойке индексов слишком низкая нагрузка на CPU, думаю общее время постройки можно сократить в десятки раз если таблицы фрагментированы. Если не фрагментированы прирост раза в 1,5 -2 получить тоже можно. Думаю, что на постройке индексов можно сильно сократить время, если использовать FAQ http://www.sql.ru/faq/faq_topic.aspx?fid=858 В данном случае нужно распараллелить сортировки, а для этого добавить несколько tempdbs (еще 3), увеличить SHMVIRTSIZE (а для 11-й версии есть даже спецпараметр для сортировок), установить PDQPRIORITY и PSORT_NPROCS=4. Кстати, еще сделать CPUVP=4 (по кол-ву ядер) onstat-Сколько процов? Один, но 4-х ядерный, если я правильно помню onstat-Фрагментированы ли таблицы? вроде нет, но для блочных устройств было то же самое - не забывайте, тест проводился именно для сравнения ("RAW device" vs "BLOCK device"), а не для поиска оптимального времени загрузки. Я правильно говорю, svat2 ? :) onstat-Настраивался ли PDQ? Только для US. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.04.2008, 13:25 |
|
||
|
"RAW device" vs "BLOCK device"
|
|||
|---|---|---|---|
|
#18+
vasilis onstat-Фрагментированы ли таблицы? вроде нет, но для блочных устройств было то же самое - не забывайте, тест проводился именно для сравнения ("RAW device" vs "BLOCK device"), а не для поиска оптимального времени загрузки. Я правильно говорю, svat2 ? :) Правильно то оно правильно, вот только нет никакого толку от эксперемента, когда значения погрешности превосходит значения измеряемой величины. Прежде чем сравнивать производительность BLOCK vs RAW нужно оценить уровень погрешностей. Абсолютная величина и причины недозагрузки процессора(на постройке индекса) вносит гораздо большее влияние на производительность(погрешность) чем разница в производительности BLOCK vs RAW. В иделале постройку индекса нужно сравнивать при нагрузке процессоров ~100%. Тогда разница во времени будет показательна. По этой причине и возник вопрос. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.04.2008, 13:48 |
|
||
|
"RAW device" vs "BLOCK device"
|
|||
|---|---|---|---|
|
#18+
onstat- Сколько процов? Фрагментированы ли таблицы? Настраивался ли PDQ? 1) Проц 1, 4х-ядерный (я указывал выше) 2) дайте запрос, данные которого Вас интересуют по этому поводу 3) кроме нижеуказанного, ничего не делалось Код: plaintext 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.04.2008, 14:27 |
|
||
|
"RAW device" vs "BLOCK device"
|
|||
|---|---|---|---|
|
#18+
Журавлев Денис Читаете online.log при старте IBM Informix Dynamic Server Started. В аттаче старта нет. последний старт был с такими "ругательствами": Код: 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. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.04.2008, 14:34 |
|
||
|
|

start [/forum/topic.php?fid=44&msg=35255934&tid=1608122]: |
0ms |
get settings: |
5ms |
get forum list: |
14ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
37ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
60ms |
get tp. blocked users: |
1ms |
| others: | 214ms |
| total: | 346ms |

| 0 / 0 |
