2015-07-04 6 views
0

В последнее время я много читаю о HBase, и я немного смущен относительно роли HMaster и Zookeeper в архитектуре HBase.HMaster vs Zookeeper - HBase

  • Когда клиент запрашивает данные, кто получает этот запрос? Предполагая, что это первый запрос. Я понимаю, что последующие запросы могут быть напрямую переданы серверам региона. Но для этого необходимо найти местоположения метафайлов, а затем выполнить поиск или сканирование на конкретной мета-таблице на сервере региона.

Причина, по которой я спрашиваю, если я использую Java, я бы использовал класс HConnectionManager для создания соединения. Похоже, что HConnectionManager уже имеет кэш доступных регионов. Причина, по которой создается кеш, будет заключаться в том, что некоторое количество запросов выполняется раньше, но что делать, если кеша там нет, и это первый запрос.

Кто берет первый запрос на HBase, будет ли он кворумом zookeeper? Мы отправляем файл hbase-site.xml для класса HBaseConfiguration.

  • Также я немного смущен тем, как мы определяем «клиент»?

Другая вещь, которую я прочитал, - это метаинформация, которую кэшируется на «клиенте», это правда даже в случае HBase REST? Будет ли здесь клиент HMaster или фактическим пользователем, который делает вызов REST. Если это так, это не создает угрозу безопасности, если метаданные подвергаются воздействию клиента.

ответ

0

Клиенты подключаются к ZooKeeper, чтобы получить новейшее состояние. Роль HBaseMaster заключается в том, чтобы убедиться, что этот список верен (т. Е. Назначить регионы регионарным серверам при запуске, сбоях и т. Д.). Клиенты свяжутся с HBaseMaster только для целей администратора, например. создание таблицы, изменение ее структуры и т. д. (через класс HBaseAdmin). Вы можете больше узнать об этом here.

В случае HBase REST клиент посылает запрос REST на сервер REST, который удерживает клиента Hbase внутренне

0

Ниже базы ответов на HBase-1.0.1.1:

1.Когда клиент запрашивает для данные, кто получает этот запрос?

a) искать zookeeper для hbase: расположение мета-региона и кеш-мета регион для будущего.

b) сканирование hbase: meta в регионе сервера и получить регион, в котором мы нуждаемся. Клиенту также кэшировать регион.

c) запросите регион сервер.

2. Кто принимает первый запрос на HBase, будет ли он кворумом для zookeeper?

Да, если все сначала, другое может быть метаобластью или областью пользовательских таблиц.

3.security

Вы можете использовать kerberos.It поддерживается HBase.