Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.021 c
4-1085408812
tower
2004-05-24 18:26
2004.07.04
Запустить процес и подождать пока работает


1-1087539778
sav
2004-06-18 10:22
2004.07.04
Установка свойства Файлов


14-1087482115
ISP
2004-06-17 18:21
2004.07.04
Может это и спамеры, но я подписал


3-1086696579
Sergey Vorobyev
2004-06-08 16:09
2004.07.04
Как вывести в грид записи в порядке обратном физическому ?


14-1087268584
Ozone
2004-06-15 07:03
2004.07.04
Папки коллективного доступа




   Наверх