Некоторые соответствующие ограничения HDFS (который является открытым исходным кодом для файловой системы Google) находятся в the original Google File System paper.
О случаях целевого использования, мы читаем:
В-третьих, большинство файлов мутируют путем добавления новых данных , а не перезаписывать существующие данные. Случайные записи в пределах Файл практически не существует. [...]
[...] Учитывая эту модель доступа на больших файлах, добавление становится центром оптимизации производительности и атомарность гарантий, [...]
В результате :
[...] мы расслабились модель согласованности GFS к значительно упростить файловую систему без наложения обременительной нагрузки на приложениях. Мы также представили операцию атомарного добавления, чтобы несколько клиентов могли добавлять одновременно к файлу без дополнительной синхронизации между .
Запись добавить данные причины («звукозапись»), чтобы быть добавлена атомарно по крайней мере один раз даже в присутствии параллельных мутаций, [...]
Если я прочитал статью правильно, то несколько реплик каждого файла (в смысле HDFS) не обязательно будут точно такими же. Если клиенты используют атомарные операции, каждый файл можно рассматривать как объединение записей (каждый из одной из этих операций), но они могут дублироваться в некоторых репликах, и их порядок может отличаться от реплики к реплике. (Хотя, видимо, также может быть вставлено некоторое дополнение, поэтому оно даже не так чистое - читайте бумагу.) Пользователь должен управлять границами записей, уникальными идентификаторами, контрольными суммами и т. Д.
Так что это совсем не похоже на файловые системы, к которым мы привыкли на наших настольных компьютерах.
Обратите внимание, что HDFS не хорошо для многих маленьких файлов, потому что:
Каждый выделит обычно 64 Мб кусок (source).
Его архитектура не является хорошим в управлении огромным количеством файлов имена (источник: такой же, как в пункте 1). Существует один мастер, поддерживающий все имена файлов (которые, мы надеемся, вписываются в его ОЗУ).
Спасибо, что я искал. – Andre