2015-05-30 3 views
0

Я новичок в Hcatlog (HCAT), мы хотели бы узнать, в каких сценариях мы используем HCAT, Преимущества использования HCAT, есть ли улучшение производительности получить от HCatlog. Может ли кто-нибудь просто предоставить информацию о том, когда использовать HcatlogКогда использовать Hcatalog и каковы его преимущества

ответ

2

Apache HCatalog - это уровень управления таблицей и хранилищем для Hadoop, который позволяет пользователям с различными инструментами обработки данных - Apache Pig, Apache Map/Reduce и Apache Hive - более легко чтение и запись данных в сетке.

HCatalog создает слой абстракции таблицы над данными, хранящимися в кластере HDFS. Этот уровень абстракции таблицы представляет данные в привычном реляционном формате и упрощает чтение и запись данных с использованием привычных понятий языка запросов.

Структуры данных HCatalog определяются с использованием языка определения данных Hive (DDL), а метастор Hive хранит структуры данных HCatalog. Используя интерфейс командной строки (CLI), пользователи могут создавать, изменять и удалять таблицы. Таблицы организованы в базы данных или помещаются в базу данных по умолчанию, если для таблицы не определены. После создания таблиц вы можете исследовать метаданные таблиц с помощью таких команд, как Show Table и Describe Table. Команды HCatalog аналогичны командам DDL от Hive.

HCatalog гарантирует, что пользователям не нужно беспокоиться о том, где и в каком формате хранятся их данные. HCatalog отображает данные из формата RCFile, текстовых файлов или файлов последовательности в виде таблиц. Он также предоставляет API REST, чтобы внешние системы могли обращаться к метаданным этих таблиц.

HCкаталог открывает метаданные улей другим инструментам Map/Reduce. Каждый инструмент Map/Reduce имеет свое представление о данных HDFS (например, Pig видит данные HDFS в виде набора файлов, Hive видит его в виде таблиц). Поддерживаемые HCatalog инструменты Map/Reduce не нуждаются в заботе о том, где хранятся данные, в которых формат и место хранения.

  1. Это помогает интеграции с другими инструментами и материалами для чтения и записи интерфейсов для Pig, Hive и Map/Reduce.
  2. Он предоставляет общие схемы и типы данных для инструментов Hadoop. Вам не нужно явно вводить структуры данных в каждой программе.
  3. Он предоставляет информацию как интерфейс для внешнего доступа к данным.
  4. Он также интегрируется с Sqoop, который представляет собой инструмент, предназначенный для передачи данных туда и обратно между Hadoop и реляционных баз данных, таких как SQL Server и Oracle
  5. Он обеспечивает интерфейсы и WebService оболочку для доступа к метаданным в улей metastore.
  6. HCatalog также предоставляет интерфейс REST, чтобы вы могли создавать собственные инструменты и приложения для взаимодействия с структурами данных Hadoop.

Это позволяет нам использовать правильный инструмент для правильной работы. Например, мы можем загружать данные в Hadoop с помощью HCatalog, выполнять некоторые ETL на данных с помощью Pig, а затем собирать данные с помощью Hive. После обработки вы можете отправить данные в хранилище данных, размещенном на SQL Server, используя Sqoop. Вы можете даже автоматизировать процесс с помощью Oozie.

Как это работает:

  1. Pig- HCatLoader и HCatStore интерфейс
  2. Карта/Reduce- HCatInputFormat и интерфейс HCatOutputFormat
  3. Hive- Нет Интерфейс Необходимый. Прямой доступ к метаданным

Ссылки:

Microsoft Big Data Solution

http://hortonworks.com/hadoop/hcatalog/

Ответ на ваш вопрос:

Как я описал ранее HCatalog обеспечивает общие схемы и типы данных для инструментов hadoop Это сим упрощает вашу работу во время обработки данных. Если вы создали таблицу с помощью HCatalog, вы можете напрямую получить доступ к этой таблице улей через свиньи или Map/Reduce (вы не можете просто получить доступ к таблице улей через свинг или уменьшить карту). Вам не нужно создавать схему для каждого инструмента.

Если вы работаете с общими данными, которые могут использоваться от нескольких пользователей (некоторые команды используют Hive, некоторые команды используют свиньи, некоторые команды используют Map/Reduce), тогда HCatalog будет полезен, поскольку они просто необходимы только для таблицы для доступа к данным для обработки.

Это не замена какого-либо инструмента. Это средство для обеспечения единого доступа ко многим инструментам.

Производительность зависит от вашего кластера сложения. Вы должны выполнить сравнительный анализ производительности в своем кластере Hadoop для достижения максимальной производительности.

+3

Привет, похоже, вы просто скопировали часть этого ответа дословно из книги «Microsoft Big Data Solutions». Не могли бы вы [отредактировать свой пост и дать авторство] (http://stackoverflow.com/help/referencing)? Плагиат на самом деле не приветствуется в переполнении стека, и всегда приятно давать кредит, где должен быть кредит. Удачи! – Nickolay

+0

Да, я привел некоторые ссылки из книги и веб-сайта Hortonworks. Я добавил его в качестве ссылки. Спасибо за ваше предложение. –

+0

Спасибо за помощь! – Nickolay

Смежные вопросы