Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2004.07.04;
Скачать: [xml.tar.bz2];

Вниз

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

 
Игорь   (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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.035 c
14-1087283897
AlexG
2004-06-15 11:18
2004.07.04
Как отконфигурировать БЫСТРО WinNT или WinXP?


1-1086696312
IXT
2004-06-08 16:05
2004.07.04
XPStyle


4-1085349762
Malya
2004-05-24 02:02
2004.07.04
ShellExecute?


14-1087502649
VID
2004-06-18 00:04
2004.07.04
Где бы скачать песни Mystikal ?


4-1085302975
WOLF
2004-05-23 13:02
2004.07.04
Свой рабочий стол





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский