RU2665272C1 - Способ и устройство для восстановления дедуплицированных данных - Google Patents

Способ и устройство для восстановления дедуплицированных данных Download PDF

Info

Publication number
RU2665272C1
RU2665272C1 RU2016124319A RU2016124319A RU2665272C1 RU 2665272 C1 RU2665272 C1 RU 2665272C1 RU 2016124319 A RU2016124319 A RU 2016124319A RU 2016124319 A RU2016124319 A RU 2016124319A RU 2665272 C1 RU2665272 C1 RU 2665272C1
Authority
RU
Russia
Prior art keywords
data block
accesses
data
limit
file
Prior art date
Application number
RU2016124319A
Other languages
English (en)
Other versions
RU2016124319A (ru
Inventor
Фей Куи
Джиайя Ченг
Нинг Ченг
Original Assignee
Зте Корпарейшн
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Зте Корпарейшн filed Critical Зте Корпарейшн
Publication of RU2016124319A publication Critical patent/RU2016124319A/ru
Application granted granted Critical
Publication of RU2665272C1 publication Critical patent/RU2665272C1/ru

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/174Redundancy elimination performed by the file system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/13File access structures, e.g. distributed indices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/176Support for shared access to files; File sharing support
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Computing Systems (AREA)

Abstract

Изобретение относится к области вычислительной техники. Техническим результатом является восстановление данных. Раскрыт способ восстановления данных, содержащий: получение первого числа количества доступов к файлу, соответствующему первому блоку данных, при этом первое число количества доступов представляет собой число посетителей, в текущее время и одновременно получающих доступ к файлу; сравнение первого числа количества доступов с первым пределом и вторым пределом соответственно, при этом первый предел меньше, чем второй предел; и восстановление первого блока данных в первом носителе данных или втором носителе данных, в соответствии с результатами сравнения, при этом первый блок данных восстанавливается в первом носителе данных, когда первое число количества доступов больше, чем первый предел, и меньше, чем второй предел, и первый блок данных восстанавливается во втором носителе данных, когда первое число количества доступов больше, чем второй предел; причем перед получением первого числа количества доступов к файлу, соответствующему первому блоку данных, содержит: получение второго числа количества доступов к первому блоку данных, при этом второе число количества доступов представляет собой количество посетителей, которые в текущее время и одновременно получают доступ к первому блоку данных; и когда второе число количества доступов больше, чем третий предел, поиск файла, соответствующего первому блоку данных. 2 н. и 6 з.п. ф-лы, 8 ил.

Description

Область техники
Настоящее изобретение относится к области средств связи и, в частности, к способу и устройству восстановления дедуплицированных данных.
Уровень техники
В настоящее время имеющиеся технологии хранения позволяют только дедуплицировать на самом сервере при удалении дуплицированных данных, но не могут использовать эффективную сеть для удаления дуплицированных данных во всей системе; помимо этого, когда число доступов к базе данных, которая была дедуплицирована, становится массовым, проблема ухудшения качества доступа решается просто за счет возврата данных, что все равно не может решить упомянутую проблему.
А при решении по восстановлению дедуплицированных данных часто возникает чрезмерное число доступов к одному и тому же блоку данных, что приводит к снижению эффективности доступов и влияет на эффективность работы распределенной файловой системы.
При рассмотрении упомянутой проблемы на известном уровне техники не было представлено эффективного решения упомянутой проблемы.
Раскрытие изобретения
При рассмотрении проблемы на известном уровне техники, имеется чрезмерное число доступов к одному и тому же блоку данных, и настоящее раскрытие сущности изобретения предлагает способ и устройство восстановления дедуплицированных данных, чтобы по меньшей мере решить упомянутую проблему.
В соответствии с вариантом осуществления настоящего изобретения, предлагается способ восстановления дедуплицированных данных, включающий в себя: получение первого числа количества доступов к первому блоку данных, при этом первое число количества доступов представляет собой число посетителей, в текущее время и одновременно получающих доступ к файлу; первое число количества доступов сравнивается с первым пределом и вторым пределом соответственно, при этом первый предел меньше второго; и первый блок данных восстанавливается в первом носителе данных и втором носителе данных в соответствии с результатами сравнения, при этом первый блок данных восстанавливается в первом носителе данных, когда первое число количества доступов больше первого предела и меньше второго предела, и первый блок данных восстанавливается во втором носителе данных, когда первое число количества доступов больше второго предела; второй носитель данных имеет более высокую эффективность доступа, чем у первого носителя данных.
Перед тем, как первое число количества доступов к соответствующему файлов получено, способ включает в себя: получение второго числа количества доступов, при этом второе число количества доступов представляет собой число посетителей в текущий момент и одновременно получающих доступ к первому блоку данных; и когда второе число количества доступов больше, чем третий предел, обнаруживается файл, соответствующий первому блоку данных.
Перед тем, как второе число количества доступов к первому блоку данных получено, способ включает в себя: получение описания признаков первого блока данных, при этом описание признаков используется для представления содержимого, которое есть только в первом блоке данных; и текущая распределенная файловая система и другие распределенные файловые системы, связанные с текущей распределенной файловой системой, информируются об описании признаков, при этом описание признаков используется для выполнения дедуплицирующей обработки в текущей распределенной файловой системе и других распределенных файловых системах.
Информирование текущей распределенной файловой системы об описании признаков включает в себя: информирование узлового сервера об описании признаков.
Восстановление первого блока данных в первом носителе данных или втором носителе данных включает в себя: первый блок данных дублируется для получения второго блока данных; и второй блок данных дублируется в первом носителе данных или втором носителе данных.
После того, как второй блок данных продублирован в первом носителе данных или втором носителе данных, способ далее включает в себя: первое число количества доступов вычитается из второго числа количества доступов для получения актуального числа количества доступов к первому блоку данных, и 1 вычитается из значения счетчика механизма ссылок первого блока данных.
В соответствии с другим вариантом осуществления изобретения, предлагается устройство, восстанавливающее дедуплицированные данные, которое включает в себя: первый получающий модуль, выполненный с возможностью получения первого числа количества доступов к файлу, соответствующему первому блоку данных, при этом первое число количества доступов представляет собой число посетителей, в текущее время и одновременно получающих доступ к файлу; сравнивающий модуль, выполненный с возможностью сравнения первого числа количества доступов с первым пределом и вторым пределом соответственно, при этом первый предел меньше, чем второй предел; и восстанавливающий модуль, выполненный с возможностью восстановления первого блока данных в первом носителе данных или втором носителе данных в соответствии с результатами сравнения, при этом восстанавливающий модуль восстанавливает первый блок данных в первом носителе данных, когда первое число количества доступов больше, чем первый предел, и меньше, чем второй предел, и восстанавливающий модуль восстанавливает первый блок данных во втором носителе данных, когда первое число количества доступов больше, чем второй предел; второй носитель данных имеет более высокую эффективность доступа, чем у первого носителя данных.
Устройство также включает в себя: второй получающий модуль, выполненный с возможностью получения второго числа количества доступов к первому блоку данных, при этом второе число количества доступов представляет собой число посетителей, в текущее время и одновременно получающих доступ к первому блоку данных; и модуль поиска, выполненный с возможностью, когда второе число количества доступов больше, чем третий предел, поиска файла, соответствующего первому блоку данных.
Устройство также включает: третий получающий модуль, выполненный с возможностью получения описания признаков первого блока данных, при этом описание признаков используется для представления содержимого, которое есть только в первом блоке данных; информирующий модуль, выполненный с возможностью информировать текущую распределенную файловую систему и другие распределенные файловые системы, связанные с текущей распределенной файловой системой, об описании признаков, при этом описание признаков используется для выполнения дедуплицирующей обработки в текущей распределенной файловой системе и других распределенных файловых системах.
Устройство также включает: считающий модуль, выполненный с возможностью, после дупликации второго блока данных в первом носителе данных или втором носителе данных, вычитания первого числа количества доступов из второго числа количества доступов для получения актуального числа количества доступов к первому блоку данных, и вычитания 1 из значения счетчика механизма ссылок первого блока данных.
С применением технических средств сравнения числа количества доступов к файлу, соответствующего первому блоку данных, с первым пределом и вторым пределом соответственно, и, в соответствии с результатами сравнения, определения восстанавливать первый блок данных в первом носителе данных или втором носителе данных, настоящее изобретение решает проблему известного уровня техники, при котором имеется чрезмерное число доступов к одному и тому же блоку данных, таким образом повышая эффективность доступа к файлам.
Краткое описание чертежей
Прилагаемые чертежи, описываемые здесь, используются для обеспечения более глубокого понимания раскрытия сущности настоящего изобретения и являются частью заявки; схематические варианты осуществления изобретения и описание таковых используются для иллюстрирования настоящего раскрытия сущности изобретения и не предназначены для формирования неверного ограничения раскрытия настоящего изобретения. Прилагаемые чертежи включают в себя:
Фиг. 1 демонстрирует схему способа восстановления дедуплицированных данных в соответствии с вариантом осуществления настоящего изобретения;
Фиг. 2 демонстрирует принципиальную блочную схему устройства восстановления дедуплицированных данных в соответствии с вариантом осуществления настоящего изобретения;
Фиг. 3 демонстрирует другую принципиальную блочную схему устройства восстановления дедуплицированных данных в соответствии с вариантом осуществления настоящего изобретения;
Фиг. 4 демонстрирует принципиальную блочную схему распределенной файловой системы в соответствии с предпочтительным вариантом осуществления настоящего изобретения;
Фиг. 5 демонстрирует схему дедупликации блоков данных в соответствии с предпочтительным вариантом осуществления настоящего изобретения;
Фиг. 6 демонстрирует схему восстановления блоков данных в соответствии с предпочтительным вариантом осуществления настоящего изобретения;
Фиг. 7 демонстрирует схему способа восстановления дедуплицированных данных в соответствии с предпочтительным вариантом осуществления настоящего изобретения;
Фиг. 8 демонстрирует другую схему способа восстановления дедуплицированных данных в соответствии с предпочтительным вариантом осуществления настоящего изобретения.
Подробное описание вариантов осуществления изобретения
Настоящее раскрытие сущности изобретения будет детально описано ниже со ссылкой на прилагаемые чертежи и варианты осуществления изобретения. Обратите внимание, что варианты осуществления изобретения и признаки вариантов осуществления изобретения могут комбинироваться друг с другом при условии отсутствия конфликтов.
Следующие варианты осуществления изобретения могут применяться для компьютеров, например, Персонального Компьютера (ПК), и могут также применяться для мобильных терминалов, в которых в текущее время используется интеллектуальная операционная система; но варианты осуществления изобретения не ограничиваются применением к этим устройствам. Нет специальных требования к операционной системе на компьютере или в мобильном терминале, поскольку операционная система поддерживает запуск приложений.
Например, следующие варианты осуществления изобретения могут применяться к операционной системе Windows.
Фиг. 1 демонстрирует схему способа восстановления дедуплицированных данных в соответствии с вариантом осуществления настоящего изобретения. Как показано на Фиг. 1, способ может включать следующие этапы.
Этап 102: получается первое число количества доступов к файлу, соответствующему первому блоку данных, при этом первое число количества доступов представляет собой число посетителей, в текущее время и одновременно получающих доступ к файлу.
В настоящем варианте осуществления изобретения, для дальнейшего повышения эффективности доступа к блоку данных, перед этапом 102 также необходимо учесть количество доступов к первому блоку данных; а именно, получается второе число количества доступов к первому блоку данных, при этом второе число количества доступов представляет собой число посетителей, в текущее время и одновременно получающих доступ к первому блоку данных; когда второе число количества доступов больше, чем третий предел, обнаруживается файл, соответствующий первому блоку данных; и получается первое число количества доступа к файлу.
Для внедрения кросс-системной и кросс-серверной дедуплицирующей обработки также необходимо выполнить следующую обработку: получается описание признаков первого блока данных, при этом описание признаков используется для представления содержимого, которое есть только в первом блоке данных; и текущая распределенная файловая система и другие распределенные файловые системы, связанные с текущей распределенной файловой системой, информируются об описании признаков, при этом описание признаков используется для выполнения дедуплицирующей обработки в другие распределенные файловые системы. При этом, перед выполнением кросс-серверной дедуплицирующей обработки, необходимо проинформировать узловой сервер в текущей распределенной файловой системе об описании признаков.
Этап 104: первое число количества доступов сравнивается с первым пределом и вторым пределом соответственно, при этом первый предел меньше, чем второй предел.
Этап 106: первый блок данных восстанавливается в первом носителе данных или втором носителе данных в соответствии с результатами сравнения, при этом первый блок данных восстанавливается в первом носителе данных, когда первое число количества доступов больше, чем первый предел, и меньше, чем второй предел, и первый блок данных восстанавливается во втором носителе данных, когда первое число количества доступов больше, чем второй предел; второй носитель данных имеет более высокую эффективность доступа, чем у первого носителя данных.
Восстановление первого блока данных в первом носителе данных или втором носителе данных может выглядеть как следующая обработка: первый блок данных дуплицируется для получения второго блока данных; и второй блок данных дуплицируется в первом носителе данных или втором носителе данных.
После того, как второй блок данных дуплицируется в первом носителе данных или втором носителе данных, первое число количества доступов вычитается из второго числа количества доступов для получения актуального числа количества доступов к первому блоку данных, и 1 вычитается из значения счетчика механизма ссылок первого блока данных.
В настоящем варианте осуществления изобретения также предлагается устройство восстановления дедуплицированных данных, которое используется для реализации упомянутого варианта осуществления и предпочтительного осуществления изобретения, причем описанное выше больше не будет повторено здесь. Модули, входящие в состав устройства, описаны ниже. Термин «модуль», используемый ниже, может включать в себя комбинацию программного обеспечения и/или аппаратные средства с желаемыми функциями. Несмотря на то, что устройство, описываемое в следующем варианте осуществления изобретения, реализуется предпочтительно с помощью программного обеспечения, реализация с помощью аппаратных средств или комбинации программного обеспечения и аппаратных средств возможна и предлагается. Фиг. 2 демонстрирует принципиальную блочную схему устройства восстановления дедуплицированных данных в соответствии с вариантом осуществления настоящего изобретения; как показано на Фиг. 2 устройство включает в себя:
первый получающий модуль 20, выполненный с возможностью получения первого числа количества доступов к файлу, соответствующему первому блоку данных, при этом первое число количества доступов представляет собой число посетителей, в текущее время и одновременно получающих доступ к файлу;
сравнивающий модуль 22, соединенный с первым получающим модулем 20, и выполненный с возможностью сравнения первого числа количества доступов с первым пределом и вторым пределом соответственно, при этом первый предел меньше, чем второй предел; и
и восстанавливающий модуль 24, соединенный со сравнивающим модулем 22, и выполненный с возможностью восстановления первого блока данных в первом носителе данных или втором носителе данных в соответствии с результатами сравнения; при этом восстанавливающий модуль восстанавливает первый блок данных в первом носителе данных, когда первое число количества доступов больше, чем первый предел, и меньше, чем второй предел, и восстанавливающий модуль восстанавливает первый блок данных во втором носителе данных когда первое число количества доступов больше, чем второй предел; при этом второй носитель данных имеет более высокую эффективность доступа, чем у первого носителя данных.
В настоящем варианте осуществления изобретения, как показано на Фиг. 3, устройство также включает в себя: второй получающий модуль 26, выполненный с возможностью получения второго числа количества доступов к первому блоку данных, при этом второе число количества доступов представляет собой число посетителей, в текущее время и одновременно получающих доступ к первому блоку данных; и модуль поиска 28, соединенный со вторым получающим модулем 26, и выполненный с возможностью, когда второе число количества доступов больше, чем третий предел, поиска файла, соответствующего первому блоку данных.
В качестве варианта осуществления изобретения, как показано на Фиг. 3, устройство может также включать в себя следующие обрабатывающие модули: третий получающий модуль 30, выполненный с возможностью получения описания признаков первого блока данных, при этом описание признаков используется для представления содержимого, которое есть только в первом блоке данных; информирующий модуль 32, выполненный с возможностью информировать текущую распределенную файловую систему и другие распределенные файловые системы, связанные с текущей распределенной файловой системой, об описании признаков, при этом описание признаков используется для выполнения дедуплицирующей обработки в текущую распределенную файловую систему и другие распределенные файловые системы. Значение «Соединение» здесь может быть таким: два устройства могут обмениваться данными друг с другом.
В качестве варианта осуществления изобретения, как показано на Фиг. 3, устройство может также включать в себя следующие обрабатывающие модули: считающий модуль 34, выполненный с возможностью, после дупликации второго блока данных в первом носителе данных или втором носителе данных, вычитания первого числа количества доступов из второго числа количества доступов для получения актуального числа количества доступов к первому блоку данных, и вычитания 1 из значения счетчика механизма ссылок первого блока данных.
Для лучшего понимания упомянутого варианта осуществления изобретения детальное описание приводится ниже в сочетании с предпочтительными вариантами осуществления изобретения.
Вариант осуществления изобретения 1
Фиг. 4 демонстрирует принципиальную блочную схему распределенной файловой системы в соответствии с предпочтительным вариантом осуществления настоящего изобретения; Как показано на Фиг. 4, система включает в себя:
сервер 40 метаданных, который берет на себя контроль за управлением именами файлов всех файлов в файловой системе, блоки данных и другую информацию метаданных, и предоставляет программу-клиент для доступа к файлу с такими операциями как запись и запрос метаданных; на основе блока исходных метаданных для реализации функции дедупликации добавлен счетчик ссылок блока метаданных; например, содержимое определенного блока данных файла А такое же как у блока данных файла Б, требующего дедупликации, тогда блок данных файла Б может быть удален и файл Б направляется на блок данных файла А путем добавления 1 к подсчету ссылок блока файла А; в то же время число раз срабатывания блока записывается в соответствии со счетчиком считывания и записи блока, когда число превышает настроенный предел, реестр расположений файлов должен восстановить дедуплицированный блок так, чтобы справиться с проблемой большого количества доступов;
программа-клиент 42 для доступа к файлу, которая берет на себя предоставление интерфейса обработки вызовов, аналогичного стандартной файловой системе для приложения, на которое нацелена файловая система;
сервер 44 для доступа к файлу, который берет на себя взаимодействие с носителем данных в файловой системе для чтения и записи блока актуальных данных, отвечающий на запросы чтения и записи данных от программы-клиента для доступа к файлу и считывающий данные из программы-клиента для доступа к данным и записывающий данные в носитель данных;
реестр 46 расположений файлов, который берет на себя контроль доступа к файлам, распределение файлов данных и управление различными данными; реестр расположений файлов может также включать базу данных отображения, которая берет на себя сохранение таблицы отображения файла и блока, при этом ведя статистику числа посетителей, одновременно получающих доступ к файлу; и
носитель 48 данных, которым в общем случае является одно из следующего: общий диск Интерфейса дисковых устройств (IDE), диск Последовательного интерфейса ATA (SATA), Засекречивающий цифровой диск (SD), Твердотельный диск (SSD).
При необходимости чтения и записи файла пользователь отправляет инструкцию по чтению и записи в программу-клиент для доступа к файлу и затем получает информацию блока данных, соответствующую файлу, через реестр расположений файлов и сервер метаданных; в конце определенная информация о диске файла возвращается пользователю через сервер для доступа к файлу. В частности, указанный процесс может выглядеть как следующая обработка:
Этап А: реестр расположений файлов регулярно посылает запрос на сервер метаданных, чтобы выяснить есть ли блок данных, на котором не проводился подсчет идентификационной метки; если есть, блок данных, на котором необходим подсчет идентификационной метки, возвращается, затем, реестр информирует сервер доступа о необходимости подсчета идентификационной метки и информирует сервер метаданных системы и реестры других систем, соединенных с ней, о подсчитанной идентификационной метке, таким образом может быть проведена операция дедупликации на всех базах данных, соединенных с реестром, для достижения кросс-серверной дедупликации блока данных;
Этап Б: сервер метаданных создает статистику числа количества доступов к блоку данных А; если число одновременных доступов больше, чем предел n, информируется реестр расположений файлов, а затем реестр осуществляет поиск файла, соответствующего блоку данных, в базе данных отображения файла;
Этап В: база данных отображения подсчитывает число одновременных доступов к обнаруженному файлу; если число одновременных доступов больше, чем предел общего доступа, и меньше, чем предел производительности, то реестр информируется о восстановлении блока данных на общем диске; если число одновременных доступов обнаруженного файла больше, предел производительности, то реестр информируется о восстановлении блока данных на твердотельном диске (SSD);
Этап Г: реестр расположений файлов информирует сервер метаданных о вновь добавленном блоке данных и информирует сервер о числе количества доступов к файлу, который необходимо восстановить; сервер метаданных создает блок данных Б, при этом вычитая число количества доступов файла из исходного блока данных, и вычитая 1 из подсчета ссылок; и
Этап Д: реестр расположений файлов информирует, в соответствии с информацией, которую необходимо скопировать, сервер для доступа к файлу о копировании файла в соответствующий носитель данных.
Общий диск или твердотельный диск (SSD).
Для лучшего понимания упомянутого процесса реализации детальное описание приведено ниже в сочетании с Фиг. 5 и Фиг. 6.
Как показано на Фиг. 5, реестр расположений файлов регулярно отправляет запрос на сервер метаданных сервера, чтобы выяснить есть ли блок данных, на котором необходимо провести подсчет идентификационной метки; если есть, блок данных, на котором необходим подсчет идентификационной метки, возвращается, реестр осуществляет подсчет идентификационной метки на сервере доступа, отправляет подсчитанную идентификационную метку на сервер метаданных сервера и сервер смежного узла, и достигает цели дедупликации каждого сервера через каждый запрос метаданных; таким образом, настоящий вариант осуществления изобретения реализует не только дедупликацию сервера, но и дедупликацию серверов всей системы с помощью передачи сообщений, тем самым решая проблему эффективности дедупликации и сохраняя больше пространства по сравнению со старым одиночным сервером. Конкретный процесс реализации представляет собой следующее:
Этап 502: регулярно делается запрос, чтобы выяснить есть ли блок данных, на котором не проводился подсчет идентификационной метки;
Этап 504: блок данных, на котором необходим подсчет
идентификационной метки, возвращается; Этап 506:
возвращенный блок данных А информируется о подсчете
идентификационной метки; Этап 508: значение подсчитанной
идентификационной метки сообщается;
Этап 510: значение подсчитанной идентификационной метки сообщается, и выясняется есть ли блок данных А, требующий дедупликации;
Этап 512: блок данных Б, требующий дедупликации, возвращается;
Этап 514: значение идентификационной метки блока данных А сообщается, и выясняется есть ли то же самое на блоке данных Б;
Этап 516: значение подсчитанной идентификационной метки сообщается, и выясняется есть ли блок данных А, требующий дедупликации;
Этап 518: блок данных В, требующий удаления, возвращается;
Этап 520: сообщается о необходимости отобразить файл, которому соответствует блок данных Б, в блок данных А;
Этап 522: отображение успешно;
Этап 524: сообщается о необходимости удалить блока данных Б;
Этап 526: удаление успешно, сообщается о необходимости отобразить файл, которому соответствует блок данных Б, в блок данных А;
Этап 528: отображение успешно;
Этап 530: сообщается о необходимости удалить блока данных Б; и
Этап 532: удаление успешно.
Как показано на Фиг. 6, сервер метаданных подсчитывает доступ к сохраненному блоку данных; когда значение счетчика доступа к блоку данных превышает предел n, информация блока данных сообщается в реестр расположений файлов; реестр расположений файлов осуществляет поиск, в соответствии с блоком данных, соответствующий файл, занимающий блок данных, и сортирует число количества доступов ко всем файлам; если число количества доступов к файлу больше, чем предел общего доступа, но меньше, чем предел производительности, то блок данных напрямую восстанавливается на общем диске; если число количества доступов больше, чем предел производительности, то соответствующий дедуплицированный блок данных файла восстанавливается на твердотельном диске (SSD) с высокой эффективностью доступа. Конкретный процесс реализации представляет собой следующее:
Этап 602: ведется статистика с целью проверить, превышает ли число
одновременных доступов блока данных предел n (n - натуральное число);
если число одновременных доступов блока данных больше, чем n, и
подсчет ссылок больше, чем 1, то уведомляется реестр;
Этап 604: идентификатор соответствующего файла находится в соответствии
с блоком данных;
Этап 606: если число одновременных доступов найденного идентификатора файла больше, чем 1, но меньше, чем m (m - натуральное число), то реестру необходимо восстановить блок данных на общем диске; если число одновременных доступов найденного идентификатора файла больше, чем m, то блок данных восстанавливается на твердотельном диске (SSD);
Этап 608: блок данных Б отображается в файл, который
необходимо восстановить; Этап 610: возврат успешен;
Этап 612: сообщается, что блок данных вновь добавлен, и 1 вычитается из
подсчета ссылок исходного блока данных;
Этап 614: вновь добавленный блок данных Б возвращается;
Этап 616: информация блока данных копируется на общий диск или
твердотельный диск (SDD);
Этап 618: возврат успешен; и
Этап 620: копирование выполнено.
Вариант осуществления изобретения 2
Когда файл открыт, после того, как программа-клиент отправляет информацию файла в реестр расположений файловой системы по умолчанию, реестр расположений ищет блок данных, соответствующий файлу через базу данных отображения, и ищет, чтобы блок данных не был сохранен системой; затем, реестр расположений сообщает программе-клиенту для доступа о запросе в файловой системе, где находится блок данных, таким образом очень просто реализуется кросс-системный доступ к файлу.
Осуществление настоящего изобретения иллюстрируется открытием файла А. Как показано на Фиг. 7, процесс включает следующие этапы обработки:
Этап 702: файл А открыт;
Этап 704: блок данных находится в соответствии с файлом А, при этом ведется статистика числа количества доступов к файлу;
Этап 706: блок данных А возвращается;
Этап 708: сообщается о необходимости ведения статистики числа одновременных доступов к блоку данных А;
Этап 710: обнаруживается, что число одновременных доступов к блоку данных А больше, чем предел доступа n, а подсчет ссылок больше 1;
Этап 712: соответствующий файл находится в соответствии с блоком данных
А;
Этап 714: файл А и файл Б, соответствующий блоку данных А, возвращаются, при этом, число количества доступов к файлу А больше, чем предел производительности m;
Этап 716: сообщается, что блок данных вновь добавлен, и сообщается число количества доступов к файлу А;
Этап 718: вновь добавленный блок данных Б возвращается, и число количества доступов к файлу А вычитается из числа количества доступов к блоку данных А, при этом 1 вычитается из подсчета ссылок блока данных А, и расформировывается отношение отображения между файлом А и блоком данных А;
Этап 720: файлу А сообщается об отображении с блоком
данных Б; Этап 722: база данных файла выдает успех
отображения;
Этап 724: сообщается о необходимости копировать содержимое блока данных А в блок данных Б, и копировать блок данных Б на твердотельном диске (SSD), чтобы повысить эффективность доступа;
Этап 726: сервер для доступа к файлу выдает успех копирования; и Этап
728: реестр расположений возвращает блок данных Б.
Реализация, при которой число количества доступов к другому файлу, соответствующему блоку данных, также превышает предел обнаруживается при открытии файла А. Как показано на Фиг. 8, процесс включает следующие этапы:
Этап 802: файл А открыт;
Этап 804: блок данных находится в соответствии с файлом А, при этом ведется статистика числа количества доступов к файлу;
Этап 806: блок данных А возвращается;
Этап 808: сообщается о необходимости ведения статистики числа одновременных доступов к блоку данных А;
Этап 810: обнаруживается, что число одновременных доступов к блоку данных А больше, чем предел доступа n, а подсчет ссылок больше 1;
Этап 812: соответствующий файл находится в соответствии с блоком данных
А;
Этап 814: файл А и файл Б, соответствующий блоку данных А возвращаются, при этом число количества доступов к файлу Б больше, чем предел производительности m, и число количества доступов к файлу А больше, чем общий предел I;
Этап 816: сообщается, что блок данных вновь добавлен, и сообщается число количества доступов к файлу А;
Этап 818: вновь добавленный блок данных Б возвращается, и число
количества раз доступа к файлу А вычитается из числа количества доступов
к блоку данных А, при этом 1 вычитается из подсчета ссылок блока данных
А, и расформировывается отношение отображения между файлом А и
блоком данных А;
Этап 820: файлу А сообщается об отображении с
блоком данных Б;
Этап 822: база данных файла выдает успех
отображения;
Этап 824: сообщается, что блок данных вновь добавлен, и сообщается число количества доступов к файлу Б;
Этап 826: вновь добавленный блок данных В возвращается, и число
количества доступов к файлу Б вычитается из числа количества доступов к
блоку данных А, при этом 1 вычитается из подсчета ссылок блока данных А,
и расформировывается отношение отображения между файлом Б и блоком
данных А;
Этап 828: файлу Б сообщается об отображении с блоком
данных В;
Этап 830: база данных файла выдает успех отображения;
Этап 832: сообщается о необходимости копировать содержимое блока
данных А в блок данных Б; поскольку в этот раз число превышает общий
предел, содержимое копируется на общий диск;
Этап 834: сервер для доступа к файлу выдает успех копирования;
Этап 836: реестр расположений возвращает блок данных Б;
Этап 838: сообщается о необходимости копировать содержимое блока данных А в блок данных В при работе файла А; поскольку в этот раз число превышает предел производительности, содержимое копируется на твердотельный диск (SSD); и
Этап 840: сервер для доступа к файлу выдает успех копирования.
Подводя итоги, настоящее раскрытие достигает следующих положительных эффектов:
При рассмотрении упомянутой проблемы на известном уровне техники, при котором имеется чрезмерное количество доступов к одному и тому же блоку данных в связи с дедупликацией, что понижает эффективность доступа, настоящее раскрытие определяет имеется ли чрезмерное количество доступов путем ведения статистики числа одновременных доступов к блоку данных и числа одновременных доступов к файлу, и в то же время, классифицирует доступы файла по числу общих доступов и числу доступов производительности, и восстанавливает блок данных на общем диске и твердотельном диске (SSD) в соответствии с двумя числами, таким образом, восстанавливая, на основе классификации, блок данных в соответствии с числом количества доступов, и достигая унификации эффективности и экономии. В дополнение, с помощью дедупликации метаданных, повышается грануляция дедупликации, и реализуется кросс-системная дедупликация, что сохраняет больше пространства на диске; в то же время, использую подход подсчета ссылок, вероятность поиска таблицы отображения файла может быть снижена с помощью изменения блока данных, тем самым, повышая эффективность работы системы.
В другом варианте осуществления изобретения предлагаются компоненты программных средств, которые используются для осуществления технических решений, описанных в упомянутых вариантах осуществления изобретения и предпочтительных вариантах осуществления изобретения.
В другом варианте осуществления изобретения также предлагается носитель данных, предназначенный для хранения упомянутого программного обеспечения; носитель данных включает без ограничений такие носители информации, как компакт-диск, гибкий диск, жесткий диск, стираемая память и т.д.
Очевидно, что специалисты в данной области оценят указанные модули и этапы раскрытия сущности настоящего изобретения, могут быть реализованы с помощью вычислительного устройства общего назначения, и они могут быть централизованы в одиночное вычислительное устройство или распределены в сеть, состоящую из нескольких вычислительных устройств; в качестве варианта они могут быть реализованы с помощью программного кода, который способен выполняться вычислительным устройством таким образом, чтобы они могли храниться в накопительном устройстве и выполняться вычислительным устройством; и в некоторых ситуациях представленные и упомянутые этапы могут выполняться в порядке, отличном от описанного здесь; или они объединены в единые электронные модули, соответственно; или несколько модулей, и их этапы объединены в единый электронный модуль для реализации. Таким образом, раскрытие сущности настоящего изобретения не ограничивается какой-либо конкретной комбинацией программных и аппаратных средств.
Упомянутое является только предпочтительным вариантом осуществления изобретения и не должно ограничивать раскрытие сущности настоящего изобретения; для специалистов в данной области раскрытие сущности настоящего изобретения может иметь различные модификации и изменения. Любые модификации, равнозначное замещение, улучшение и т.п., вносимое в рамках принципов настоящего раскрытия, должно оставаться в пределах объема правовой охраны, определяемого формулой настоящего изобретения.
Промышленная применимость
Технические решения, представленные в раскрытии сущности настоящего изобретения, могут быть применены в процессе восстановления дедуплицированных данных; с помощью применения технических средств сравнения числа количества доступов к файлу, соответствующему первому блоку данных, с первым пределом и вторым пределом соответственно, и, в соответствии с результатами сравнения, определяется, восстанавливать ли первый блок данных в первом носителе данных или втором носителе данных, настоящее раскрытие решает проблему известного уровня техники, при котором имеется чрезмерное число доступов к одному и тому же блоку данных, таким образом повышая эффективность доступа к файлам.

Claims (26)

1. Способ восстановления данных, содержащий:
получение первого числа количества доступов к файлу, соответствующему первому блоку данных, при этом первое число количества доступов представляет собой число посетителей, в текущее время и одновременно получающих доступ к файлу;
сравнение первого числа количества доступов с первым пределом и вторым пределом, соответственно, при этом первый предел меньше, чем второй предел; и
восстановление первого блока данных в первом носителе данных или втором носителе данных, в соответствии с результатами сравнения, при этом первый блок данных восстанавливается в первом носителе данных, когда первое число количества доступов больше, чем первый предел, и меньше, чем второй предел, и первый блок данных восстанавливается во втором носителе данных, когда первое число количества доступов больше, чем второй предел; причем перед получением первого числа количества доступов к файлу, соответствующему первому блоку данных, содержит:
получение второго числа количества доступов к первому блоку данных, при этом второе число количества доступов представляет собой количество посетителей, которые в текущее время и одновременно получают доступ к первому блоку данных; и
когда второе число количества доступов больше, чем третий предел, поиск файла, соответствующего первому блоку данных.
2. Способ по п. 1, который перед получением второго числа количества доступов к первому блоку данных содержит:
получение описания признаков первого блока данных, при этом описание признаков используется для представления содержимого, которое есть только у первого блока данных; и информирование текущей распределенной файловой системы и других распределенных файловых систем, связанных с текущей файловой системой, об описании признаков, при этом описание признаков используется для выполнения дедуплицирующей обработки в текущую распределенную файловую систему и другие распределенные файловые системы.
3. Способ по п. 2, при котором информирование текущей распределенной файловой системы об описании признаков содержит:
информирование узлового сервера в текущей распределенной файловой системе об описании признаков.
4. Способ по п. 1, при котором восстановление первого блока данных в первом носителе данных или втором носителе данных содержит:
дупликацию первого блока данных для получения второго блока данных; и
дупликацию второго блока данных в первом носителе данных или втором носителе данных.
5. Способ по п. 4, который после дупликации второго блока данных в первом носителе данных или втором носителе данных дополнительно содержит:
вычитание первого числа количества доступов из второго числа количества доступов для получения актуального числа количества доступов к первому блоку данных, и вычитание 1 из подсчета ссылок первого блока данных.
6. Устройство восстановления данных, содержащее:
первый получающий модуль, выполненный с возможностью получения первого числа количества доступов к файлу, соответствующему первому блоку данных, при этом первое число количества доступов представляет собой число посетителей, в текущее время и одновременно получающих доступ к файлу;
сравнивающий модуль, выполненный с возможностью сравнения первого числа количества доступов с первым пределом и вторым пределом соответственно, при этом первый предел меньше, чем второй предел; и
восстанавливающий модуль, выполненный с возможностью восстановления первого блока данных в первом носителе данных или втором носителе данных в соответствии с результатами сравнения; при этом восстанавливающий модуль восстанавливает первый блок данных в первом носителе данных, когда первое число количества доступов больше, чем первый предел, и меньше, чем второй предел, и восстанавливающий модуль восстанавливает первый блок данных во втором носителе данных, когда первое число количества доступов больше, чем второй предел;
второй получающий модуль, выполненный с возможностью получения второго числа количества доступов к первому блоку данных, при этом второе число количества доступов представляет собой количество посетителей, в текущее время и одновременно получающих доступ к первому блоку данных; и
модуль поиска, выполненный с возможностью, когда второе число количества доступов больше, чем третий предел, поиска файла, соответствующего первому блоку данных.
7. Устройство по п. 6, дополнительно содержащее:
третий получающий модуль, выполненный с возможностью получения описания признаков, при этом описание признаков используется для представления содержимого, которое есть только в первом блоке данных; и
информирующий модуль, выполненный с возможностью информирования текущей распределенной файловой системы и других распределенных файловых систем, связанных с текущей распределенной файловой системой, при этом описание признаков используется для выполнения дедуплицирующей обработки текущей распределенной файловой системы и других распределенных файловых систем.
8. Устройство по п. 7, дополнительно содержащее:
считающий модуль, выполненный с возможностью, после дупликации второго блока данных в первом носителе данных или втором носителе данных, вычитания первого числа количества доступов из второго числа количества доступов для получения актуального числа количества доступов к первому блоку данных, и вычитания 1 из значения счетчика механизма ссылок первого блока данных.
RU2016124319A 2013-11-26 2014-04-21 Способ и устройство для восстановления дедуплицированных данных RU2665272C1 (ru)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201310612870.X 2013-11-26
CN201310612870.XA CN104679746A (zh) 2013-11-26 2013-11-26 去重复数据的恢复方法及装置
PCT/CN2014/075850 WO2015078136A1 (zh) 2013-11-26 2014-04-21 去重复数据的恢复方法及装置

Publications (2)

Publication Number Publication Date
RU2016124319A RU2016124319A (ru) 2018-01-09
RU2665272C1 true RU2665272C1 (ru) 2018-08-28

Family

ID=53198283

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2016124319A RU2665272C1 (ru) 2013-11-26 2014-04-21 Способ и устройство для восстановления дедуплицированных данных

Country Status (3)

Country Link
CN (1) CN104679746A (ru)
RU (1) RU2665272C1 (ru)
WO (1) WO2015078136A1 (ru)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9672248B2 (en) 2014-10-08 2017-06-06 International Business Machines Corporation Embracing and exploiting data skew during a join or groupby
US10650011B2 (en) * 2015-03-20 2020-05-12 International Business Machines Corporation Efficient performance of insert and point query operations in a column store
US9922064B2 (en) 2015-03-20 2018-03-20 International Business Machines Corporation Parallel build of non-partitioned join hash tables and non-enforced N:1 join hash tables
US10108653B2 (en) 2015-03-27 2018-10-23 International Business Machines Corporation Concurrent reads and inserts into a data structure without latching or waiting by readers
US10831736B2 (en) 2015-03-27 2020-11-10 International Business Machines Corporation Fast multi-tier indexing supporting dynamic update

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2315349C1 (ru) * 2006-07-12 2008-01-20 Михаил ТОПР Способ репликации информации в распределенных базах данных и система для его осуществления
CN101877725A (zh) * 2010-06-25 2010-11-03 中兴通讯股份有限公司 分布式存储系统中的副本管理方法及装置
CN102375893A (zh) * 2011-11-17 2012-03-14 浪潮(北京)电子信息产业有限公司 一种分布式文件系统及其建立副本的方法
US8489832B1 (en) * 2009-12-10 2013-07-16 Guidance-Tableau, Llc System and method for duplicating electronically stored data
US20130290274A1 (en) * 2012-04-25 2013-10-31 International Business Machines Corporation Enhanced reliability in deduplication technology over storage clouds

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102385554B (zh) * 2011-10-28 2014-01-15 华中科技大学 重复数据删除系统的优化方法
US8458193B1 (en) * 2012-01-31 2013-06-04 Google Inc. System and method for determining active topics
CN103034592B (zh) * 2012-12-05 2016-09-28 华为技术有限公司 数据处理方法和装置
CN103220367A (zh) * 2013-05-13 2013-07-24 深圳市中博科创信息技术有限公司 数据复制方法及数据存储系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2315349C1 (ru) * 2006-07-12 2008-01-20 Михаил ТОПР Способ репликации информации в распределенных базах данных и система для его осуществления
US8489832B1 (en) * 2009-12-10 2013-07-16 Guidance-Tableau, Llc System and method for duplicating electronically stored data
CN101877725A (zh) * 2010-06-25 2010-11-03 中兴通讯股份有限公司 分布式存储系统中的副本管理方法及装置
CN102375893A (zh) * 2011-11-17 2012-03-14 浪潮(北京)电子信息产业有限公司 一种分布式文件系统及其建立副本的方法
US20130290274A1 (en) * 2012-04-25 2013-10-31 International Business Machines Corporation Enhanced reliability in deduplication technology over storage clouds

Also Published As

Publication number Publication date
WO2015078136A1 (zh) 2015-06-04
CN104679746A (zh) 2015-06-03
RU2016124319A (ru) 2018-01-09

Similar Documents

Publication Publication Date Title
US11803567B1 (en) Restoration of a dataset from a cloud
US20240012714A1 (en) Indirect Dataset Replication To Cloud-Based Targets
EP3678015B1 (en) Metadata query method and device
US10565063B2 (en) Virtual machine snapshot backup based on multilayer de-duplication
US10158483B1 (en) Systems and methods for efficiently and securely storing data in a distributed data storage system
US8799601B1 (en) Techniques for managing deduplication based on recently written extents
US8965850B2 (en) Method of and system for merging, storing and retrieving incremental backup data
US7681001B2 (en) Storage system
CN102629247B (zh) 一种数据处理方法、装置和系统
EP2863310B1 (en) Data processing method and apparatus, and shared storage device
US11093387B1 (en) Garbage collection based on transmission object models
US11663236B2 (en) Search and analytics for storage systems
RU2665272C1 (ru) Способ и устройство для восстановления дедуплицированных данных
US9785643B1 (en) Systems and methods for reclaiming storage space in deduplicating data systems
US10013312B2 (en) Method and system for a safe archiving of data
US10628298B1 (en) Resumable garbage collection
US8572338B1 (en) Systems and methods for creating space-saving snapshots
EP3788505B1 (en) Storing data items and identifying stored data items
CN103605585A (zh) 一种基于数据发现的智能备份方法
US11650967B2 (en) Managing a deduplicated data index
CN110647423A (zh) 一种基于应用创建存储卷镜像的方法、设备及可读介质
US10311021B1 (en) Systems and methods for indexing backup file metadata
US11645333B1 (en) Garbage collection integrated with physical file verification
US9111015B1 (en) System and method for generating a point-in-time copy of a subset of a collectively-managed set of data items
US10613761B1 (en) Data tiering based on data service status