Интересно, а почему современные операционные системы не предоставляют возможности писать внутрь файла, раздвигая его? Т.е. запись в режиме insert, а не overwrite?
Полагаю, что все или почти все современные файловые системы могут поддерживать эту операцию с такой же лёгкостью, как и добавление данных в конец файла.
Или это не слишком часто нужно, и можно просто рассчитывать на то, что программа, которой это нужно, будет переписывать весь файл заново, как и происходит на практике?
Полагаю, что все или почти все современные файловые системы могут поддерживать эту операцию с такой же лёгкостью, как и добавление данных в конец файла.
Или это не слишком часто нужно, и можно просто рассчитывать на то, что программа, которой это нужно, будет переписывать весь файл заново, как и происходит на практике?
no subject
Date: 2004-06-16 05:12 am (UTC)Но кому файлы с дырками нужны, более-менее понятно; кому нужен эффективный append, тоже понятно. Кому нужен insert? Не знаю :)
no subject
Date: 2004-06-16 05:22 am (UTC)Возможно, другим программам, работающим с очень большими файлами, например, видео-редакторам.
no subject
Date: 2004-06-16 05:36 am (UTC)Возможно, XSLT такой in-place editing был бы кстати.
no subject
Date: 2004-06-16 06:15 am (UTC)Если это быстрая операция, то индексация во многом упрощается: ты вставляшь данные там, где они должны быть (скажем, согласно главному индексу), а не добавляешь в конец файла.
no subject
Date: 2004-06-16 08:19 am (UTC)кроме того, использование частично заполненных блоков в середине файла увеличит размеры inode и indirection блоков в два-три раза, и да, начисто сломает mmap() [и понятие block device-а вообще, кажется], очень сильно усложнит и удорожит lseek(2) [ровно те же проблемы, что и с индексами], при активном использовании может вызывать значительную фрагментацию внутри файла, что сделает read(2) и write(2) неэффективными, и т.д., и т.п.
no subject
Date: 2004-06-16 08:49 am (UTC)Re: Reply to your comment...
Date: 2004-06-16 09:04 am (UTC)после того, как я отправил коммент :)
no subject
Date: 2004-06-16 08:40 am (UTC)Одним словом, не нужно это всё трудовому народу, по-моему
no subject
Date: 2004-06-16 06:27 am (UTC)no subject
Date: 2004-06-16 06:34 am (UTC)no subject
Date: 2004-06-16 10:39 am (UTC)Re: вас, конечно, не затруднит
Date: 2004-06-17 02:57 am (UTC)Re: вас, конечно, не затруднит
Date: 2004-06-17 06:28 am (UTC)и, конечно, я не имел в виду это поделие на базе dbasoподобных таблиц. я имел в виду нормальную базу данных, читай: оракл, ms sql server, или на худой конец db2.
Re: вас, конечно, не затруднит
Date: 2004-06-17 06:32 am (UTC)[break]
Re: вас, конечно, не затруднит
Date: 2004-06-17 07:17 am (UTC)no subject
Date: 2004-06-16 08:18 am (UTC)нелинейный видеомонтаж - да, но как-то не сложилось.
no subject
Date: 2004-06-16 08:28 am (UTC)no subject
Date: 2004-06-16 05:55 am (UTC)Текстовики, например xml-word документ.