| Автор | Сообщение |
|
|
| |
Пост N: 29
Зарегистрирован: 30.01.18
|
|
Отправлено: 20.02.24 17:26. Заголовок: Compound Index
Поделитесь пожалуйста опытом использования Compound Index (CDX). Как производительность, надежность по сравнению с обыкновенными? Есть ли смысл перехода на них?
|
 |

|
|
Ответов - 13
[только новые]
|
|
|
|
| постоянный участник
|
Пост N: 7688
Зарегистрирован: 12.09.06
|
|
Отправлено: 20.02.24 22:24. Заголовок: NickSam пишет: Есть..
NickSam пишет: | цитата: | | Есть ли смысл перехода на них? |
| Да, есть. Использую активно с 1996 года. В нём есть удобнейшая штука - условный индекс (читать на форуме). Поиск по базе 400Мб в 1200 полей происходит ОЧЕНЬ шустро. По сети конечно тормозит такой поиск, но туда нужно ставить LetoDb - https://abonent4.ru/static/letodb/ или сразу переходить на него.
|
 |

|
|
|
| |
Пост N: 91
Зарегистрирован: 17.10.05
|
|
Отправлено: 26.02.24 21:25. Заголовок: Безусловно. Сам инде..
Безусловно. Сам индексный файл компактнее, открывается автоматически при открытии файла данных. Для меня лично было очень существенным то, что индексы CDX были совместимы с FOXPRO. Правда,было это в благословенных 1990х, и Клиппер 5.2 + SIX RDD.. O, там были и невероятные плюшки с триггерами, SCOPE и транзакциями...
|
 |

|
|
|
| |
Пост N: 159
Зарегистрирован: 09.09.11
|
|
Отправлено: 20.04.24 16:53. Заголовок: Добрый день, БД соде..
Добрый день, БД содержит 108 млн.записей (размер 49 ГБ), есть 6 индексных файлов (CDX). При обновлении вылетает ошибка Hb_CdxPageStore: Page namber wrong БД Упаковал и повторно создал индексные файлы. Вопрос(ы): - насколько критично количество записей - размер файла - длинна ключа/ключей в индексном файле Размер ключа (ключей) в индексе не превышает 80 байт
|
 |

|
|
|
| |
Пост N: 160
Зарегистрирован: 09.09.11
|
|
Отправлено: 20.04.24 16:54. Заголовок: Добрый день, БД соде..
Добрый день, БД содержит 108 млн.записей (размер 49 ГБ), есть 6 индексных файлов (CDX). При обновлении вылетает ошибка Hb_CdxPageStore: Page namber wrong БД Упаковал и повторно создал индексные файлы. Вопрос(ы): - насколько критично количество записей - размер файла - длинна ключа/ключей в индексном файле Размер ключа (ключей) в индексе не превышает 80 байт
|
 |

|
|
|
| постоянный участник
|
Пост N: 1728
Зарегистрирован: 27.01.07
|
|
Отправлено: 21.04.24 10:26. Заголовок: Oskar_AAA пишет: Pa..
Oskar_AAA пишет: Предположу, что это происходит при выделении памяти под очередную страницу. Слишком большие индексы. Имхо, конечно.
|
 |

|
|
|
| |
Пост N: 161
Зарегистрирован: 09.09.11
|
|
Отправлено: 21.04.24 11:49. Заголовок: Спасибо, сейчас удал..
Спасибо, сейчас удаляю данные за один год и попробуем повторить импорт.... Количество записей к удалению около 40 млн.шт. Результат напишу.
|
 |

|
|
|
| постоянный участник
|
Пост N: 4554
Зарегистрирован: 17.02.12
|
|
Отправлено: 21.04.24 12:09. Заголовок: Oskar_AAA пишет сейч..
Oskar_AAA пишет | цитата: | | сейчас удаляю данные за один год и попробуем повторить импорт.... Количество записей к удалению около 40 млн.шт. |
| По мне, лучше сразу организовать базу по годам, например по каталогу года или dbf оглавление по годам + номера док. или что надо и dbf-ы по годам, все доступы через оглавление или от имен каталогов - года
|
 |

|
|
|
| |
Пост N: 162
Зарегистрирован: 09.09.11
|
|
Отправлено: 23.04.24 06:49. Заголовок: Добрый день, друзья...
Добрый день, друзья. Удалил данные за год (35 млн.записей) - все работает. Относительно разделения по годам: будем делить БД У кого-нибудь есть БД с количеством записей более 100 млн? Как работает CDX индексы?
|
 |

|
|
|
| постоянный участник
|
Пост N: 4558
Зарегистрирован: 17.02.12
|
|
Отправлено: 23.04.24 07:25. Заголовок: Oskar_AAA Охранная ..
Oskar_AAA Охранная контора, события датчиков, задача на FireBird ~ 2,5 месяца => 10 000 000 записей FireBird еле движется, так же удаляют данные пред. месяцев, оставляя ~ 1 000 000. Сделал сбор всех данных в базу dbf по годам (dbf оглавления ссылка на огл. по месяцам) и месяцам (dbf оглавления на год) и сами данные dbf по месяцам. Каждый день ~20 минут в 7.00 данные из FireBird съедаются в базу dbf с CDX индексами. Уже с 2020 года база работает как часы, через dbf оглавления доступ оч. быстрый. База dbf используется для отчетов для клиентов и полицейским, юридическим вопросам. Для базы выделен отдельный PC сервер с W10, сама база на LetoDbf. За год ~( 2 000 000 * 12 ) записей в работе + рассылка SMS сообщений и сообщений на почту клиентам о событиях на объектах, т.е. открыли\закрыли двери ... События для SMS так же хранятся в базах по месяцам (до 9 моб. телефонов на 1 объект 1 событие можно отсылать SMS, т.е. жене, мужу sms, что дети пришли со школы, открыли дверь, во столько то закрыли дверь пошли на кружки и ...)
|
 |

|
|
|
| |
Пост N: 163
Зарегистрирован: 09.09.11
|
|
Отправлено: 23.04.24 22:28. Заголовок: SergKis Спасибо... с..
SergKis Спасибо... сделаем по БД по годам....
|
 |

|
|
|
| |
Пост N: 174
Зарегистрирован: 09.09.11
|
|
Отправлено: 03.07.25 08:47. Заголовок: Добрый день. Продолж..
Добрый день. Продолжаем борьбу с ошибкой 9201 Hb_CdxPageStore: Page namber wrong. Нашел подсказку, но не пониманию как исправить https://groups.google.com/g/harbour-users/c/z0qQzpdVHmQ копия из переписки Hi, I have this error: Unrecoverable error 9201: hb_cdxPageSeekKey: wrong parent key Cdx harbour standard file broken Archive.dbf bigger 4GB Is it error related with dbf size ? Regards Gerald Drouillard: фотография профиля Джеральд Друйярд 12 мая 2023 г., 21:20:31 Вы смотрели: DBFLOCKSCHEME в пятницу, 12 мая 2023 г. в 5:51 утра Рафа Пабд <trepao27031967@gmail. Hansmarc: фотография профиля Гансмарк 13 мая 2023 г., 01:27:26 – Пользователи гавани Привет, Рафа, действительно, как Джеральд упомянул. У меня были такие же проблемы несколько лет назад. Ниже приведена дополнительная информация. /* Другие схемы блокировки из dbinfo.ch // СХЕМЫ БЛОКИРОВКИ: RDDI_LOCKSCHEME, DBI_LOCKSCHEME #define DB_DBFLOCK_DEFAULT 0 #define DB_DBFLOCK_CLIPPER 1 // схема блокировки Cl*pper по умолчанию #define DB_DBFLOCK_COMIX 2 // Схема гиперблокировки COMIX и CL53 DBFCDX #define DB_DBFLOCK_VFP 3 // [V]FP, CL52 DBFCDX, SIx3 SIXCDX, CDXLOCK.OBJ #define DB_DBFLOCK_HB32 4 // Схема гиперблокировки Harbour для 32-битного файлового API, максимальный размер таблицы 4 ГБ #define DB_DBFLOCK_HB64 5 // Схема гиперблокировки Harbour для 64-битного файлового API, размер таблицы не ограничен #define DB_DBFLOCK_CLIPPER2 6 // расширенная схема блокировки Cl*pper NTXLOCK2.OBJ */ SET(_SET_DBFLOCKSCHEME, DB_DBFLOCK_HB32 ) // 4 = макс. 4 ГБ С уважением Его Вопрос: 1. Как исправить #define DB_DBFLOCK_HB32 4 // Схема гиперблокировки Harbour для 32-битного файлового API, максимальный размер таблицы 4 ГБ на неограниченный размер 2. Переходить на xHarbour 10287 Bcc 77064 PS: дробить на файлы по годам-месяцам пока нет времени... придется это провести с 3 DBF файлами (4 года, +144 файла)
|
 |

|
|
|
|
|
| |
Пост N: 56
Зарегистрирован: 06.03.24
|
|
Отправлено: 13.07.25 19:54. Заголовок: SET( _SET_DBFLOCKSCH..
SET( _SET_DBFLOCKSCHEME, DB_DBFLOCK_HB64 )
|
 |

|
|
|
| |
Пост N: 175
Зарегистрирован: 09.09.11
|
|
Отправлено: 16.07.25 18:57. Заголовок: Добрый вечер Спасибо..
Добрый вечер Спасибо, попробуем SET( _SET_DBFLOCKSCHEME, DB_DBFLOCK_HB64 ) Пока решил проблему изменив составной индексный ключ (уменьшил количество ключевых полей ...)
|
 |

|
|