Учебники

7) Ограничение, Преимущество, Проблемы

Архитектура HBase всегда имеет функцию « Единой точки отказа », и с ней не связан механизм обработки исключений.

Узкие места производительности в HBase

  • В любой производственной среде HBase работает с кластером из более чем 5000 узлов, только Hmaster выступает в качестве главного для всех подчиненных серверов Region. Если Hmaster выходит из строя, его можно восстановить только через долгое время. Даже если клиент может подключиться к серверу региона. Возможно иметь другого мастера, но только один будет активным. Активация второго Хастера займет много времени, если основной Хмастер выйдет из строя. Итак, Hmaster — это узкое место в производительности.
  • В HBase мы не можем реализовывать какие-либо операции с данными и операции объединения, конечно же, мы можем реализовывать операции объединения с помощью MapReduce, что отнимает много времени на проектирование и разработку. Операции соединения таблиц сложно выполнить в HBase. В некоторых случаях невозможно создать операции соединения, связанные с таблицами, присутствующими в HBase.
  • HBase потребует нового дизайна, когда мы хотим перенести данные из внешних источников RDBMS на серверы HBase. Однако этот процесс занимает много времени.
  • HBase действительно сложен для запросов. Возможно, нам придется интегрировать HBase с некоторыми уровнями SQL, такими как Apache Phoenix, где мы можем писать запросы для запуска данных в HBase. Это действительно хорошо иметь Apache Phoenix поверх HBase.
  • Другим недостатком HBase является то, что мы не можем иметь более одной индексации в таблице, только столбец ключа строки действует как первичный ключ. Таким образом, производительность будет низкой, если мы захотим выполнить поиск по нескольким полям или другим, кроме ключа строки. Эту проблему мы можем решить, написав код MapReduce, интегрируя его с Apache SOLR и с Apache Phoenix.
  • Медленные улучшения в безопасности для разных пользователей для доступа к данным из HBase.
  • HBase не поддерживает частичные ключи полностью
  • HBase допускает только одну сортировку по умолчанию для каждой таблицы
  • Хранить бинарные файлы большого размера в HBase очень сложно
  • Хранилище HBase ограничит запросы и сортировку в реальном времени
  • Поиск по ключу и поиск по диапазону с точки зрения поиска в содержимом таблицы с использованием значений ключа, это ограничит запросы, выполняемые в режиме реального времени
  • Индексация по умолчанию отсутствует в HBase. Программисты должны определить несколько строк кода или сценария для выполнения функций индексации в HBase
  • Дорого с точки зрения аппаратных требований и выделения блоков памяти.
    • Для распределенных кластерных сред необходимо установить больше серверов (например, каждый сервер для NameNode, DataNodes, ZooKeeper и Region Servers)
    • Мудрость, требующая высокой производительности памяти
    • Стоимость и обслуживание также выше

Преимущество, ограничения и производительность HBase

Преимущество HBase:

  • Может хранить большие наборы данных поверх файлового хранилища HDFS и будет собирать и анализировать миллиарды строк, присутствующих в таблицах HBase
  • В HBase база данных может быть общей
  • Такие операции, как чтение и обработка данных, занимают небольшое количество времени по сравнению с традиционными реляционными моделями.
  • Случайные операции чтения и записи
  • Для аналитических операций в Интернете широко используется HBase.
  • Например: HBase может использоваться в банковских приложениях, таких как обновления данных в режиме реального времени в банкоматах.

Ограничения с HBase:

  • Мы не можем ожидать полностью использовать HBase вместо традиционных моделей. Некоторые традиционные функции не поддерживаются HBase
  • HBase не может выполнять такие функции, как SQL. Он не поддерживает структуру SQL, поэтому он не содержит оптимизатора запросов
  • HBase интенсивно использует ЦП и память с большим последовательным доступом к входу или выходу, в то время как задания Map Reduce в основном связаны с фиксированной памятью для ввода или вывода. HBase, интегрированный с заданиями Map-Reduction, приведет к непредсказуемым задержкам
  • HBase, интегрированный с заданиями pig и Hive, приводит к некоторым проблемам с памятью в кластере
  • В среде общего кластера для установки требуется меньше слотов задач на узел, чтобы выделить ее для требований процессора HBase