Способ управления файлами, распределенная система хранения и узел управления
Иллюстрации
Показать всеИзобретение относится к области технологий хранения. Техническим результатом является повышение эффективности управления файлами. Раскрыт способ управления файлами, в котором способ применяется к распределенной системе хранения, причем распределенная система хранения содержит узел управления и многочисленные узлы хранения, и при этом способ содержит этапы, на которых: принимают, посредством узла управления, запрос создания файла, отправленный хостом, при этом запрос создания файла используется, чтобы запросить создание файла в распределенной системе хранения; выделяют файлу, посредством узла управления, первое виртуальное пространство из глобального виртуального адресного пространства распределенной системы хранения согласно запросу создания файла, при этом локальное виртуальное адресное пространство каждого узла хранения в распределенной системе хранения соответствует части глобального виртуального адресного пространства; записывают, посредством узла управления, метаданные файла, при этом метаданные файла содержат информацию о первом виртуальном пространстве, выделенном файлу, и информация о первом виртуальном пространстве используется для указания на первое локальное виртуальное адресное пространство первого узла хранения, который используется для хранения файла; и отправляют хосту, посредством узла управления, ответ об успешном создании файла, при этом ответ об успешном создании файла несет информацию о первом виртуальном пространстве. 3 н. и 18 з.п. ф-лы, 10 ил.
Реферат
ОБЛАСТЬ ТЕХНИКИ, К КОТОРОЙ ОТНОСИТСЯ ИЗОБРЕТЕНИЕ
[0001] Настоящее раскрытие относится к области технологий хранения, и конкретно, к способу управления файлами, распределенной системе хранения и узлу управления.
УРОВЕНЬ ТЕХНИКИ
[0002] Энергонезависимая память следующего поколения может включать в себя энергонезависимую память, которая имеет возможность адресации и осуществления доступа к ней посредством байта, такая как память на основе фазового перехода (PCM), резистивная оперативная память (ReRAM) или магниторезистивная оперативная память (MRAM). Энергонезависимая память следующего поколения может предоставить интерфейс, аналогичный интерфейсу динамической оперативной памяти (DRAM). При практическом применении, энергонезависимой памятью следующего поколения можно управлять посредством способа управления страницами, аналогично способу с DRAM. В настоящее время, система хранения, основанная на энергонезависимой памяти следующего поколения, является предметом исследования в промышленности.
[0003] Обычно, традиционная система хранения, распределенная файловая система или подобная, записывает размещение данных файлов на носителе информации с использованием метаданных, для управления данными файлов. Метаданные используют глобальное пространство имен на основе контента, и обычно используют структуру данных, такую как B-дерево. Для блока данных файла, блок данных файла отслеживается посредством записи узла хранения, на котором размещается блок данных, или даже записи размещения на узле хранения. Такой способ применим к блочному сценарию на основе устройства, в котором используется традиционный накопитель на жестких дисках (HDD), твердотельный накопитель (SSD) или подобный. После система хранения использует новую энергонезависимую память (NVM), хотя первоначальный способ может быть применен к новой NVM, так как метаданные занимают относительно большое пространство хранения, и информация, такая как место хранения, соответствующее каждому блоку данных файла, должна быть записана в метаданных, нагрузка управления является относительно тяжелой, эффективность доступа к узлу хранения хостом посредством получения метаданных также является низкой, и следовательно, эффективность управления файлами является относительно низкой.
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
[0004] Варианты осуществления настоящего раскрытия обеспечивают способ управления файлами, распределенную систему хранения и узел управления, и могут повысить эффективность управления файлами.
[0005] Согласно первому аспекту, обеспечен способ управления файлами, где способ применяется к распределенной системе хранения, причем распределенная система хранения включает в себя узел управления и многочисленные узлы хранения, и при этом способ включает в себя:
прием, посредством узла управления, запроса создания файла, отправленного хостом, где запрос создания файла используется, чтобы запросить создание файла в распределенной системе хранения;
выделение файлу, посредством узла управления, первого виртуального пространства из глобального виртуального адресного пространства распределенной системы хранения, согласно запросу создания файла, где локальное виртуальное адресное пространство каждого узла хранения в распределенной системе хранения соответствует части глобального виртуального адресного пространства;
запись, посредством узла управления, метаданных файла, где метаданные файла включают в себя информацию о первом виртуальном пространстве, выделенном файлу, и информация о первом виртуальном пространстве используется для указания на первое локальное виртуальное адресное пространство первого узла хранения, который используется для хранения файла; и
отправку хосту, посредством узла управления, ответа об успешном создании файла, где ответ об успешном создании файла несет информацию о первом виртуальном пространстве.
[0006] Со ссылкой на первый аспект, в первом способе возможной реализации, количество адресных битов глобального виртуального адресного пространства больше, чем количество адресных битов локального виртуального адресного пространства узла хранения в распределенной системе хранения.
[0007] Со ссылкой на первый аспект или первый способ возможной реализации по первому аспекту, во втором способе возможной реализации, количество адресных битов глобального виртуального адресного пространства в два раза больше количества адресных битов локального виртуального адресного пространства узла хранения в распределенной системе хранения, где N старших битов адреса глобального виртуального адресного пространства используются для указания на узел хранения, N младших битов адреса глобального виртуального адресного пространства используются для указания на локальное виртуальное адресное пространство узла хранения, и N является количеством адресных битов локального виртуального адресного пространства узла хранения.
[0008] Со ссылкой на первый аспект, или первый или второй способ возможной реализации по первому аспекту, в третьем способе возможной реализации, информация о первом виртуальном пространстве включает в себя начальный адрес и размер файла в глобальном виртуальном адресном пространстве.
[0009] Со ссылкой на любое одно из первого аспекта, или с первого по третий способы возможной реализации по первому аспекту, в четвертом способе возможной реализации, глобальное виртуальное адресное пространство включает в себя многочисленные области, и разные области среди многочисленных областей имеют разные гранулярности выделения пространства; и
выделение файлу, посредством узла управления, первого виртуального пространства из глобального виртуального адресного пространства распределенной системы хранения согласно запросу создания файла, включает в себя:
выделение файлу, посредством узла управления, первого виртуального пространства из первой области в глобальном виртуальном адресном пространстве распределенной системы хранения согласно запросу создания файла и гранулярности выделения пространства первой области, где первая область является областью, чья гранулярность выделения пространства является наименьшей в областях, которые могут быть выделены в текущий момент.
[0010] Со ссылкой на четвертый способ возможной реализации по первому аспекту, в пятом способе возможной реализации, способ дополнительно включает в себя:
прием, посредством узла управления, запроса расширения файлового пространства, отправленного хостом, где запрос расширения файлового пространства используется, чтобы запросить расширение пространства файла;
выделение файлу, посредством узла управления, второго виртуального пространства из второй области в глобальном виртуальном адресном пространстве согласно запросу расширения файлового пространства и гранулярности выделения пространства второй области, где гранулярность выделения пространства второй области больше, чем гранулярность выделения пространства первой области;
запись, посредством узла управления, метаданных файла, где обновленные метаданные файла включают в себя информацию о втором виртуальном пространстве, выделенном файлу, и информация о втором виртуальном пространстве используется для указания на второе локальное виртуальное адресное пространство второго узла хранения, который используется для хранения файла; и
отправку хосту ответа расширения файлового пространства, где ответ расширения файлового пространства несет информацию о втором виртуальном пространстве.
[0011] Со ссылкой на любое одно из первого аспекта или с первого по пятый способы возможной реализации по первому аспекту, в шестом способе возможной реализации, способ дополнительно включает в себя:
удаление, посредством узла управления, метаданных файла и возвращение первого виртуального пространства, которое выделено из глобального виртуального адресного пространства, файлу;
определение, посредством узла управления и согласно предварительно заданному соответствию между глобальным виртуальным адресным пространством и локальным виртуальным адресным пространством, первого узла хранения, который используется для хранения файла; и
отправку, посредством узла управления, сообщения возвращения пространства первому узлу хранения, который используется для хранения файла, где сообщение возвращения пространства используется, чтобы дать команду первому узлу хранения, который используется для хранения файла, вернуть первое локальное виртуальное адресное пространство и первое локальное физическое пространство хранения, которые соответствуют файлу.
[0012] Согласно второму аспекту, обеспечена распределенная система хранения, включающая в себя узел управления и многочисленные узлы хранения, где
локальное виртуальное адресное пространство каждого из многочисленных узлов хранения соответствует части глобального виртуального адресного пространства распределенной системы хранения; и
узел управления выполнен с возможностью: приема запроса создания файла, отправленного хостом, где запрос создания файла используется, чтобы запросить создание файла в распределенной системе хранения; выделения файлу первого виртуального пространства из глобального виртуального адресного пространства согласно запросу создания файла; записи метаданных файла, где метаданные файла включают в себя информацию о первом виртуальном пространстве, выделенном файлу, и информация о первом виртуальном пространстве используется для указания на первое локальное виртуальное адресное пространство первого узла хранения, который используется для хранения файла; и отправки хосту ответа об успешном создании файла, где ответ об успешном создании файла несет информацию о первом виртуальном пространстве.
[0013] Со ссылкой на второй аспект, в первом способе возможной реализации, количество адресных битов глобального виртуального адресного пространства больше, чем количество адресных битов локального виртуального адресного пространства узла хранения в распределенной системе хранения.
[0014] Со ссылкой на второй аспект или первый способ возможной реализации по второму аспекту, во втором способе возможной реализации, количество адресных битов глобального виртуального адресного пространства в два раза больше количества адресных битов локального виртуального адресного пространства узла хранения в распределенной системе хранения, где N старших битов адреса глобального виртуального адресного пространства используются для указания на узел хранения, N младших битов адреса глобального виртуального адресного пространства используются для указания на локальное виртуальное адресное пространство узла хранения, и N является количеством адресных битов локального виртуального адресного пространства узла хранения.
[0015] Со ссылкой на второй аспект, или первый или второй способ возможной реализации по второму аспекту, в третьем способе возможной реализации, информация о первом виртуальном пространстве включает в себя начальный адрес и размер файла в глобальном виртуальном адресном пространстве.
[0016] Со ссылкой на любое одно из второго аспекта, или с первого по третий способы возможной реализации по второму аспекту, в четвертом способе возможной реализации, глобальное виртуальное адресное пространство включает в себя многочисленные области, и разные области среди многочисленных областей имеют разные гранулярности выделения пространства; и
узел управления специально выполнен с возможностью выделения файлу, первого виртуального пространства из первой области в глобальном виртуальном адресном пространстве распределенной системы хранения согласно запросу создания файла и гранулярности выделения пространства первой области, где первая область является областью, чья гранулярность выделения пространства является наименьшей в областях, которые могут быть выделены в текущий момент.
[0017] Со ссылкой на четвертый способ возможной реализации по второму аспекту, в пятом способе возможной реализации, узел управления дополнительно выполнен с возможностью: приема запроса расширения файлового пространства, отправленного хостом, где запрос расширения файлового пространства используется, чтобы запросить расширение пространства файла; выделения файлу второго виртуального пространства из второй области в глобальном виртуальном адресном пространстве согласно запросу расширения файлового пространства и гранулярности выделения пространства второй области, где гранулярность выделения пространства второй области больше, чем гранулярность выделения пространства первой области; обновления метаданных файла, где обновленные метаданные файла включают в себя информацию о втором виртуальном пространстве, выделенном файлу, и информация о втором виртуальном пространстве используется для указания на второе локальное виртуальное адресное пространство второго узла хранения, который используется для хранения файла; и отправки хосту ответа расширения файлового пространства, где ответ расширения файлового пространства несет информацию о втором виртуальном пространстве.
[0018] Со ссылкой на любое одно из второго аспекта или с первого по пятый способы возможной реализации по второму аспекту, в шестом способе возможной реализации, узел управления дополнительно выполнен с возможностью: удаления метаданных файла и возвращения первого виртуального пространства, которое выделено из глобального виртуального адресного пространства, файлу; определения, согласно предварительно заданному соответствию между глобальным виртуальным адресным пространством и локальным виртуальным адресным пространством, первого узла хранения, который используется для хранения файла; и отправки сообщения возвращения пространства первому узлу хранения, который используется для хранения файла, где сообщение возвращения пространства используется, чтобы дать команду первому узлу хранения, который используется для хранения файла, вернуть первое локальное виртуальное адресное пространство и первое локальное физическое пространство хранения, которые соответствуют файлу; где
первый узел хранения, который используется для хранения файла, выполнен с возможностью возвращения, согласно сообщению возвращения пространства, локального виртуального адресного пространства и локального физического пространства хранения, которые соответствуют файлу.
[0019] Согласно третьему аспекту, обеспечен узел управления, включающий в себя:
блок приема, выполненный с возможностью приема запроса создания файла, отправленного хостом, где запрос создания файла используется, чтобы запросить создание файла в распределенной системе хранения;
блок управления, выполненный с возможностью: выделения файлу первого виртуального пространства из глобального виртуального адресного пространства распределенной системы хранения, согласно запросу создания файла, где локальное виртуальное адресное пространство каждого узла хранения в распределенной системе хранения соответствует части глобального виртуального адресного пространства; и записи метаданных файла, где метаданные файла включают в себя информацию о первом виртуальном пространстве, выделенном файлу, и информация о первом виртуальном пространстве используется для указания на локальное виртуальное адресное пространство узла хранения, который используется для хранения файла; и
блок отправки, выполненный с возможностью отправки хосту ответа об успешном создании файла, где ответ об успешном создании файла несет информацию о первом виртуальном пространстве.
[0020] Со ссылкой на третий аспект, в первом способе возможной реализации, количество адресных битов глобального виртуального адресного пространства больше, чем количество адресных битов локального виртуального адресного пространства узла хранения в распределенной системе хранения.
[0021] Со ссылкой на третий аспект или первый способ возможной реализации по третьему аспекту, во втором способе возможной реализации, количество адресных битов глобального виртуального адресного пространства в два раза больше количества адресных битов локального виртуального адресного пространства узла хранения в распределенной системе хранения, где N старших битов адреса глобального виртуального адресного пространства используются для указания на узел хранения, N младших битов адреса глобального виртуального адресного пространства используются для указания на локальное виртуальное адресное пространство узла хранения, и N является количеством адресных битов локального виртуального адресного пространства узла хранения.
[0022] Со ссылкой на третий аспект, или первый или второй способ возможной реализации по третьему аспекту, в третьем способе возможной реализации, информация о первом виртуальном пространстве включает в себя начальный адрес и размер файла в глобальном виртуальном адресном пространстве.
[0023] Со ссылкой на любое одно из третьего аспекта, или с первого по третий способы возможной реализации по третьему аспекту, в четвертом способе возможной реализации, глобальное виртуальное адресное пространство включает в себя многочисленные области, и разные области среди многочисленных областей имеют разные гранулярности выделения пространства; и
блок управления специально выполнен с возможностью выделения файлу, первого виртуального пространства из первой области в глобальном виртуальном адресном пространстве распределенной системы хранения согласно запросу создания файла и гранулярности выделения пространства первой области, где первая область является областью, чья гранулярность выделения пространства является наименьшей в областях, которые могут быть выделены в текущий момент.
[0024] Со ссылкой на четвертый способ возможной реализации по третьему аспекту, в пятом способе возможной реализации, блок приема дополнительно выполнен с возможностью приема запроса расширения файлового пространства, отправленного хостом, где запрос расширения файлового пространства используется, чтобы запросить расширение пространства файла;
блок управления дополнительно выполнен с возможностью: выделения файлу второго виртуального пространства из второй области в глобальном виртуальном адресном пространстве согласно запросу расширения файлового пространства и гранулярности выделения пространства второй области, где гранулярность выделения пространства второй области больше, чем гранулярность выделения пространства первой области; и обновления метаданных файла, где обновленные метаданные файла включают в себя информацию о втором виртуальном пространстве, выделенном файлу; и
блок отправки дополнительно выполнен с возможностью отправки хосту ответа расширения файлового пространства, где ответ расширения файлового пространства несет информацию о втором виртуальном пространстве.
[0025] Со ссылкой на любое одно из третьего аспекта или с первого по пятый способы возможной реализации по третьему аспекту, в шестом способе возможной реализации, блок управления дополнительно выполнен с возможностью: удаления метаданных файла и возвращения пространства, которое выделено из глобального виртуального адресного пространства, файлу; и определения, согласно предварительно заданному соответствию между глобальным виртуальным адресным пространством и локальным виртуальным адресным пространством, узла хранения, который используется для хранения файла; и
блок отправки дополнительно выполнен с возможностью отправки сообщения возвращения пространства узлу хранения, который используется для хранения файла, где сообщение возвращения пространства используется, чтобы дать команду узлу хранения, который используется для хранения файла, вернуть локальное виртуальное адресное пространство и локальное физическое пространство хранения, которые соответствуют файлу.
[0026] Согласно четвертому аспекту, вариант осуществления настоящего раскрытия предусматривает компьютерный программный продукт, где компьютерный программный продукт включает в себя компьютерно-читаемый носитель информации, который хранит программный код, и команда, включенная в программный код, используется для выполнения способа, описанного в вышеприведенном первом аспекте.
[0027] На основе вышеприведенных технических решений, согласно способу управления файлами, распределенной системе хранения и узлу управления в вариантах осуществления настоящего раскрытия, пространство выделяется файлу из глобального виртуального адресного пространства распределенной системы хранения, и файлом можно управлять на основе выделенного глобального виртуального адресного пространства, без необходимости обработки сложной информации о месте хранения блока данных файла, так что эффективность управления файлами может быть повышена.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
[0028] Чтобы более ясно описать технологические решения в вариантах осуществления настоящего раскрытия, далее кратко описаны прилагаемые чертежи, требуемые для описания вариантов осуществления настоящего раскрытия. Очевидно, прилагаемые чертежи в нижеследующем описании показывают лишь некоторые варианты осуществления настоящего раскрытия.
[0029] Фиг. 1 является принципиальной схемой сценария применения согласно варианту осуществления настоящего раскрытия;
[0030] Фиг. 2 является принципиальной схемой последовательности операций способа управления файлами согласно варианту осуществления настоящего раскрытия;
[0031] Фиг. 3 является принципиальной схемой примерного глобального виртуального адресного пространства согласно варианту осуществления настоящего раскрытия;
[0032] Фиг. 4 является принципиальной схемой области в глобальном виртуальном адресном пространстве согласно варианту осуществления настоящего раскрытия;
[0033] Фиг. 5 является принципиальной схемой последовательности операций способа управления файлами согласно другому варианту осуществления настоящего раскрытия;
[0034] Фиг. 6 является принципиальной схемой последовательности операций способа управления файлами согласно еще одному варианту осуществления настоящего раскрытия;
[0035] Фиг. 7 является принципиальной схемой последовательности операций способа управления файлами согласно еще одному варианту осуществления настоящего раскрытия;
[0036] Фиг. 8 является принципиальной блок-схемой распределенной системы хранения согласно варианту осуществления настоящего раскрытия;
[0037] Фиг. 9 является принципиальной блок-схемой узла управления согласно варианту осуществления настоящего раскрытия; и
[0038] Фиг. 10 является принципиальной блок-схемой узла управления согласно другому варианту осуществления настоящего раскрытия.
ОПИСАНИЕ ВАРИАНТОВ ОСУЩЕСТВЛЕНИЯ
[0039] В дальнейшем ясно описываются технические решения в вариантах осуществления настоящего раскрытия со ссылкой на прилагаемые чертежи в вариантах осуществления настоящего раскрытия. Очевидно, описанные варианты осуществления являются некоторыми, а не всеми вариантами осуществления настоящего раскрытия.
[0040] Следует понимать, что технические решения вариантов осуществления настоящего раскрытия могут быть применены к различным системам хранения, и в частности, к распределенной системе хранения, которая основывается на энергонезависимой памяти.
[0041] Также следует понимать, что в вариантах осуществления настоящего раскрытия, термин "виртуальное адресное пространство" может также быть выражено как "виртуальное пространство", то есть "виртуальное адресное пространство" и "виртуальное пространство" ссылаются друг на друга.
[0042] Фиг. 1 является принципиальной схемой сценария применения согласно варианту осуществления настоящего раскрытия. На Фиг. 1, хост 130, узел 120 хранения и узел 110 управления метаданными взаимно соединены с использованием сети. Узел 120 хранения и узел 110 управления метаданными составляют распределенную систему хранения.
[0043] Хост 130 может осуществить доступ к файлу в распределенной системе хранения. Хост 130 может быть компьютером или может быть другим пользовательским оборудованием, и хост 130 может осуществлять связь с распределенной системой хранения с использованием сети. Хост 130 может включать в себя любое вычислительное устройство, известное в предшествующем уровне техники, такое как сервер или настольный компьютер. На хосте 130 установлены операционная система и другая прикладная программа. Могут быть многочисленные хосты 130.
[0044] Узел 120 хранения используется для хранения данных файлов. Узел 120 хранения может включать в себя по меньшей мере одну память. Например, память может включать в себя новую энергонезависимую память NVM, которая имеет возможность адресации и осуществления доступа к нему посредством байта, как например, память на основе фазового перехода (PCM), резистивная оперативная память (ReRAM), или магниторезистивная оперативная память (MRAM); или может включать в себя другую память. Фиг. Фиг. 1 использует только NVM в качестве примера, котором узел 120 хранения управляет физическим пространством хранения, которое включает в себя NVM и подобную на узле 120 хранения.
[0045] Узел 110 управления метаданными отвечает за управление глобальным виртуальным адресным пространством, и обеспечивает функцию, такую как запрос метаданных файла.
[0046] Узел 110 управления метаданными и узел 120 хранения могут быть объединены вместе, то есть, один узел может иметь функции как узла управления метаданными, так и узла хранения.
[0047] В вариантах осуществления настоящего раскрытия, узлом управления может быть узел управления метаданными (такой как узел 110 управления метаданными на Фиг. 1), или может быть узел, который имеет функции как узла управления метаданными, так и узла хранения. Для простоты описания, нижеследующее использует для описания в качестве примера узел управления.
[0048] Фиг. 2 показывает принципиальную схему последовательности операций способа 200 управления файлами согласно варианту осуществления настоящего раскрытия. Способ 200 применяется к распределенной системе хранения, и распределенная система хранения включает в себя узел управления и многочисленные узлы хранения. Способ 200 выполняется посредством узла управления.
[0049] S210. Узел управления принимает запрос создания файла, отправленного хостом, где запрос создания файла используется, чтобы запросить создание файла в распределенной системе хранения.
[0050] S220. Узел управления выделяет файлу первое виртуальное пространство из глобального виртуального адресного пространства распределенной системы хранения согласно запросу создания файла, где, в этом варианте осуществления настоящего раскрытия, локальное виртуальное адресное пространство каждого узла хранения в распределенной системе хранения соответствует части глобального виртуального адресного пространства.
[0051] В этом варианте осуществления настоящего раскрытия, файлом в распределенной системе хранения управляют на основе глобального виртуального адресного пространства. Глобальное виртуальное адресное пространство является виртуальным пространством распределенной системы хранения. Локальное виртуальное адресное пространство каждого узла хранения в распределенной системе хранения соответствует части глобального виртуального адресного пространства.
[0052] Количество адресных битов локального виртуального адресного пространства является количеством битов операционной системы (OS). Например, для 64-битной OS, количество адресных битов локального виртуального адресного пространства составляет 64 бита, и размер локального виртуального адресного пространства составляет 2^64 байтов (^ представляет степень). Количество адресных битов глобального виртуального адресного пространства может составлять 128 битов, и размер глобального виртуального адресного пространства составляет 2^128 байтов. В этом случае, локальное виртуальное адресное пространство каждого узла хранения может соответствовать части глобального виртуального адресного пространства.
[0053] В одном случае, соответствие (которое может также назваться устанавливающей соответственность взаимосвязью) между глобальным виртуальным адресным пространством и локальным виртуальным адресным пространством может быть установлено заранее. Например, соответствие между глобальным виртуальным адресным пространством и локальным виртуальным адресным пространством конфигурируется заранее на узле управления. После того, как узел управления выделяет пространство файлу, выделенное глобальное виртуальное адресное пространство может соответствовать локальному виртуальному адресному пространству узла хранения согласно соответствию, установленному заранее. В другом случае, соответствие (которое может также назваться устанавливающей соответственность взаимосвязью) между глобальным виртуальным адресным пространством и локальным виртуальным адресным пространством может быть установлено, когда пространство выделяется файлу. Например, при выделении пространства файлу, узел управления может установить соответствие между выделенным глобальным виртуальным адресным пространством и локальным виртуальным адресным пространством, и сохранить соответствие между выделенным глобальным виртуальным адресным пространством и локальным виртуальным адресным пространством. Выделенное глобальное виртуальное адресное пространство может соответствовать локальному виртуальному адресному пространству узла хранения согласно соответствию. В этом варианте осуществления настоящего раскрытия, то, как следует устанавливать соответствие между глобальным виртуальным адресным пространством и локальным виртуальным адресным пространством, не ограничивается.
[0054] При приеме запроса создания файла, отправленного хостом, узел управления выделяет файлу непрерывный сегмент пространства (представленный как первое виртуальное пространство) из глобального виртуального адресного пространства распределенной системы хранения. На основе соответствия между глобальным виртуальным адресным пространством и локальным виртуальным адресным пространством, может быть установлена соответственность первого виртуального пространства локальному виртуальному адресному пространству узла хранения.
[0055] S230. Узел управления записывает метаданные файла, где метаданные файла включают в себя информацию о первом виртуальном пространстве, выделенном файлу, и информация о первом виртуальном пространстве используется для указания на локальное виртуальное адресное пространство узла хранения, который используется для хранения файла.
[0056] После выделения файлу первого виртуального пространства из глобального виртуального адресного пространства, узел управления записывает метаданные файла, где метаданные файла включают в себя информацию о первом виртуальном пространстве, выделенном файлу.
[0057] Опционально, информация о первом виртуальном пространстве может включать в себя начальный адрес и размер файла в глобальном виртуальном адресном пространстве. Информация о первом виртуальном пространстве используется для указания на локальное виртуальное адресное пространство узла хранения, который используется для хранения файла. То есть, на основе соответствия между глобальным виртуальным адресным пространством и локальным виртуальным адресным пространством, устанавливается соответственность первого виртуального пространства, выделенного файлу, локальному виртуальному адресному пространству узла хранения, который используется для хранения файла, и дополнительно устанавливается соответственность локальному физическому пространству хранения с использованием локального виртуального адресного пространства.
[0058] S240. Узел управления отправляет хосту ответ об успешном создании файла, где ответ об успешном создании файла несет информацию о первом виртуальном пространстве.
[0059] Ответ об успешном создании файла, отправленный хосту узлом управления, несет информацию о первом виртуальном пространстве. В этом случае, хост может осуществить доступ к файлу согласно информации о первом виртуальном пространстве. Например, хост изменяет запрос для осуществления доступа к файлу на запрос для осуществления доступа к глобальному виртуальному адресному пространству, и осуществляет доступ к первому виртуальному пространству, тем самым достигая цели осуществления доступа к файлу. В дополнение, узел управления может управлять метаданными файла и файлом на основе глобального виртуального адресного пространства, без необходимости обработки сложной информации о месте хранения блока данных файла, так что эффективность управления файлами может быть повышена.
[0060] Вследствие этого, согласно способу управления файлами в этом варианте осуществления настоящего раскрытия, пространство выделяется файлу из глобального виртуального адресного пространства распределенной системы хранения, и файлом можно управлять на основе выделенного глобального виртуального адресного пространства, без необходимости обработки сложной информации о месте хранения блока данных файла, так что эффективность управления файлами может быть повышена.
[0061] В этом варианте осуществления настоящего раскрытия, опционально, локальное виртуальное адресное пространство узла хранения может быть сегментом неиспользованного пространства в виртуальном адресном пространстве OS. Например, размер виртуального адресного пространства 64-битной OS составляет 2, возведенная в степень 64. Виртуальное адресное пространство 64-битной OS включает в себя обращенное виртуальное адресное пространство в дополнение к виртуальному адресному пространству процесса в пользовательском режиме и виртуальному адресному пространству ядра. Локальное виртуальное адресное пространство может быть обращенным виртуальным адресным пространством OS. В качестве альтернативы, виртуальное адресное пространство операционной системы может быть повторно поделено согласно необходимости, и сегмент виртуального адресного пространства получают посредством деления и используют как локальное виртуальное адресное пространство для хранения данных посредством узла хранения.
[0062] В этом варианте осуществления настоящего раскрытия, глобальное виртуальное адресное пространство используется для управления совместно всеми файлами в распределенной системе хранения. Глобальное виртуальное адресное пространство не меньше, чем локальное виртуальное адресное пространство для всех узлов хранения в распределенной системе хранения.
[0063] В варианте осуществления настоящего раскрытия, опционально, количество адресных битов глобального виртуального адресного пространства больше, чем количество адресных битов локального виртуального адресного пространства узла хранения в распределенной системе хранения. Когда количество адресных битов локального виртуального адресного пространства равняется количеству битов OS, количество адресных битов глобального виртуального адресного пространства больше, чем количество битов OS. В этом случае, некоторые адресные биты глобального виртуального адресного пространства могут быть использованы для указания на узел хранения, и другие адресные биты могут быть использованы для указания на локальное виртуальное адресное пространство узла хранения. Конкретно, если количество адресных битов глобального виртуального адресного пространства равно M, и количество адресных битов локального виртуального адресного пространства узла хранения равно N, M-N старших битов адреса глобального виртуального адресного пространства могут быть использованы для указания на узел хранения. Например, M-N старших битов могут соответствовать идентификатору и/или информации маршрутизации узла хранения. N младших битов адреса глобального виртуального адресного пространства используются для указания на локальное виртуальное адресное пространство узла хранения. Например, N младших битов могут