Я просто потратил день на создание уровня абстракции для kyotodb, чтобы удалить глобальные блокировки из моего кода, я был занят переносом своих алгоритмов на этот новый уровень абстракции, когда обнаружил, что scan_parallel
на самом деле не параллелен.Это только макс. Одно ядро - для забав, я застрял в цикле с обратным отсчетом в миллиард int-countdown (пустые заглушки при портировании), чтобы попытаться смоделировать некоторое время обработки.все еще только одно ядро макс.Мне нужно перейти на Беркли БД или leveldb?Я думал, что kyotodb предназначен для проблем с масштабом интернета: /.Я, должно быть, делаю что-то не так или пропускаю некоторые ошибки.
top
или iostat
никогда не превышал 100% / 25% (iostat на один процессор максимум = 1 / количество ядер * 100): / На четырехъядерном процессоре i5.
дБ составляет 10 гигабайт корпусов данных, закодированных в буферном протоколе (treedb) со следующими флагами (взятыми из документации).
index_db.tune_options(TreeDB::TLINEAR | TreeDB::TCOMPRESS);
index_db.tune_buckets(1LL * 1000);
index_db.tune_defrag(8);
index_db.tune_page(32768);
edit
Не удалятьIR TAG.Пожалуйста, подумайте, прежде чем махать рукой по разъединяющему устройству.
Это вопрос, связанный с ИК, о создании инвертированных файлов GINORMOUS (40 гиг +) ONLINE, инвертированные индексы являются основой методов доступа к данным IR, а инвертированный индекссоздание имеет уникальный транзакционный профиль.Удаляя ИК-тег, вы лишаете меня мудрости исследователей в области ИК, которые использовали библиотеку базы данных для создания таких больших файлов базы данных.