clever
Зарегистрирован: 23.01.2004 Сообщения: 13
|
Добавлено: Ср Фев 25 2004 07:38 Заголовок сообщения: Производительные плоские базы |
|
|
Занимаюсь сейчас этой проблемой - как создать производительную базу на плоских файлах.
Можно хранить все записи в одном файле. Можно хранить записи в директории, где каждой записи отведён один файл с именем уникаьного номера записи.
В первом случае, если нужно найти запись по уник. номеру, придётся весь файл прочитать и совершить в нём поиск. Во втором случае, достаточно прочитать файл из папки, имя которого - уникальный номер.
Я протестировал 2 варианта.
Создание 100.000 записей
Файл-база - 14.3 сек.
Каталог-база - 70.9 сек. (в 5 раз медленнее)
Поиск записи номер 75000
Файл-база - 0.579618
Каталог-база - 0.022627 (в 26 раз быстрее)
Выходит, что если нужно быстрое создание записей, то нужно использовать базу-файл, а если быстрый доступ к данным записи по id, то базу-каталог.
Как грамотно написать плоскую базу?
Может статья какая есть? |
|