Как Swift-Open Stack Storage System управляет метаданными файлов?

Я работаю над написанием статьи об облачном хранилище.

Я изучаю систему хранения Openstack под названием Swift.

На странице: http://swift.openstack.org/overview_architecture.html

Object Server Object Server — это очень простой сервер хранения больших двоичных объектов, который может хранить, извлекать и удалять объекты, хранящиеся на локальных устройствах. Объекты хранятся в виде двоичных файлов в файловой системе, а метаданные хранятся в расширенных атрибутах файла (xattrs). Это требует, чтобы базовая файловая система для объектных серверов поддерживала xattrs для файлов. В некоторых файловых системах, таких как ext3, xattrs отключен по умолчанию.

Означает ли это, что Swift не отделяет метаданные от содержимого файла? Не создаст ли это узких мест при доступе к огромному количеству метаданных или поиске? Будет ли при каждом доступе к головному объекту проходить через файловую систему для поиска метаданных?

Спасибо


person leon    schedule 25.11.2011    source источник


Ответы (2)


Swift использует преимущества хэша md5 и собственных кольцевых структур данных для поиска пути к файлу. Когда он находит файл, он считывает xattrs вместе с файлом. В результате ему не нужно читать все метаданные в файловой системе.

person onemouth    schedule 02.05.2013

Эта книга может немного помочь вам понять работу Swift. Однако эта книга не дает ответа на ваш вопрос, но может помочь вам понять, как он хранится. Для лучшего понимания вам обязательно нужно взломать код swift для себя и увидеть или обратиться к списку рассылки swift, например, [email protected]. Также найдите следующую ссылку: документы Swift Api

person J Bourne    schedule 28.11.2011