Скорость работы БД в приложении |
Здравствуйте, гость ( Вход | Регистрация )
Скорость работы БД в приложении |
AD |
18.3.2011, 10:38
Сообщение
#1
|
Профессионал Группа: Участник Сообщений: 2003 Регистрация: 4.2.2008 Из: S-Petersburg Пользователь №: 84 Спасибо сказали: 70 раз(а) Репутация: 17 |
Для более быстрого создания файла топографической библиотеки (бинарный файл, в котором хранится содержимое нескольких (многих) карт) определенного формата решено было использовать в качестве промежуточного варианта хранения данных БД. Проблема состоит в том, что после реализации этого подхода выяснилось, что вставка, изменение и выборка из таблиц СУЩЕСТВЕННО замедляет задачу, а не ускоряет ее. Как можно решить данную проблему? Заранее спасибо за подсказку! Как только я комментирую строчки, делающие выборку и внесение данных в таблицы - тут же скорость работы возрастает в разы.
Сообщение отредактировал AD - 18.3.2011, 10:39 |
|
|
Iron Bug |
1.4.2011, 20:06
Сообщение
#2
|
Профессионал Группа: Модератор Сообщений: 1611 Регистрация: 6.2.2009 Из: Yekaterinburg Пользователь №: 533 Спасибо сказали: 219 раз(а) Репутация: 12 |
я месяц назад пользовал небольшую (по мегабайтам) SQLite БД, у меня было: вставка без транзакции > 13 сек. Вставка с транзакцией <1 сек. транзакция позволяет делать откаты и либо ты не коммитил (данные не сливались реально, а хранились в памяти), либо что-то неправильно делал. потому что с отдельными транзакциями на каждую запись обращение к базам всегда медленнее. кстати, вставка 13 секунд - это тоже что-то нездоровое. хотя, наверное смотря какой объём. у меня наоборот была задача: довольно мелкие записи, но очень быстро: примерно 30 записей (в разные таблицы, со связями) каждые 50миллисекунд. за час эта хрень отъедала чуть больше гигабайта на винте (но база была поделена на куски по 300 метров) и всё работало на ура и ни грамма не грузило ни проц, ни память, ни винт. при этом параллельно пользователь работал с софтиной, в которой он просматривал и сортировал выборки из данных. и даже при выборках в сотни тысяч записей ничего не тормозило. хотя юзерский интерфейс, конечно, отъедал больше ресурсов. но там ещё на каждую запись отрисовка шла и скорее всего, поэтому. сами обращения к базе не так много брали. в худших случаях ну секунд 5. но это уж когда вообще открывался один целый файл в 300 метров с хитрожопой сортировкой. Сообщение отредактировал Iron Bug - 1.4.2011, 20:20 |
|
|
Текстовая версия | Сейчас: 26.11.2024, 21:53 |