Hive - Cài đặt

Tất cả các dự án con Hadoop như Hive, Pig và HBase đều hỗ trợ hệ điều hành Linux. Do đó, bạn cần phải cài đặt bất kỳ hệ điều hành có hương vị Linux nào. Các bước đơn giản sau được thực hiện để cài đặt Hive:

Bước 1: Xác minh cài đặt JAVA

Java phải được cài đặt trên hệ thống của bạn trước khi cài đặt Hive. Hãy để chúng tôi xác minh cài đặt java bằng lệnh sau:

$ java –version

Nếu Java đã được cài đặt trên hệ thống của bạn, bạn sẽ thấy phản hồi sau:

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)

Nếu java chưa được cài đặt trong hệ thống của bạn, hãy làm theo các bước dưới đây để cài đặt java.

Cài đặt Java

Bước I:

Tải xuống java (JDK <phiên bản mới nhất> - X64.tar.gz) bằng cách truy cập liên kết sau http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html.

Sau đó, jdk-7u71-linux-x64.tar.gz sẽ được tải xuống hệ thống của bạn.

Bước II:

Nói chung, bạn sẽ tìm thấy tệp java đã tải xuống trong thư mục Tải xuống. Xác minh nó và giải nén tệp jdk-7u71-linux-x64.gz bằng các lệnh sau.

$ 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

Bước III:

Để cung cấp java cho tất cả người dùng, bạn phải chuyển nó đến vị trí “/ usr / local /”. Mở thư mục gốc và gõ các lệnh sau.

$ su
password:
# mv jdk1.7.0_71 /usr/local/
# exit

Bước IV:

Để thiết lập các biến PATH và JAVA_HOME, hãy thêm các lệnh sau vào tệp ~ / .bashrc.

export JAVA_HOME=/usr/local/jdk1.7.0_71
export PATH=$PATH:$JAVA_HOME/bin

Bây giờ áp dụng tất cả các thay đổi vào hệ thống đang chạy hiện tại.

$ source ~/.bashrc

Bước V:

Sử dụng các lệnh sau để định cấu hình các lựa chọn thay thế java:

# alternatives --install /usr/bin/java/java/usr/local/java/bin/java 2

# alternatives --install /usr/bin/javac/javac/usr/local/java/bin/javac 2

# alternatives --install /usr/bin/jar/jar/usr/local/java/bin/jar 2

# alternatives --set java/usr/local/java/bin/java

# alternatives --set javac/usr/local/java/bin/javac

# alternatives --set jar/usr/local/java/bin/jar

Bây giờ xác minh cài đặt bằng cách sử dụng lệnh java -version từ thiết bị đầu cuối như đã giải thích ở trên.

Bước 2: Xác minh cài đặt Hadoop

Hadoop phải được cài đặt trên hệ thống của bạn trước khi cài đặt Hive. Hãy để chúng tôi xác minh cài đặt Hadoop bằng lệnh sau:

$ hadoop version

Nếu Hadoop đã được cài đặt trên hệ thống của bạn, thì bạn sẽ nhận được phản hồi sau:

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

Nếu Hadoop chưa được cài đặt trên hệ thống của bạn, hãy tiến hành các bước sau:

Tải xuống Hadoop

Tải xuống và giải nén Hadoop 2.4.1 từ Apache Software Foundation bằng các lệnh sau.

$ 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

Cài đặt Hadoop trong Chế độ phân tán giả

Các bước sau được sử dụng để cài đặt Hadoop 2.4.1 ở chế độ phân tán giả.

Bước I: Thiết lập Hadoop

Bạn có thể đặt các biến môi trường Hadoop bằng cách thêm các lệnh sau vào ~/.bashrc tập tin.

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

Bây giờ áp dụng tất cả các thay đổi vào hệ thống đang chạy hiện tại.

$ source ~/.bashrc

Bước II: Cấu hình Hadoop

Bạn có thể tìm thấy tất cả các tệp cấu hình Hadoop ở vị trí “$ HADOOP_HOME / etc / hadoop”. Bạn cần thực hiện các thay đổi phù hợp trong các tệp cấu hình đó theo cơ sở hạ tầng Hadoop của mình.

$ cd $HADOOP_HOME/etc/hadoop

Để phát triển các chương trình Hadoop bằng java, bạn phải đặt lại các biến môi trường java trong hadoop-env.sh tập tin bằng cách thay thế JAVA_HOME giá trị với vị trí của java trong hệ thống của bạn.

export JAVA_HOME=/usr/local/jdk1.7.0_71

Dưới đây là danh sách các tệp mà bạn phải chỉnh sửa để định cấu hình Hadoop.

core-site.xml

Các core-site.xml tệp chứa thông tin như số cổng được sử dụng cho phiên bản Hadoop, bộ nhớ được cấp cho hệ thống tệp, giới hạn bộ nhớ để lưu trữ dữ liệu và kích thước của bộ đệm Đọc / Ghi.

Mở core-site.xml và thêm các thuộc tính sau vào giữa các thẻ <configuration> và </configuration>.

<configuration>

   <property> 
      <name>fs.default.name</name> 
      <value>hdfs://localhost:9000</value> 
   </property>
   
</configuration>

hdfs-site.xml

Các hdfs-site.xmltệp chứa thông tin như giá trị của dữ liệu sao chép, đường dẫn nút tên và đường dẫn nút dữ liệu của hệ thống tệp cục bộ của bạn. Nó có nghĩa là nơi bạn muốn lưu trữ cơ sở hạ tầng Hadoop.

Hãy để chúng tôi giả sử dữ liệu sau đây.

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

Mở tệp này và thêm các thuộc tính sau vào giữa các thẻ <configuration>, </configuration> trong tệp này.

<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: Trong tệp trên, tất cả các giá trị thuộc tính do người dùng xác định và bạn có thể thực hiện các thay đổi theo cơ sở hạ tầng Hadoop của mình.

yarn-site.xml

Tệp này được sử dụng để cấu hình sợi thành Hadoop. Mở tệp fiber-site.xml và thêm các thuộc tính sau vào giữa các thẻ <configuration>, </configuration> trong tệp này.

<configuration>

   <property> 
      <name>yarn.nodemanager.aux-services</name> 
      <value>mapreduce_shuffle</value> 
   </property>
   
</configuration>

mapred-site.xml

Tệp này được sử dụng để chỉ định khung MapReduce mà chúng tôi đang sử dụng. Theo mặc định, Hadoop chứa một mẫu sợi-site.xml. Trước hết, bạn cần sao chép tệp từ mapred-site, xml.template sang tệp mapred-site.xml bằng lệnh sau.

$ cp mapred-site.xml.template mapred-site.xml

Mở mapred-site.xml và thêm các thuộc tính sau vào giữa các thẻ <configuration>, </configuration> trong tệp này.

<configuration>

   <property> 
      <name>mapreduce.framework.name</name> 
      <value>yarn</value> 
   </property>

</configuration>

Xác minh cài đặt Hadoop

Các bước sau được sử dụng để xác minh cài đặt Hadoop.

Bước I: Đặt tên cho thiết lập nút

Thiết lập nút tên bằng lệnh “hdfs namenode -format” như sau.

$ cd ~
$ hdfs namenode -format

Kết quả mong đợi như sau.

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
 ************************************************************/

Bước II: Xác minh dfs Hadoop

Lệnh sau được sử dụng để bắt đầu dfs. Thực thi lệnh này sẽ khởi động hệ thống tệp Hadoop của bạn.

$ start-dfs.sh

Sản lượng dự kiến ​​như sau:

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]

Bước III: Xác minh Tập lệnh Sợi

Lệnh sau được sử dụng để bắt đầu tập lệnh sợi. Việc thực thi lệnh này sẽ bắt đầu các daemon sợi của bạn.

$ start-yarn.sh

Sản lượng dự kiến ​​như sau:

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

Bước IV: Truy cập Hadoop trên trình duyệt

Số cổng mặc định để truy cập Hadoop là 50070. Sử dụng url sau để tải các dịch vụ Hadoop trên trình duyệt của bạn.

http://localhost:50070/

Bước V: Xác minh tất cả các ứng dụng cho cụm

Số cổng mặc định để truy cập tất cả các ứng dụng của cụm là 8088. Sử dụng url sau để truy cập dịch vụ này.

http://localhost:8088/

Bước 3: Tải xuống Hive

Chúng tôi sử dụng hive-0.14.0 trong hướng dẫn này. Bạn có thể tải về bằng cách truy cập liên kết sauhttp://apache.petsads.us/hive/hive-0.14.0/.Giả sử nó được tải xuống thư mục / Downloads. Tại đây, chúng tôi tải xuống kho lưu trữ Hive có tên “apache-hive-0.14.0-bin.tar.gz” cho hướng dẫn này. Lệnh sau được sử dụng để xác minh tải xuống:

$ cd Downloads
$ ls

Khi tải xuống thành công, bạn sẽ thấy phản hồi sau:

apache-hive-0.14.0-bin.tar.gz

Bước 4: Cài đặt Hive

Các bước sau là bắt buộc để cài đặt Hive trên hệ thống của bạn. Chúng tôi giả sử rằng kho lưu trữ Hive được tải xuống thư mục / Downloads.

Giải nén và xác minh Kho lưu trữ Hive

Lệnh sau được sử dụng để xác minh tải xuống và giải nén kho lưu trữ hive:

$ tar zxvf apache-hive-0.14.0-bin.tar.gz
$ ls

Khi tải xuống thành công, bạn sẽ thấy phản hồi sau:

apache-hive-0.14.0-bin apache-hive-0.14.0-bin.tar.gz

Sao chép tệp vào thư mục / usr / local / hive

Chúng tôi cần sao chép các tệp từ siêu người dùng “su -”. Các lệnh sau được sử dụng để sao chép các tệp từ thư mục đã giải nén vào thư mục / usr / local / hive ”.

$ su -
passwd:

# cd /home/user/Download
# mv apache-hive-0.14.0-bin /usr/local/hive
# exit

Thiết lập môi trường cho Hive

Bạn có thể thiết lập môi trường Hive bằng cách nối các dòng sau vào ~/.bashrc tập tin:

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/*:.

Lệnh sau được sử dụng để thực thi tệp ~ / .bashrc.

$ source ~/.bashrc

Bước 5: Định cấu hình Hive

Để định cấu hình Hive với Hadoop, bạn cần chỉnh sửa hive-env.sh tệp, được đặt trong $HIVE_HOME/confdanh mục. Các lệnh sau chuyển hướng đến Hiveconfig thư mục và sao chép tệp mẫu:

$ cd $HIVE_HOME/conf
$ cp hive-env.sh.template hive-env.sh

Chỉnh sửa hive-env.sh tập tin bằng cách nối dòng sau:

export HADOOP_HOME=/usr/local/hadoop

Đã hoàn tất cài đặt Hive thành công. Bây giờ bạn yêu cầu một máy chủ cơ sở dữ liệu bên ngoài để cấu hình Metastore. Chúng tôi sử dụng cơ sở dữ liệu Apache Derby.

Bước 6: Tải xuống và cài đặt Apache Derby

Làm theo các bước dưới đây để tải xuống và cài đặt Apache Derby:

Tải xuống Apache Derby

Lệnh sau được sử dụng để tải xuống Apache Derby. Phải mất một thời gian để tải xuống.

$ cd ~
$ wget http://archive.apache.org/dist/db/derby/db-derby-10.4.2.0/db-derby-10.4.2.0-bin.tar.gz

Lệnh sau được sử dụng để xác minh tải xuống:

$ ls

Khi tải xuống thành công, bạn sẽ thấy phản hồi sau:

db-derby-10.4.2.0-bin.tar.gz

Giải nén và xác minh kho lưu trữ Derby

Các lệnh sau được sử dụng để giải nén và xác minh kho lưu trữ Derby:

$ tar zxvf db-derby-10.4.2.0-bin.tar.gz
$ ls

Khi tải xuống thành công, bạn sẽ thấy phản hồi sau:

db-derby-10.4.2.0-bin db-derby-10.4.2.0-bin.tar.gz

Sao chép tệp vào thư mục / usr / local / derby

Chúng ta cần sao chép từ siêu người dùng “su -”. Các lệnh sau được sử dụng để sao chép các tệp từ thư mục được giải nén vào thư mục / usr / local / derby:

$ su -
passwd:
# cd /home/user
# mv db-derby-10.4.2.0-bin /usr/local/derby
# exit

Thiết lập môi trường cho Derby

Bạn có thể thiết lập môi trường Derby bằng cách nối các dòng sau vào ~/.bashrc tập tin:

export DERBY_HOME=/usr/local/derby
export PATH=$PATH:$DERBY_HOME/bin
Apache Hive
18
export CLASSPATH=$CLASSPATH:$DERBY_HOME/lib/derby.jar:$DERBY_HOME/lib/derbytools.jar

Lệnh sau được sử dụng để thực thi ~/.bashrc tập tin:

$ source ~/.bashrc

Tạo thư mục để lưu trữ Metastore

Tạo một thư mục có tên dữ liệu trong thư mục $ DERBY_HOME để lưu trữ dữ liệu Metastore.

$ mkdir $DERBY_HOME/data

Cài đặt Derby và thiết lập môi trường đã hoàn tất.

Bước 7: Định cấu hình kho lưu trữ của Hive

Cấu hình Metastore có nghĩa là chỉ định cho Hive nơi lưu trữ cơ sở dữ liệu. Bạn có thể thực hiện việc này bằng cách chỉnh sửa tệp hive-site.xml, nằm trong thư mục $ HIVE_HOME / conf. Trước hết, sao chép tệp mẫu bằng lệnh sau:

$ cd $HIVE_HOME/conf
$ cp hive-default.xml.template hive-site.xml

Biên tập hive-site.xml và nối các dòng sau giữa các thẻ <configuration> và </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>

Tạo một tệp có tên jpox.properties và thêm các dòng sau vào đó:

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

Bước 8: Xác minh cài đặt Hive

Trước khi chạy Hive, bạn cần tạo /tmpvà một thư mục Hive riêng biệt trong HDFS. Ở đây, chúng tôi sử dụng/user/hive/warehousethư mục. Bạn cần đặt quyền ghi cho các thư mục mới tạo này như hình dưới đây:

chmod g+w

Bây giờ hãy đặt chúng trong HDFS trước khi xác minh Hive. Sử dụng các lệnh sau:

$ $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

Các lệnh sau được sử dụng để xác minh cài đặt Hive:

$ cd $HIVE_HOME
$ bin/hive

Khi cài đặt thành công Hive, bạn sẽ thấy phản hồi sau:

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 file=/tmp/hadoop/hive_job_log_hadoop_201312121621_1494929084.txt
………………….
hive>

Lệnh mẫu sau được thực hiện để hiển thị tất cả các bảng:

hive> show tables; 
OK 
Time taken: 2.798 seconds 
hive>