1.1.1 Hadoop初始化
mkdir -p /usr/local/hadoop/hdfs/name
mkdir -p /usr/local/hadoop/hdfs/data
mkdir /var/run/hdfs-sockets/
source /etc/hadoop/hadoop-env.sh
hadoop namenode -format
1.1.2 Impala初始化
mkdir /var/log/impala
1.2 运行
1.2.1 启动hdfs
source /etc/hadoop/hadoop-env.sh
start-dfs.sh
调用jps应该能看到有NameNode,DataNode进程。
1.2.2 启动impala服务
1.2.2.1 Catalogd
nohup ${CATALOGCMD} >> catalog.log 2>&1 &
1.2.2.2 Statestored
nohup ${STATESTORECMD} >> statestore.log 2>&1 &
1.2.2.3 Impalad
nohup ${IMPALADCMD} -kudu_master_hosts=192.168.179.146:7051 >> impalad.log 2>&1 &
Impalad指定了使用的kudu的master地址。如果不需要可以不写参数 kudu_master_hosts。
注意:
在这里指定了kudu master的地址。需要在本机/etc/hosts中配置 kudu master。
比如
192.168.179.146 kudu
1.3 shell功能测试
打开shell
${IMPALA_HOME}/shell/impala-shell
查看版本
Select version();
查看数据库
Show databases;
查看表
Show tables;
创建表
create table test1
(
uid bigint primary key,
uname string
)
partition by hash(uid) partitions 2 stored as kudu;
创建外部表
假定在kudu上已有了一个表名为test1,在impala中创建一个表test12和这个test1做映射。
CREATE EXTERNAL TABLE IF NOT EXISTS test12 COMMENT 'test1'
STORED AS KUDU
TBLPROPERTIES ('kudu.table_name'='impala::default.test1');
退出shell
Quit;