|
Молчаливая PRAGMA schema.page_size
|
|||
---|---|---|---|
#18+
Привет всем. Необходимо изменить дефолтный page_size (1024) на альтернативные (512, 2048) и посмотреть как это влияет на I/O. Сделал перед созданием таблички Код: sql 1.
Но нет сообщения об успехе или ошибки. Пробовал ставить некорректные значения и тоже нет эффекта. Как проверить что прагма сработала? Или принята? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.06.2016, 12:11 |
|
Молчаливая PRAGMA schema.page_size
|
|||
---|---|---|---|
#18+
mayton, А, например, так: Создаю я пустую БД, размер страницы 65К, далее начинаю инсёртить по тихоньку туда записи... Как только место заканчивается в свободных областях, размер файла увеличивается. И проверил, что это теже 65К. Вроде работает ... |
|||
:
Нравится:
Не нравится:
|
|||
23.06.2016, 12:35 |
|
Молчаливая PRAGMA schema.page_size
|
|||
---|---|---|---|
#18+
Предполагаю, после фактического изменения "PRAGMA mayton.page_size;" должен вернуть 512. Как пишет справка, " The page_size pragma will only cause an immediate change in the page size if it is issued while the database is still empty ", но это у меня повторить не получилось, на пустой БД из-под SqliteBrowser PRAGMA не отработала, page_size остался дефолтным. А вот это: " If the page_size pragma is used to specify a new page size just prior to running the VACUUM command and if the database is not in WAL journal mode then VACUUM will change the page size to the new value. " отработало как надо. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.06.2016, 18:00 |
|
Молчаливая PRAGMA schema.page_size
|
|||
---|---|---|---|
#18+
В документации есть жирный хинт: http://sqlite.org/pragma.html#pragma_page_size Установка этой прагмы сработает только в двух случаях - на абсолютно пустой базе или непосредственно перед vacuum. И только если WAL выключен. Отсюда: выключаем WAL если он включен, ставим размер страницы, пылесосим базу, меряем ИО. Ставим новый размер, пылесосим меряем... повторять до полного удовлетворения. Но все начинается с чтения документации :) ... |
|||
:
Нравится:
Не нравится:
|
|||
23.06.2016, 18:04 |
|
Молчаливая PRAGMA schema.page_size
|
|||
---|---|---|---|
#18+
Все разобрался. По крайней мере sqlite_analyzer мне показывает page_size. Спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.06.2016, 18:04 |
|
Молчаливая PRAGMA schema.page_size
|
|||
---|---|---|---|
#18+
maytonПривет всем. Необходимо изменить дефолтный page_size (1024) на альтернативные (512, 2048) и посмотреть как это влияет на I/O. Покажешь потом условия и результаты тестов? ... |
|||
:
Нравится:
Не нравится:
|
|||
24.06.2016, 12:21 |
|
Молчаливая PRAGMA schema.page_size
|
|||
---|---|---|---|
#18+
Есть огромное коммерческое Java-app которое где-то в недрах даёт команду statement.execute("PRAGMA schema.page_size = {size}"); и мне надо было просто посмотреть аффектит ли эта команда на размер страницы или нет. Я подтвердил. Через sqllite_analyzer <databasefile>. Больше ничего показать не могу т.к. обязан не разглашать имена, названия e.t.c а отбеливанием отчотов заниматься мне совершенно некогда. Так что sorry. Ну я думаю что вы и сами это сделаете легко. Не кодинг ведь. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.06.2016, 12:26 |
|
|
start [/forum/topic.php?fid=54&msg=39261262&tid=2008590]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
48ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
51ms |
get tp. blocked users: |
2ms |
others: | 16ms |
total: | 163ms |
0 / 0 |