Наиболее распространенные вопросы и ответы на собеседовании в HBase [Полное руководство]

Опубликовано: 2020-09-21

Apache HBase — отличное решение для работы с большими данными, когда вы хотите, чтобы ваше приложение передавало или извлекало данные в режиме реального времени. Он в основном известен своей гибкой схемой и высокой скоростью. Цель этой статьи — дать вам ответы на некоторые из наиболее часто задаваемых вопросов на собеседовании в HBase . Интервьюеры хотят проверить как техническую, так и общую осведомленность кандидатов. Таким образом, ваши усилия должны быть направлены на точное и тщательное изложение концепций.

Многие ведущие компании по всему миру используют технологию Hbase, включая Adobe, HubSpot, Facebook, Twitter, Yahoo!, OpenLogic и StumbleUpon. Для начинающих веб-разработчиков, стремящихся создавать масштабируемые веб-сайты, освоение таких инструментов, как Hadoop и HBase, может оказаться чрезвычайно полезным.

Изучайте науку о данных в лучших университетах мира. Участвуйте в программах Executive PG, Advanced Certificate Programs или Master Programs, чтобы ускорить свою карьеру.

Читайте: Идеи проекта Hadoop

Оглавление

Лучшие вопросы и ответы на интервью HBase

1. Что такое HBase?

Это столбцовая база данных, разработанная Apache Software Foundation. HBase, работающий поверх кластера Hadoop, используется для хранения частично структурированных и неструктурированных данных. Таким образом, у нее нет жесткой схемы, как у традиционной реляционной базы данных. Кроме того, он не поддерживает структуру синтаксиса SQL. HBase хранит данные и работает с ними через главный узел, регулирующий работу серверов кластера и региона.

2. Каковы причины использования Hbase?

HBase предлагает систему хранения большой емкости и произвольные операции чтения и записи. Он может обрабатывать большие наборы данных, выполняя несколько операций в секунду. Распределенный и горизонтально масштабируемый дизайн делает HBase популярным выбором для приложений реального времени.

3. Объясните ключевые компоненты HBase.

Рабочие части HBase включают Zookeeper, HBase Master, RegionServer, Region и таблицы каталога. Назначение каждого элемента можно описать следующим образом:

  • Zookeeper координирует работу клиента и HBase Master.
  • HBase Master отслеживает RegionServer и выполняет функции администратора.
  • RegionServer контролирует регион
  • Регион содержит MemStore и HFile
  • Таблицы каталога включают ROOT и META

По сути, Hbase состоит из набора таблиц, каждая из которых имеет строки, столбцы и первичный ключ. Это столбец HBase, который обозначает атрибут объекта.

4. Какие существуют типы операционных команд в HBase?

В HBase есть пять важнейших операционных команд: Get, Delete, Put, Increment и Scan.

Get используется для чтения таблицы. Выполненный через HTable.get, он возвращает данные или атрибуты определенной строки из таблицы. Команда Delete удаляет строки из таблицы, тогда как команда Put добавляет или обновляет строки. Приращение включает операции приращения в одной строке. Наконец, Scan используется для перебора нескольких строк для определенных атрибутов.

5. Что вы понимаете под WAL и Hlog?

  • WAL расшифровывается как Write Ahead Log и очень похож на журнал BIN в MySQL. Он записывает все изменения в данных.
  • HLog — это стандартный файл последовательности Hadoop в памяти, который поддерживает хранилище HLogkey.

WAL и HLog служат спасательными кругами в случае сбоя сервера и потери данных. Если RegionServer дает сбой или становится недоступным, файлы WAL гарантируют, что изменения данных могут быть воспроизведены.

6. Опишите некоторые ситуации, в которых вы могли бы использовать Hbase.

HBase целесообразно использовать, когда:

  • Размер ваших данных огромен, что требует от вас работы с миллионами записей.
  • Вы полностью перепроектируете и перестраиваете обычную СУБД.
  • У вас есть ресурсы для инвестиций в инфраструктуру кластеров.
  • Существуют определенные команды без SQL, такие как транзакции, типизированные столбцы, внутренние строки и т. д.

7. Что вы подразумеваете под семействами столбцов и ключами строк?

Семейства столбцов составляют основные единицы хранения в HBase. Они определяются во время создания таблицы и сохраняются вместе на диске, что позже позволяет применять такие функции, как сжатие.

Ключ строки позволяет логическую группировку ячеек. Он добавляется к комбинированному ключу, позволяя приложению определять порядок сортировки. Таким образом, все ячейки с одинаковым ключом строки могут быть сохранены на одном сервере.

8. Чем HBase отличается от реляционной базы данных?

HBase отличается от реляционной базы данных тем, что представляет собой хранилище данных без схемы, ориентированное на столбцы, содержащее редко заполняемые таблицы. Реляционная база данных основана на схеме, ориентирована на строки и хранит нормализованные данные в тонких таблицах. Кроме того, у HBase есть преимущество автоматического разделения, тогда как в РСУБД нет такой встроенной поддержки.

Читайте: СУБД и РСУБД: разница между СУБД и РСУБД

9. Что представляет собой ячейка в HBase?

Ячейки — это наименьшие единицы таблиц HBase, содержащие данные в виде кортежей. Кортеж — это структура данных, состоящая из нескольких частей. В HBase он состоит из {строки, столбца, версии}.

10. Определите уплотнение в HBase.

Сжатие — это процесс, используемый для объединения файлов HFiles в один файл перед удалением старых файлов из базы данных.

11. Можно ли получить доступ к HFile напрямую без использования HBase?

Да, существует уникальный метод прямого доступа к HFile без помощи HBase. Для этой цели можно использовать метод HFile.main.

12. Обсудите маркеры удаления и захоронения в HBase.

В HBase нормальный процесс удаления приводит к маркеру надгробия. Удаленные ячейки становятся невидимыми, но представляемые ими данные фактически удаляются при сжатии. HBase имеет три типа маркеров надгробий:

  • Маркер удаления версии: помечает одну версию столбца для удаления.
  • Маркер удаления столбца: отмечает все версии столбца.
  • Маркер удаления семейства: устанавливает все столбцы семейства столбцов для удаления.

Здесь необходимо отметить, что строка в HBase будет полностью удалена после значительного сжатия. Таким образом, когда вы удаляете и добавляете дополнительные данные, Gets могут быть замаскированы маркерами надгробий, и вы можете не видеть вставленные значения до тех пор, пока не будет выполнено сжатие.

13. Что произойдет, если изменить размер блока семейства столбцов?

Если ваша база данных уже занята и вы хотите изменить размер блока семейства столбцов в HBase, старые данные могут остаться в старом размере блока. Во время сжатия старые и новые данные будут вести себя следующим образом:

  • Существующие данные примут новый размер блока и продолжат правильно читаться.
  • Новые файлы будут иметь новый размер блока.

Таким образом, все данные преобразуются в желаемый размер блока до следующего крупного сжатия.

14. Определите различные режимы, в которых может работать HBase.

HBase может работать как в автономном, так и в распределенном режиме. Автономный — это режим HBase по умолчанию, который использует локальную файловую систему вместо HDFS. Что касается распределенного режима, то его можно разделить на:

  • Псевдораспределенный режим: все демоны работают на одном узле.
  • Полностью распределенный режим: демоны работают на всех узлах кластера.

15. Как бы вы реализовали соединения в HBase?

HBase использует задания MapReduce для масштабируемой обработки терабайтов данных. Он не поддерживает соединения напрямую, но запросы на соединение реализуются путем извлечения данных из таблиц HBase.

Оформить заказ: вопросы для интервью с Hadoop

16. Обсудите назначение фильтров в HBase.

Фильтры были введены в Apache HBase 0.92, чтобы помочь пользователям получить доступ к HBase через Shell или Thrift. Таким образом, они заботятся о ваших потребностях в фильтрации на стороне сервера. Существуют также украшающие фильтры, которые расширяют возможности использования фильтров, чтобы получить дополнительный контроль над возвращаемыми данными. Вот несколько примеров фильтров в HBase:

  • Фильтр Блума: обычно используется для запросов в реальном времени. Это экономичный способ узнать, включает ли HFile определенную строку или ячейку.
  • Фильтр страниц: принимая размер страницы в качестве параметра, фильтр страниц может оптимизировать сканирование отдельных HR-регионов.

17. Сравните HBase с (i) Cassandra (ii) Hive.

(i) HBase и Cassandra: и Cassandra, и HBase представляют собой базы данных NoSQL, предназначенные для управления большими наборами данных. Однако синтаксис языка запросов Cassandra (CQL ) создан по образцу SQL. В обоих хранилищах данных ключ строки образует первичный индекс. Cassandra может создавать вторичные индексы для значений столбцов. Следовательно, это может улучшить доступ к данным в столбцах с высоким уровнем повторения. HBase не имеет этого положения, но имеет другие механизмы для реализации функциональности вторичного индекса. Эти методы можно легко найти в онлайн-справочниках.

(ii) HBase и Hive: обе технологии основаны на Hadoop. Как обсуждалось выше, HBase — это база данных типа «ключ-значение» NoSQL. С другой стороны, Hive — это SQL-подобный движок, способный выполнять сложные задания MapReduce. Вы можете выполнять операции чтения и записи данных из Hive в HBase и наоборот. В то время как Hive больше подходит для аналитических задач, HBase — отличное решение для запросов в реальном времени.

Читайте также: Архитектура HBase: все, что вам нужно знать

Заключение

Эти вопросы интервью HBase и варианты использования подводят нас к концу этой статьи. Мы попытались охватить разные темы, чтобы удовлетворить базовый, средний и продвинутый уровни. Итак, продолжайте пересматривать, чтобы произвести звездное впечатление на вашего рекрутера!

Если вам интересно узнать о науке о данных, ознакомьтесь с программой IIIT-B & upGrad Executive PG по науке о данных , которая создана для работающих профессионалов и предлагает более 10 тематических исследований и проектов, практические семинары, наставничество с отраслевыми экспертами, 1 -на-1 с отраслевыми наставниками, более 400 часов обучения и помощи в трудоустройстве в ведущих фирмах.

Освойте технологии будущего

ПОДАТЬ ЗАЯВКУ НА ПРОГРАММУ ПРОДВИНУТОГО СЕРТИФИКАТА В НАУКЕ ДАННЫХ