Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.07.04;
Скачать: CL | DM;

Вниз

Огромные проблемы с Огромными файлами   Найти похожие ветки 

 
Игорь   (2004-06-16 12:08) [0]

У меня есть несколько огоромных файлов ~900Мб типа extended. Мне нужно их дополнять, менять там значения и получать из них значения.

Как оптимизировать работу с файлами?
Что лучше:
1) один раз открыть и все время держать открытым или каждый раз открывать;
2) если нужно вытащить из файла несколько значений - можно брать их по одному или лучше скопом;
3) один файл я заполняю неподряд, а скачу (например сначало пишу 13-е число, затем 3046-е, потом 1-е и т.д.).
Что мне делать. Сейчас мне приходиться перед началом заполянть 900Мб нулями.
4) когда я работаю с такими файлами у меня время от времени компютер просто перестает обращать внимания на программу и все. Такое ощущение, что просто исчерпались ресурсы, хотя я просто открывал файл и не забитвал память.

Заранее очень благодарен.


 
Sandman25 ©   (2004-06-16 12:09) [1]

Файл как объявлен? Нужен типизированный ИМХО, тогда seek будет очень полезен.


 
Anatoly Podgoretsky ©   (2004-06-16 12:18) [2]

Менять, получать это быстро, а вот что под понятием дополнять срывается?


 
jack128 ©   (2004-06-16 12:23) [3]


> 1) один раз открыть и все время держать открытым или каждый
> раз открывать;

имхо без особой разницы..
> 2) если нужно вытащить из файла несколько значений - можно
> брать их по одному или лучше скопом;

если эти значения идут ПОДРЯД - друг за другом, то конечно лудше скопом. А если они не подряд идут, то я не понимаю, что означает "выбрать скопом" ;-)
> 3) один файл я заполняю неподряд, а скачу (например сначало
> пишу 13-е число, затем 3046-е, потом 1-е и т.д.).
> Что мне делать. Сейчас мне приходиться перед началом заполянть
> 900Мб нулями.
а  вообще - зачем тебе 900 мегобайт нулей?


 
Alx2 ©   (2004-06-16 12:54) [4]

>Игорь   (16.06.04 12:08)
Мне кажется, лучше Memory Mapped Files использовать в этом случае. Правда, при условии, что размер файла меняться не будет.


 
WondeRu ©   (2004-06-16 13:03) [5]

2Игорь  
Используй лучше БД, FireBird какой-нибудь! А такие файлы использовать - жуть да только!


 
DimKa ©   (2004-06-16 13:30) [6]

Можно использовать TFileStream и пругать по нему как угодно, да вроде и быстро получается.


 
Anatoly Podgoretsky ©   (2004-06-16 13:44) [7]

Базу на чисто типизированый файл, ты еще и Веб сервер предложил


 
WondeRu ©   (2004-06-16 14:03) [8]

>Базу на чисто типизированый файл, ты еще и Веб сервер предложил
я сурьезно! по одной табличке прыгать туда-сюда проще, чем по файлу!
(Это мое субъективное мнение, подкрепленное опытом разработки приложений для обработки результатов большого количества экспериментов)


 
Anatoly Podgoretsky ©   (2004-06-16 14:19) [9]

Нет по типизированому файлу и по нетипизированому прыгать быстрее и проще, при том очень быстро в отличии от базы.



Страницы: 1 вся ветка

Текущий архив: 2004.07.04;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.029 c
6-1083986699
magician
2004-05-08 07:24
2004.07.04
Как удаленно перезагрузить компьютер


3-1086853755
Alex_x
2004-06-10 11:49
2004.07.04
Как сравнить две базы Акссесс


1-1087903052
denary
2004-06-22 15:17
2004.07.04
как записать в массив действительных чисел строки из текстового ф


4-1085219852
Руслан Гиричев
2004-05-22 13:57
2004.07.04
Как программно изменить частоту обновления экрана?


1-1087208030
alexa
2004-06-14 14:13
2004.07.04
ScrollBar в RichEdit