kudu集成impala

Kudu 与 Apache Impala (孵化)紧密集成,允许开发人员使用 Impala 使用 Impala 的 SQL 语法从 Kudu tablets 插入,查询,更新和删除数据;
安装impala
安装规划

:Imppalla catalog服务将SQL语句做出的元数据变化通知给集群的各个节点 :Impala Statestore检查集群各个节点上Impala daemon的健康状态
主节点hadoop01执行以下命令进行安装
yum install impala -y
yum install impala-server -y
yum install impala-state-store -y
yum install impala-catalog -y
yum install impala-shell -y
从节点hadoop02与hadoop03安装以下服务
yum install impala-server -y yum install impala -y
所有节点配置impala
修改hive-site.xml
impala依赖于hive,所以首先需要进行hive的配置修改;
Hadoop01机器修改hive-site.xml内容如下
hive-site.xml配置
vim /opt/cdh/hive-1.1.0-cdh5.14.0/conf/hive-site.xml
<configuration>
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://hadoop01:3306/hive?createDatabaseIfNotExist=true</value>
</property>
<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.jdbc.Driver</value>
</property>
<property>
<name>javax.jdo.option.ConnectionUserName</name>
<value>root</value>
</property>
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>root</value>
</property>
<property>
<name>hive.cli.print.current.db</name>
<value>true</value>
</property>
<property>
<name>hive.cli.print.header</name>
<value>true</value>
</property>
<property>
<name>hive.server2.thrift.bind.host</name>
<value>hadoop01</value>
</property>
<property>
<name>hive.metastore.uris</name>
<value>thrift://hadoop01:9083</value>
</property>
<property>
<name>hive.metastore.client.socket.timeout</name>
<value></value>
</property> </configuration>
添加mysql的jar包,放入hive的lib目录下
(cp mysql的connection包,复制在hive的lib下)
将hive的安装包发送到hadoop02与hadoop03机器上
在hadoop01机器上面执行
cd /opt/cdh/
scp -r hive-1.1.-cdh5.14.0/ hadoop02:$PWD
scp -r hive-1.1.-cdh5.14.0/ hadoop03:$PWD
启动hive的metastore服务
启动hive的metastore服务(如果impala报错,则启动全部hive)
Hadoop01机器启动hive的metastore服务
cd /opt/cdh/hive-1.1.-cdh5.14.0
nohup bin/hive --service metastore &
注意:一定要保证mysql的服务正常启动,否则metastore的服务不能够启动
所有hadoop节点修改hdfs-site.xml添加以下内容
所有节点创建文件夹
mkdir -p /var/run/hdfs-sockets
修改所有节点的hdfs-site.xml添加以下配置,修改完之后重启hdfs集群生效
vim /opt/cdh/hadoop-2.6.0-cdh5.14.0/etc/hadoop/hdfs-site.xml
<configuration>
<!-- 设置hdfs副本数量 -->
<property>
<name>dfs.replication</name>
<value></value>
</property> <property>
<name>dfs.secondary.http.address</name>
<value>hadoop01:</value>
</property> <property>
<name>dfs.client.read.shortcircuit</name>
<value>true</value>
</property>
<property>
<name>dfs.domain.socket.path</name>
<value>/var/run/hdfs-sockets/dn</value>
</property>
<property>
<name>dfs.client.file-block-storage-locations.timeout.millis</name>
<value></value>
</property>
<property>
<name>dfs.datanode.hdfs-blocks-metadata.enabled</name>
<value>true</value>
</property> <property>
<name>dfs.permissions.enabled</name>
<value>false</value>
</property>
</configuration>
注意:root用户不需要这一步操作了,实际工作当中普通用户需要这一步操作
创建文件夹 /var/run/hadoop-sockets/
给这个文件夹赋予权限,例如如果我们用的是普通用户,那就直接赋予普通用户的权限
例如:
chown -R angel:angel /var/run/hadoop-sockets/
因为我这里直接用的root用户,所以不需要赋权限了
重启hdfs
重启hdfs文件系统
Hadoop01服务器上面执行以下命令
cd /opt/cdh/hadoop-2.6.-cdh5.14.0/ sbin/stop-dfs.sh sbin/start-dfs.sh
创建hadoop与hive的配置文件的连接
impala的配置目录为 /etc/impala/conf
这个路径下面需要把core-site.xml,hdfs-site.xml以及hive-site.xml拷贝到这里来,但是我们这里使用软连接的方式会更好
所有节点执行以下命令创建链接到impala配置目录下来
ln -s /opt/cdh/hadoop-2.6.-cdh5.14.0/etc/hadoop/core-site.xml /etc/impala/conf/core-site.xml
ln -s /opt/cdh/hadoop-2.6.-cdh5.14.0/etc/hadoop/hdfs-site.xml /etc/impala/conf/hdfs-site.xml
ln -s /opt/cdh/hive-1.1.-cdh5.14.0/conf/hive-site.xml /etc/impala/conf/hive-site.xml
所有节点修改impala默认配置
所有节点更改impala默认配置文件以及添加mysql的连接驱动包
vim /etc/default/impala
IMPALA_CATALOG_SERVICE_HOST=hadoop01
IMPALA_STATE_STORE_HOST=hadoop01
所有节点创建mysql的驱动包的软连接
ln -s /opt/cdh/hive-1.1.-cdh5.14.0/lib/mysql-connector-java-5.1..jar /usr/share/java/mysql-connector-java.jar
所有节点修改bigtop的java路径
修改bigtop的java_home路径
vim /etc/default/bigtop-utils
export JAVA_HOME=/opt/cdh/jdk1..0_181
启动impala服务
主节点hadoop01启动以下三个服务进程
service impala-state-store start
service impala-catalog start
service impala-server start service impala-state-store stop
service impala-catalog stop
service impala-server stop
从节点启动hadoop02与hadoop03s启动impala-server
service impala-server start|stop
查看impala进程是否存在
ps -ef | grep impala
注意:启动之后所有关于impala的日志默认都在/var/log/impala 这个路径下,hadoop01机器上面应该有三个进程,hadoop02与hadoop03机器上面只有一个进程,如果进程个数不对,去对应目录下查看报错日志
浏览器页面访问
访问impalad的管理界面http://hadoop01:25000/
访问statestored的管理界面http://hadoop01:25010/
将impala与kudu整合
在每一个服务器的impala的配置文件中添加如下配置:
vim /etc/default/impala
在IMPALA_SERVER_ARGS下添加:-kudu_master_hosts=hadoop01:,hadoop02:,hadoop03:
kudu集成impala的更多相关文章
- 实战kudu集成impala
推荐阅读: 论主数据的重要性(正确理解元数据.数据元) CDC+ETL实现数据集成方案 Java实现impala操作kudu 实战kudu集成impala impala基本介绍 im ...
- impala记录-安装kudu和impala
1.配置/etc/yum.repos.d clouder-kudu.repo [cloudera-kudu]# Packages for Cloudera's Distribution for kud ...
- ambari hdp 集成 impala
1.下载ambari-impala-service VERSION=`hdp-select status hadoop-client | sed 's/hadoop-client - \([0-9]\ ...
- ambari集成impala
1.查看hdp版本,可在ambari-agent节点上查看 VERSION=`hdp-select status hadoop-client | sed 's/hadoop-client - \([0 ...
- Java实现impala操作kudu
推荐阅读: 论主数据的重要性(正确理解元数据.数据元) CDC+ETL实现数据集成方案 Java实现impala操作kudu 实战kudu集成impala 对于impala而言,开发人员是可以通过JD ...
- kudu基础入门
1.kudu介绍 1.1 背景介绍 在KUDU之前,大数据主要以两种方式存储: (1)静态数据: 以 HDFS 引擎作为存储引擎,适用于高吞吐量的离线大数据分析场景.这类存储的局限性是数据无法进行随机 ...
- kudu导入文件(基于impala)
kudu是cloudera开源的运行在hadoop平台上的列式存储系统,拥有Hadoop生态系统应用的常见技术特性,运行在一般的商用硬件上,支持水平扩展,高可用,集成impala后,支持标准sql语句 ...
- Kudu+Impala介绍
Kudu+Impala介绍 概述 Kudu和Impala均是Cloudera贡献给Apache基金会的顶级项目.Kudu作为底层存储,在支持高并发低延迟kv查询的同时,还保持良好的Scan性能,该特性 ...
- impala和kudu使用的小细节
七堇年:我们要有最朴素的生活与最遥远的梦想 . 即使明日天寒地冻,路远马亡. 加油! 之前入门的小错误总结,建表都会出错,真的好尴尬 还是要做好笔记 第一个错误: error:AnalysisEx ...
随机推荐
- Light OJ 1102
题意: 给你一个数 N , 求分成 K 个数 (可以为 0 ) 的种数: 思路: 类似 在K个抽屉放入 N 个苹果, 不为0, 就是 在 n-1 个空隙中选 m-1个: 为 0, 就可以先在 K 个抽 ...
- 前端 ---JS中的面向对象
JS中的面向对象 创建对象的几种常用方式 1.使用Object或对象字面量创建对象 2.工厂模式创建对象 3.构造函数模式创建对象 4.原型模式创建对象 1.使用Object或对象字面量创建对象 ...
- 分布式服务管理框架 ZooKeeper
核心功能 统一命名服务(Name Service) 通过有层次的目录结构产生唯一的名称,同时可以将名称关联到特定资源 配置管理(Configuration Management) ...
- webStorm 快捷键 + 浏览器
webStorm 快捷键 shift + enter 不管光标在哪个位置 新建一行 Ctrl + G 查找行Ctrl + B 查找函数Ctrl + D ...
- swift 学习- 27 -- 访问控制
// 访问控制 可以限定其源文件 或模块中的代码对你的代码的访问级别, 这个特性可以让我们隐藏代码的一些实现细节, 并且可以为其他人可以访问和使用的代码提供接口 // 你可以明确地给某个类型 (类, ...
- centos7 nginx图片 服务器可以访问ftp用户上传的图片资源的配置
注:本文参考了csdn:JAVA_DIRECTION的<nginx和ftp搭建图片服务器>一文.在实践中其文在centos7中还是存在缺陷性的 一:前提条件:是成功的安装好了ftp服务器和 ...
- Confluence 6 数据库表-展现(Appearance)
这部分存储了有关你 Confluence 的外观和布局使用的信息. decorator 使用自定义 Velocity 布局显示的自定义模板. https://www.cwiki.us/display/ ...
- test pictures
https://cnbj1.fds.api.xiaomi.com/mace/demo/mace_android_demo.apk
- ionic3 打包Xcode 9 Swift Language Version (SWIFT_VERSION) Ask 报错
解决方案 选择4.0 然后报错17个,类似以下这样的错误 'AVMediaTypeVideo' has been renamed to 'AVMediaType.video' 根据提示更改 AVMed ...
- Ionic3.0 输入状态时隐藏Tabs栏
刚接触ionic3 不久 ,发现遍地都是坑,昨天遇到一个问题就是当键盘弹起的时候tabs 也被 弹了起来,最初预想是放在tabs 的一个子页面内处理这个问题, Tabs隐藏后,我们发现底部有部分空白, ...