使用Mac在15分钟内创建Hadoop和Hive环境(使用Docker)

首先

操作系统版本:Mac OS 10.14.6 (Mojave)

我很久没有接触Hive了,所以我开始寻找一种快速准备环境的方法。
我发现了一种2017年的文章,介绍了在Mac上用10分钟搭建Hadoop和Hive环境的方法。不过最近流行使用容器技术,所以我决定不在操作系统上直接安装,而是尝试在Docker上安装。

这次使用的是这个。

CDH 5.13的快速入门
https://www.cloudera.com/downloads/quickstart_vms/5-13.html

环境搭建大约花了15分钟的时间。(不包括网站注册和下载时间,直到在Hive控制台上能够执行HiveQL为止)

DockerなのでMacOSに限らず、Windowsでも環境構築できます。

事前準備

作为事前准备,下载并安装Docker Desktop for Mac。
https://docs.docker.com/docker-for-mac/install/

有些人写了一篇友善的文章,你也可以参考一下。
如何在Mac上安装Docker。

以下是我使用的Docker版本。

% docker --version
Docker version 19.03.5, build 633a0ea

把Docker预先启动。

下载Docker镜像

image.png

4.7GBくらいあるので、しばらく待つ。
ダウンロードしたファイルのファイル名は、cloudera-quickstart-vm-5.13.0-0-beta-docker.tar.gz。

引导和启动

導入手順の詳細は、こちらに載っています。
https://docs.cloudera.com/documentation/enterprise/5-13-x/topics/quickstart_docker_container.html

    Mac OS標準の解凍ツールでtar.gzを解凍(単純にFinder上でダブルクリック)すると、tarファイルができる。Windowsの場合は、7-zipを使うと良いとのこと。
% ls
cloudera-quickstart-vm-5.13.0-0-beta-docker.tar

2.docker importする。これには7分位かかりました。

% docker import cloudera-quickstart-vm-5.13.0-0-beta-docker.tar

可以通过运行命令 “docker images” 来确认镜像的ID。

% docker images
REPOSITORY                     TAG                 IMAGE ID            CREATED             SIZE
<none>                         <none>              d28a1384e74e        13 minutes ago      7GB

使用Docker run命令启动镜像。
“d28a1384e74e”是上述镜像的ID。加上-d选项在后台运行。

% docker run --hostname=quickstart.cloudera --privileged=true -t -i -p 8888 -d d28a1384e74e /usr/bin/docker-quickstart

5.docker psで起動状態とコンテナIDを確認する。

% docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                     NAMES
e320a15be1d9        d28a1384e74e        "/usr/bin/docker-qui…"   2 minutes ago       Up 2 minutes        0.0.0.0:32768->8888/tcp   nifty_almeida

启动花了几分钟的时间。

登录Hive控制台。

1. 使用docker attach命令进入控制台。
“e320a15be1d9″是容器的ID,刚才通过docker ps命令查找得到的。

 % docker attach e320a15be1d9
 [root@quickstart /]#

順便提一下,要切換回原本的 macOS,只需要按下 Ctrl+p,Ctrl+q。

[root@quickstart /]#  <= Ctrl+p, Ctrl+qを押す
read escape sequence
 %

2. 启动Hive控制台。在QuickStart中,已经包含了Hive并且在容器启动时也会自动启动,只需要输入hive即可。

[root@quickstart /]# hive


Logging initialized using configuration in file:/etc/hive/conf.dist/hive-log4j.properties
WARNING: Hive CLI is deprecated and migration to Beeline is recommended.
hive>

数年前,我还记得在搭建环境方面遇到了很多困难… Docker真是太棒了。

从这里开始,我们会创建一个 CSV 文件,将它放入 HDFS,并创建一个外部表。然后,我们将在上述的 Hive 控制台上频繁地执行查询操作。

這就是以上的內容。

bannerAds