![]() |
|
Модераторы: korob2001, ginnie |
![]()
|
|
| izver84 |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 302 Регистрация: 5.11.2007 Репутация: нет Всего: 1 |
Здравствуйте.
Передо мной поставлена задача перенос данных dbf в xml. В dbf есть поле datd- дата. В файл содержаться данные по нескольким датам. Задача создать для каждой даты свой xml. Написал прогу.
Программа работает. Тестил на маленьком файл (4 строки). Реальный файл долго обрабатывает. После часа работы оборвал процесс. Можно как то ускорить процесс? Я не нашел проги которая преобразовала dbf в xml, Спасибо. -------------------- Если новая программа с первого раза компилируется без ошибок, значит, она написана принципиально неправильно. |
|||
|
||||
| Loki |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 244 Регистрация: 9.7.2006 Репутация: нет Всего: нет |
Сделайте вывод в переменную из базы и после окончания выгрузки закройте соединение с базой.
А после сделайте вывой из переменной(или массива) в xml файлик. |
|||
|
||||
| noize |
|
|||
![]() 5.18.2 ![]() Профиль Группа: Участник Сообщений: 89 Регистрация: 10.7.2010 Где: СПб Репутация: 3 Всего: 3 |
Делайте запрос с лимитами и крутитесь в цикле увеличивая на каждой итерации лимит и оффсет пропорционально до тех пор пока в БД есть данные.
Пример для mysql:
Это поможет сохранить память и ускорит(порой ускорение до нескольких раз) работу скрипта т.к. данные получаются порциями и база становится более отзывчивой. |
|||
|
||||
| tzirechnoy |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1173 Регистрация: 30.1.2009 Репутация: нет Всего: 16 |
Естественно, это всё будут гадания на кофейной гуще, но 99% -- что проблема в ORDER. То есть, скорее всего, у драйвера dbf какой-нибудь тупейшый сортировщик с квадратичным временем исполнения.
Перегоните всё в нормальню базу (sqlite хотя бы), с правильным индэксом -- и будет быстрее. |
|||
|
||||
![]()
|
| Правила форума "Perl" | |
|
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Perl: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |