Предимства, недостатъци и затруднения в производителността на HBase

Архитектурата на HBase винаги има „Единична точка на повреда” и няма механизъм за обработка на изключения, свързан с нея.

Тук ще научим какви са плюсовете и минусите на HBase и тесните места в производителността:

Тесни места в производителността в HBase

  • Във всяка производствена среда HBase работи с клъстер от повече от 5000 възела, само Hmaster действа като главен за всички подчинени регионални сървъри. Ако Hmaster падне, той може да бъде възстановен само след дълго време. Въпреки че клиентът може да се свърже с регионален сървър. Наличието на друг майстор е възможно, но само един ще бъде активен. Ще отнеме много време за активиране на втория Hmaster, ако основният 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и регионални сървъри)
    • По отношение на производителността изисква машини с висока памет
    • Разходите и поддръжката също са по-високи

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

Предимства на HBase

Тук ще научим какви са плюсовете/предимствата на HBase:

  • Може да съхранява големи набори от данни върху файловото хранилище на HDFS и ще агрегира и анализира милиарди редове, присъстващи в таблиците на HBase
  • В HBase базата данни може да се споделя
  • Operaоперации като четене и обработка на данни ще отнемат малко време в сравнение с традиционните релационни модели
  • Произволни операции за четене и запис
  • За онлайн аналитични операции HBase се използва широко.
  • Например: В банкови приложения, като актуализации на данни в реално време в банкомати, може да се използва HBase.

Недостатъци на HBase

Ето важните минуси/ограничения на HBase:

  • Не можем да очакваме напълно да използваме HBase като заместител на традиционните модели. Някои от функциите на традиционните модели не могат да се поддържат от HBase
  • HBase не може да изпълнява функции като SQL. Не поддържа SQL структура, така че не съдържа оптимизатор на заявки
  • HBase е интензивен процесор и памет с голям последователен входен или изходен достъп, докато като Map Reduce заданията са основно входно или изходно обвързани с фиксирана памет. HBase, интегриран с Map-reduce задания, ще доведе до непредвидими закъснения
  • HBase интегриран с pig и Кошер задания води до проблеми с паметта за известно време на клъстера
  • В споделена клъстерна среда, настройката изисква по-малко слотове за задачи на възел, за да се разпределят за изискванията на HBase CPU

Обобщете тази публикация с: