|
|
|
2.5 Как быстро работает уборка мусора?
|
|||
|---|---|---|---|
|
#18+
Особенно никогда не интересовался быстродействием уборки мусора, но недавно столкнулся с ней и удивился: 1. Исходная база свежебекапресторенная - 26 Мб, Forced Writes = ON. 2. Таблица CREATE TABLE RCPRQLT ( RCP_ID ID NOT NULL /* ID = INTEGER NOT NULL */, RAW_ID ID NOT NULL /* ID = INTEGER NOT NULL */, QLT_ID ID NOT NULL /* ID = INTEGER NOT NULL */, QLT_VAL REAL_WNULL /* REAL_WNULL = DOUBLE PRECISION */, VALUE_NATIVE REAL_WNULL /* REAL_WNULL = DOUBLE PRECISION */, VALUE_PREMIX REAL_WNULL /* REAL_WNULL = DOUBLE PRECISION */ ); ALTER TABLE RCPRQLT ADD CONSTRAINT RCPRQLT PRIMARY KEY (RCP_ID, RAW_ID, QLT_ID); ALTER TABLE RCPRQLT ADD CONSTRAINT RCPRQLT_FK_QLT_ID FOREIGN KEY (QLT_ID) REFERENCES QM_DICT (QLT_ID) ON UPDATE CASCADE; ALTER TABLE RCPRQLT ADD CONSTRAINT RCPRQLT_FK_RAW_ID FOREIGN KEY (RAW_ID) REFERENCES RAW_DICT (RAW_ID) ON UPDATE CASCADE; ALTER TABLE RCPRQLT ADD CONSTRAINT RCPRQLT_FK_RCP_ID FOREIGN KEY (RCP_ID) REFERENCES DOC_DCT (DOC_ID) ON DELETE CASCADE; содержит 83 000 записей. Производим массовое удаление информации. Запускаем select count(*) from rcprqlt. Получаем выполнение почти 2 минуты. информация во вложении С Forced writes = OFF выполняется 1.5 секунды. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.12.2013, 12:27:31 |
|
||
|
2.5 Как быстро работает уборка мусора?
|
|||
|---|---|---|---|
|
#18+
bazilio77, судя по всему выполняется на домашнем ПК. Конфигурация умалчиваемая стоит, если число буферов всего 75. Составной первичный ключ на три поля зря замутил, да ещё и каскадные обновления с удалениями добавил. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.12.2013, 12:52:36 |
|
||
|
2.5 Как быстро работает уборка мусора?
|
|||
|---|---|---|---|
|
#18+
bazilio77, на таком объёме чего-то не верится. Можешь свою базульку выложить для тестирования? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.12.2013, 13:02:09 |
|
||
|
2.5 Как быстро работает уборка мусора?
|
|||
|---|---|---|---|
|
#18+
Симонов Денисbazilio77, судя по всему выполняется на домашнем ПК. Конфигурация умалчиваемая стоит, если число буферов всего 75. Составной первичный ключ на три поля зря замутил, да ещё и каскадные обновления с удалениями добавил. Составной первичный ключ и каскадные удаления к делу не относятся. Как вы предлагаете обеспечить уникальность по критерию rcp, raw, qlt без такого ключа? Суррогатным плюс уникальным? Спасибо за подсказку по поводу буферов. До этого пользовался умолчательным конфигом. Раскомментировал DefaultDbCachePages = 2048, все стало на места. Забыл сказать что сервер был embedded. Но тогда возникает другой вопрос: почему embedded по умолчанию делает кэш 75 страниц, хотя написано что это должно относиться к классику? # ---------------------------- # Number of cached database pages # # This sets the number of pages from any one database that can be held # in cache at once. If you increase this value, the engine will # allocate more pages to the cache for every database. By default, the # SuperServer allocates 2048 pages for each database and the classic # allocates 75 pages per client connection per database. # # Type: integer # DefaultDbCachePages = 2048 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.12.2013, 13:36:18 |
|
||
|
2.5 Как быстро работает уборка мусора?
|
|||
|---|---|---|---|
|
#18+
bazilio77почему embedded по умолчанию делает кэш 75 страниц, хотя написано что это должно относиться к классику? Потому что Embedded и есть Classic. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.12.2013, 13:44:46 |
|
||
|
2.5 Как быстро работает уборка мусора?
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakovbazilio77почему embedded по умолчанию делает кэш 75 страниц, хотя написано что это должно относиться к классику? Потому что Embedded и есть Classic. Век живи, век учись! Ранее не пользовался классиком, только суперсервером. Еще вопрос - какие могут быть еще подводные камни в настройке? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.12.2013, 13:47:57 |
|
||
|
2.5 Как быстро работает уборка мусора?
|
|||
|---|---|---|---|
|
#18+
bazilio77, потому как начиная с версии 2.5 embeded работает как superclassic. http://www.firebirdsql.org/file/documentation/release_notes/html/ru/rlsnotes25.html#rnfb25-threading-superclassic ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.12.2013, 13:48:35 |
|
||
|
|

start [/forum/topic.php?fid=40&fpage=106&tid=1564038]: |
0ms |
get settings: |
11ms |
get forum list: |
11ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
508ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
44ms |
get tp. blocked users: |
2ms |
| others: | 223ms |
| total: | 816ms |

| 0 / 0 |
