Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

Quantcast File System ( QFS ) - это программный пакет распределенной файловой системы с открытым исходным кодом для крупномасштабных MapReduce или других рабочих нагрузок пакетной обработки. Он был разработан как альтернатива распределенной файловой системе Apache Hadoop ( HDFS ), призванной обеспечить лучшую производительность и экономическую эффективность для крупномасштабных вычислительных кластеров.

Дизайн [ править ]

QFS - это программное обеспечение, которое работает в кластере из сотен или тысяч стандартных серверов Linux и позволяет другим программным уровням взаимодействовать с ними, как если бы они были одним гигантским жестким диском. Он состоит из трех компонентов:

  • Сервер фрагментов работает на каждой машине, на которой будут размещаться данные, управлять вводом-выводом на свои жесткие диски и контролировать его активность и емкость.
  • Центральный процесс, называемый метасервером, сохраняет структуру каталогов и отображает файлы в физическое хранилище. Он координирует действия всех серверов фрагментов и контролирует общее состояние файловой системы. Для обеспечения высокой производительности он хранит все свои данные в памяти, записывая контрольные точки и журналы транзакций на диск для восстановления.
  • Клиентский компонент - это точка интерфейса, которая представляет программный интерфейс приложения (API) файловой системы для других уровней программного обеспечения. Он запрашивает метасервер, чтобы определить, какие серверы фрагментов хранят (или будут хранить) его данные, а затем напрямую взаимодействует с серверами фрагментов для чтения и записи.

В кластере из сотен или тысяч машин шансы на то, что все они будут запущены и доступны в любой момент, невелики, поэтому отказоустойчивость является центральной задачей проектирования. QFS встречает это с исправлением ошибок Рида – Соломона . Форма кодирования Рида-Соломона, используемая в QFS, хранит избыточные данные в девяти местах и ​​может восстановить файл из любых шести из этих полос. [2] Когда он записывает файл, он по умолчанию распределяет его по девяти физически различным машинам - шесть хранят данные, три - информацию о четности. Любые три из них могут стать недоступными. Если любые шесть остаются доступными для чтения, QFS может восстановить исходные данные. Результатом является отказоустойчивость за счет увеличения объема данных на 50%.

QFS написана на языке программирования C ++ , работает в фиксированном объеме памяти и использует прямой ввод и вывод (I / O).

История [ править ]

QFS произошла от Kosmos File System (KFS), проекта с открытым исходным кодом, начатого Kosmix в 2005 году. Quantcast приняла KFS в 2007 году, в течение следующих нескольких лет построила свои собственные улучшения и выпустила QFS 1.0 как проект с открытым исходным кодом в сентябре. , 2012. [3]

Ссылки [ править ]

Внешние ссылки [ править ]