HCatalog - Установка
Все подпроекты Hadoop, такие как Hive, Pig и HBase, поддерживают операционную систему Linux. Следовательно, вам необходимо установить версию Linux в вашей системе. HCatalog объединяется с Hive Installation 26 марта 2013 г. Начиная с версии Hive-0.11.0, HCatalog поставляется с установкой Hive. Поэтому следуйте инструкциям ниже, чтобы установить Hive, который, в свою очередь, автоматически установит HCatalog в вашей системе.
Шаг 1. Проверка установки JAVA
Перед установкой Hive в вашей системе должна быть установлена Java. Вы можете использовать следующую команду, чтобы проверить, установлена ли уже в вашей системе Java:
$ java –version
Если Java уже установлена в вашей системе, вы увидите следующий ответ -
java version "1.7.0_71"
Java(TM) SE Runtime Environment (build 1.7.0_71-b13)
Java HotSpot(TM) Client VM (build 25.0-b02, mixed mode)
Если в вашей системе не установлена Java, вам необходимо выполнить действия, указанные ниже.
Шаг 2: установка Java
Загрузите Java (JDK <последняя версия> - X64.tar.gz), перейдя по следующей ссылке http://www.oracle.com/
потом jdk-7u71-linux-x64.tar.gz будет загружен в вашу систему.
Обычно загруженный файл Java находится в папке «Загрузки». Проверьте это и извлекитеjdk-7u71-linux-x64.gz файл, используя следующие команды.
$ cd Downloads/
$ ls
jdk-7u71-linux-x64.gz
$ tar zxf jdk-7u71-linux-x64.gz
$ ls
jdk1.7.0_71 jdk-7u71-linux-x64.gz
Чтобы сделать Java доступной для всех пользователей, вы должны переместить ее в папку «/ usr / local /». Откройте root и введите следующие команды.
$ su
password:
# mv jdk1.7.0_71 /usr/local/
# exit
Для настройки PATH и JAVA_HOME переменных, добавьте следующие команды в ~/.bashrc файл.
export JAVA_HOME=/usr/local/jdk1.7.0_71
export PATH=PATH:$JAVA_HOME/bin
Теперь проверьте установку с помощью команды java -version с терминала, как описано выше.
Шаг 3. Проверка установки Hadoop
Перед установкой Hive необходимо установить Hadoop в вашей системе. Давайте проверим установку Hadoop, используя следующую команду -
$ hadoop version
Если Hadoop уже установлен в вашей системе, вы получите следующий ответ -
Hadoop 2.4.1
Subversion https://svn.apache.org/repos/asf/hadoop/common -r 1529768
Compiled by hortonmu on 2013-10-07T06:28Z
Compiled with protoc 2.5.0
From source with checksum 79e53ce7994d1628b240f09af91e1af4
Если Hadoop не установлен в вашей системе, выполните следующие действия:
Шаг 4: загрузка Hadoop
Загрузите и извлеките Hadoop 2.4.1 из Apache Software Foundation, используя следующие команды.
$ su
password:
# cd /usr/local
# wget http://apache.claz.org/hadoop/common/hadoop-2.4.1/
hadoop-2.4.1.tar.gz
# tar xzf hadoop-2.4.1.tar.gz
# mv hadoop-2.4.1/* to hadoop/
# exit
Шаг 5: установка Hadoop в псевдораспределенном режиме
Следующие шаги используются для установки Hadoop 2.4.1 в псевдораспределенном режиме.
Настройка Hadoop
Вы можете установить переменные среды Hadoop, добавив следующие команды в ~/.bashrc файл.
export HADOOP_HOME=/usr/local/hadoop
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_COMMON_HOME=$HADOOP_HOME
export HADOOP_HDFS_HOME=$HADOOP_HOME
export YARN_HOME=$HADOOP_HOME
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin
Теперь примените все изменения к текущей работающей системе.
$ source ~/.bashrc
Конфигурация Hadoop
Вы можете найти все файлы конфигурации Hadoop в папке «$ HADOOP_HOME / etc / hadoop». Вам необходимо внести соответствующие изменения в эти файлы конфигурации в соответствии с вашей инфраструктурой Hadoop.
$ cd $HADOOP_HOME/etc/hadoop
Для разработки программ Hadoop с использованием Java необходимо сбросить переменные среды Java в hadoop-env.sh файл, заменив JAVA_HOME значение с расположением Java в вашей системе.
export JAVA_HOME=/usr/local/jdk1.7.0_71
Ниже приведен список файлов, которые необходимо отредактировать для настройки Hadoop.
core-site.xml
В core-site.xml Файл содержит такую информацию, как номер порта, используемый для экземпляра Hadoop, память, выделенная для файловой системы, ограничение памяти для хранения данных и размер буферов чтения / записи.
Откройте core-site.xml и добавьте следующие свойства между тегами <configuration> и </configuration>.
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
hdfs-site.xml
В hdfs-site.xmlФайл содержит такую информацию, как значение данных репликации, путь узла имени и путь узла данных вашей локальной файловой системы. Это означает место, где вы хотите хранить инфраструктуру Hadoop.
Предположим следующие данные.
dfs.replication (data replication value) = 1
(In the following path /hadoop/ is the user name.
hadoopinfra/hdfs/namenode is the directory created by hdfs file system.)
namenode path = //home/hadoop/hadoopinfra/hdfs/namenode
(hadoopinfra/hdfs/datanode is the directory created by hdfs file system.)
datanode path = //home/hadoop/hadoopinfra/hdfs/datanode
Откройте этот файл и добавьте следующие свойства между тегами <configuration>, </configuration> в этом файле.
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.name.dir</name>
<value>file:///home/hadoop/hadoopinfra/hdfs/namenode</value>
</property>
<property>
<name>dfs.data.dir</name>
<value>file:///home/hadoop/hadoopinfra/hdfs/datanode</value>
</property>
</configuration>
Note - В приведенном выше файле все значения свойств определяются пользователем, и вы можете вносить изменения в соответствии с вашей инфраструктурой Hadoop.
пряжа-site.xml
Этот файл используется для настройки пряжи в Hadoop. Откройте файл yarn-site.xml и добавьте следующие свойства между тегами <configuration>, </configuration> в этом файле.
<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
mapred-site.xml
Этот файл используется, чтобы указать, какой фреймворк MapReduce мы используем. По умолчанию Hadoop содержит шаблон yarn-site.xml. Прежде всего, вам нужно скопировать файл изmapred-site,xml.template к mapred-site.xml файл, используя следующую команду.
$ cp mapred-site.xml.template mapred-site.xml
Откройте файл mapred-site.xml и добавьте следующие свойства между тегами <configuration>, </configuration> в этом файле.
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
Шаг 6. Проверка установки Hadoop
Следующие шаги используются для проверки установки Hadoop.
Настройка Namenode
Настройте namenode с помощью команды «hdfs namenode -format» следующим образом:
$ cd ~
$ hdfs namenode -format
Ожидаемый результат выглядит следующим образом -
10/24/14 21:30:55 INFO namenode.NameNode: STARTUP_MSG:
/************************************************************
STARTUP_MSG: Starting NameNode
STARTUP_MSG: host = localhost/192.168.1.11
STARTUP_MSG: args = [-format]
STARTUP_MSG: version = 2.4.1
...
...
10/24/14 21:30:56 INFO common.Storage: Storage directory
/home/hadoop/hadoopinfra/hdfs/namenode has been successfully formatted.
10/24/14 21:30:56 INFO namenode.NNStorageRetentionManager: Going to retain 1
images with txid >= 0 10/24/14 21:30:56 INFO util.ExitUtil: Exiting with status 0
10/24/14 21:30:56 INFO namenode.NameNode: SHUTDOWN_MSG:
/************************************************************
SHUTDOWN_MSG: Shutting down NameNode at localhost/192.168.1.11
************************************************************/
Проверка Hadoop DFS
Следующая команда используется для запуска DFS. Выполнение этой команды запустит вашу файловую систему Hadoop.
$ start-dfs.sh
Ожидаемый результат выглядит следующим образом -
10/24/14 21:37:56 Starting namenodes on [localhost]
localhost: starting namenode, logging to
/home/hadoop/hadoop-2.4.1/logs/hadoop-hadoop-namenode-localhost.out localhost:
starting datanode, logging to
/home/hadoop/hadoop-2.4.1/logs/hadoop-hadoop-datanode-localhost.out
Starting secondary namenodes [0.0.0.0]
Проверка скрипта пряжи
Следующая команда используется для запуска сценария Yarn. Выполнение этой команды запустит ваши демоны Yarn.
$ start-yarn.sh
Ожидаемый результат выглядит следующим образом -
starting yarn daemons
starting resourcemanager, logging to /home/hadoop/hadoop-2.4.1/logs/
yarn-hadoop-resourcemanager-localhost.out
localhost: starting nodemanager, logging to
/home/hadoop/hadoop-2.4.1/logs/yarn-hadoop-nodemanager-localhost.out
Доступ к Hadoop в браузере
Номер порта по умолчанию для доступа к Hadoop - 50070. Используйте следующий URL-адрес, чтобы получить услуги Hadoop в своем браузере.
http://localhost:50070/
Проверить все приложения для кластера
Номер порта по умолчанию для доступа ко всем приложениям кластера - 8088. Используйте следующий URL-адрес для посещения этой службы.
http://localhost:8088/
Когда вы закончите установку Hadoop, перейдите к следующему шагу и установите Hive в вашей системе.
Шаг 7: загрузка Hive
В этом руководстве мы используем hive-0.14.0. Вы можете скачать его, перейдя по следующей ссылкеhttp://apache.petsads.us/hive/hive-0.14.0/. Предположим, он загружается на/Downloadsкаталог. Здесь мы загружаем архив Hive с именем «apache-hive-0.14.0-bin.tar.gz”Для этого учебника. Следующая команда используется для проверки загрузки -
$ cd Downloads
$ ls
При успешной загрузке вы увидите следующий ответ -
apache-hive-0.14.0-bin.tar.gz
Шаг 8: установка Hive
Следующие шаги необходимы для установки Hive в вашей системе. Предположим, архив Hive загружен на/Downloads каталог.
Извлечение и проверка архива улья
Следующая команда используется для проверки загрузки и извлечения архива Hive -
$ tar zxvf apache-hive-0.14.0-bin.tar.gz
$ ls
При успешной загрузке вы увидите следующий ответ -
apache-hive-0.14.0-bin apache-hive-0.14.0-bin.tar.gz
Копирование файлов в каталог / usr / local / hive
Нам нужно скопировать файлы от суперпользователя «su -». Следующие команды используются для копирования файлов из извлеченного каталога в/usr/local/hive»Каталог.
$ su -
passwd:
# cd /home/user/Download
# mv apache-hive-0.14.0-bin /usr/local/hive
# exit
Настройка среды для Hive
Вы можете настроить среду Hive, добавив следующие строки в ~/.bashrc файл -
export HIVE_HOME=/usr/local/hive
export PATH=$PATH:$HIVE_HOME/bin
export CLASSPATH=$CLASSPATH:/usr/local/Hadoop/lib/*:.
export CLASSPATH=$CLASSPATH:/usr/local/hive/lib/*:.
Следующая команда используется для выполнения файла ~ / .bashrc.
$ source ~/.bashrc
Шаг 9: Настройка Hive
Чтобы настроить Hive с Hadoop, вам необходимо отредактировать hive-env.sh файл, который помещается в $HIVE_HOME/confкаталог. Следующие команды перенаправляют в Hiveconfig папку и скопируйте файл шаблона -
$ cd $HIVE_HOME/conf
$ cp hive-env.sh.template hive-env.sh
Отредактируйте hive-env.sh файл, добавив следующую строку -
export HADOOP_HOME=/usr/local/hadoop
На этом установка Hive завершена. Теперь вам потребуется внешний сервер базы данных для настройки Metastore. Мы используем базу данных Apache Derby.
Шаг 10: загрузка и установка Apache Derby
Следуйте инструкциям ниже, чтобы загрузить и установить Apache Derby -
Скачивание Apache Derby
Следующая команда используется для загрузки Apache Derby. Скачивание займет некоторое время.
$ cd ~
$ wget http://archive.apache.org/dist/db/derby/db-derby-10.4.2.0/db-derby-10.4.2.0-bin.tar.gz
Следующая команда используется для проверки загрузки -
$ ls
При успешной загрузке вы увидите следующий ответ -
db-derby-10.4.2.0-bin.tar.gz
Извлечение и проверка архива Derby
Следующие команды используются для извлечения и проверки архива Derby:
$ tar zxvf db-derby-10.4.2.0-bin.tar.gz
$ ls
При успешной загрузке вы увидите следующий ответ -
db-derby-10.4.2.0-bin db-derby-10.4.2.0-bin.tar.gz
Копирование файлов в каталог / usr / local / derby
Нам нужно скопировать от суперпользователя «su -». Следующие команды используются для копирования файлов из извлеченного каталога в/usr/local/derby каталог -
$ su -
passwd:
# cd /home/user
# mv db-derby-10.4.2.0-bin /usr/local/derby
# exit
Настройка среды для Дерби
Вы можете настроить среду Derby, добавив следующие строки в ~/.bashrc файл -
export DERBY_HOME=/usr/local/derby
export PATH=$PATH:$DERBY_HOME/bin
export CLASSPATH=$CLASSPATH:$DERBY_HOME/lib/derby.jar:$DERBY_HOME/lib/derbytools.jar
Следующая команда используется для выполнения ~/.bashrc file -
$ source ~/.bashrc
Создать каталог для Metastore
Создайте каталог с именем data в каталоге $ DERBY_HOME для хранения данных Metastore.
$ mkdir $DERBY_HOME/data
Установка Derby и настройка среды завершены.
Шаг 11. Настройка хранилища метаданных Hive
Настройка Metastore означает указание Hive, где хранится база данных. Вы можете сделать это, отредактировавhive-site.xml файл, который находится в $HIVE_HOME/confкаталог. Прежде всего, скопируйте файл шаблона, используя следующую команду -
$ cd $HIVE_HOME/conf
$ cp hive-default.xml.template hive-site.xml
редактировать hive-site.xml и добавьте следующие строки между тегами <configuration> и </configuration> -
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:derby://localhost:1527/metastore_db;create = true</value>
<description>JDBC connect string for a JDBC metastore</description>
</property>
Создайте файл с именем jpox.properties и добавьте в него следующие строки -
javax.jdo.PersistenceManagerFactoryClass = org.jpox.PersistenceManagerFactoryImpl
org.jpox.autoCreateSchema = false
org.jpox.validateTables = false
org.jpox.validateColumns = false
org.jpox.validateConstraints = false
org.jpox.storeManagerType = rdbms
org.jpox.autoCreateSchema = true
org.jpox.autoStartMechanismMode = checked
org.jpox.transactionIsolation = read_committed
javax.jdo.option.DetachAllOnCommit = true
javax.jdo.option.NontransactionalRead = true
javax.jdo.option.ConnectionDriverName = org.apache.derby.jdbc.ClientDriver
javax.jdo.option.ConnectionURL = jdbc:derby://hadoop1:1527/metastore_db;create = true
javax.jdo.option.ConnectionUserName = APP
javax.jdo.option.ConnectionPassword = mine
Шаг 12: Проверка установки Hive
Перед запуском Hive вам необходимо создать /tmpпапка и отдельная папка Hive в HDFS. Здесь мы используем/user/hive/warehouseпапка. Вам необходимо установить разрешение на запись для этих вновь созданных папок, как показано ниже -
chmod g+w
Теперь установите их в HDFS перед проверкой Hive. Используйте следующие команды -
$ $HADOOP_HOME/bin/hadoop fs -mkdir /tmp
$ $HADOOP_HOME/bin/hadoop fs -mkdir /user/hive/warehouse
$ $HADOOP_HOME/bin/hadoop fs -chmod g+w /tmp
$ $HADOOP_HOME/bin/hadoop fs -chmod g+w /user/hive/warehouse
Следующие команды используются для проверки установки Hive:
$ cd $HIVE_HOME
$ bin/hive
При успешной установке Hive вы увидите следующий ответ -
Logging initialized using configuration in
jar:file:/home/hadoop/hive-0.9.0/lib/hive-common-0.9.0.jar!/
hive-log4j.properties Hive history
=/tmp/hadoop/hive_job_log_hadoop_201312121621_1494929084.txt
………………….
hive>
Вы можете выполнить следующий пример команды, чтобы отобразить все таблицы -
hive> show tables;
OK Time taken: 2.798 seconds
hive>
Шаг 13: Проверьте установку HCatalog
Используйте следующую команду, чтобы установить системную переменную HCAT_HOME для HCatalog Home.
export HCAT_HOME = $HiVE_HOME/HCatalog
Используйте следующую команду, чтобы проверить установку HCatalog.
cd $HCAT_HOME/bin
./hcat
Если установка прошла успешно, вы увидите следующий вывод -
SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory]
usage: hcat { -e "<query>" | -f "<filepath>" }
[ -g "<group>" ] [ -p "<perms>" ]
[ -D"<name> = <value>" ]
-D <property = value> use hadoop value for given property
-e <exec> hcat command given from command line
-f <file> hcat commands in file
-g <group> group for the db/table specified in CREATE statement
-h,--help Print help information
-p <perms> permissions for the db/table specified in CREATE statement