[关闭]
@zhangyy 2018-06-11T13:32:49.000000Z 字数 1798 阅读 200

在CDH5.14.2 中启用kudu的配置

大数据平台构建


  • 一: 系统平台介绍
  • 二: 安装kudu的集成

一: 系统平台介绍

1.1. 关于kudu的介绍

  1. KuduCloudera开源的新型列式存储系统,是Apache Hadoop生态圈的新成员之一(incubating),专门为了对快速变化的数据进行快速的分析,填补了以往Hadoop存储层的空缺。
  2.   Hadoop生态系统有很多组件,每一个组件有不同的功能。在现实场景中,用户往往需要同时部署很多Hadoop工具来解决同一个问题,这种架构称为混合架构 (hybrid architecture)。比如,用户需要利用Hbase的快速插入、快读random access的特性来导入数据,HBase也允许用户对数据进行修改,HBase对于大量小规模查询也非常迅速。同时,用户使用HDFS/Parquet + Impala/Hive来对超大的数据集进行查询分析,对于这类场景, Parquet这种列式存储文件格式具有极大的优势。
  3.   很多公司都成功地部署了HDFS/Parquet + HBase混合架构,然而这种架构较为复杂,而且在维护上也十分困难。首先,用户用FlumeKafka等数据Ingest工具将数据导入HBase,用户可能在HBase上对数据做一些修改。然后每隔一段时间(每天或每周)将数据从Hbase中导入到Parquet文件,作为一个新的partition放在HDFS上,最后使用Impala等计算引擎进行查询,生成最终报表。

image_1cfmbuvs1m461iov80q7oed6p9.png-833.4kB

二: 安装kudu的集成

2.1 kudu 准备与下载

  1. CDH5.10开始,打包集成Kudu1.2,并且Cloudera正式提供支持。这个版本开始Kudu的安装较之前要简单很多,省去了Impala_Kudu,安装完KuduImpala即可直接操作Kudu
  2. CSD 包下载
  3. 软件下载: 
  4.    http://archive.cloudera.com/kudu/csd/
  5.    
  6. KUDU-5.10.2.jar
  7. parcel 包:
  8.  http://archive.cloudera.com/kudu/parcels/5.12.2.8/
  9.  
  10.   KUDU-1.4.0-1.cdh5.12.2.p0.8-el7.parcel
  11.   KUDU-1.4.0-1.cdh5.12.2.p0.8-el7.parcel.sha1
  12.   manifest.json 
  13.   

image_1cfmcasam12cb13rrrlg7c71e3m16.png-226.5kB

image_1cfmd6urv1dhk1ir1ohs1ldrmee3t.png-312.3kB

2.2 开始安装kudu

  1. mv KUDU-5.10.2.jar /opt/cloudera/csd/
  2. chown cloudera-scm:cloudera-scm /opt/cloudera/csd/KUDU-5.10.2.jar
  3. cd /opt/cloudera/csd/
  4. chmod 644 KUDU-5.10.2.jar

image_1cfmclk981he71ml8o871lp92lt23.png-175.9kB

image_1cfmcogl0ta0jno9a015pq1o9a2g.png-55.7kB

  1. 配置httpd-server
  2. yum install -y httpd*
  3. service httpd start
  4. chkconfig httpd on
  5. mv KUDU-1.4.0-1.cdh5.12.2.p0.8-el7.parcel* /var/www/html/kudu
  6. mv manifest.json /var/www/html/kudu/
  7. cd /var/www/html/kudu/
  8. mv KUDU-1.4.0-1.cdh5.12.2.p0.8-el7.parcel.sha1 KUDU-1.4.0-1.cdh5.12.2.p0.8-el7.parcel.sha

image_1cfme1q2q6bo1m5ntgg177cn2h4q.png-164.8kB

2.3 通过CM界面配置Kudu的Parcel地址,并下载,分发,激活Kudu

image_1cfmea801126c1utn17lh8ds4jh5n.png-521.4kB

image_1cfmechh82p2irk9n8f3ibtg6k.png-399.7kB

image_1cfmedkpe7upc3qe9fuc7u1a71.png-579.8kB

image_1cfmeernrg47bhofeg1gk51177e.png-580.6kB

image_1cfmegdmif6t15chgbp19sh1vlu7r.png-490.1kB

image_1cfmeha2994fn0shgn109obu688.png-545.1kB

image_1cfmekb86d60tf71oe48lsp3al.png-309.4kB

image_1cfmersq6asc13urgu1j4d1lqep.png-714.6kB

image_1cfmesnbbpc21bt29fn2jkg2916.png-331.7kB

image_1cfmf0vpnc201akk5qc1ucli6s1j.png-423.8kB

image_1cfmf2caha0u16q7bcb1fjh3c320.png-324.2kB

image_1cfmf2qksfr81jvm1tsi1j2vlas2d.png-282.7kB

image_1cfmf3hvdgvs133018vjkblsef2q.png-466.9kB

image_1cfmit5h015ogmmm1dc21qa61m3g37.png-428.7kB

image_1cfmiueq31jrb1f4f17ng7o0vdp3k.png-475.8kB

image_1cfmj5d6boruejh7fd1efa1pm641.png-377.7kB

image_1cfmjgqn4cof94p17ea4mt1d2v4e.png-560.2kB

2.4 kudu的验证: 使用impala 直接创建读取kudu上面的数据

  1. impala-shell -i 172.17.100.11
  2. create database kudu_test;

image_1cfmkcu601e5envi166agsv1ciq4r.png-143.6kB
image_1cfmkjgmlhdsr6c1oa41hsjtsg6l.png-41.4kB

  1. use kudu_test;
  2. CREATE TABLE my_first_table
  3. (
  4. id BIGINT,
  5. name STRING,
  6. PRIMARY KEY(id)
  7. )
  8. PARTITION BY HASH PARTITIONS 16
  9. STORED AS KUDU;

image_1cfmkl71anrq1k7n1d6k1p4k9u572.png-105.9kB

  1. INSERT INTO my_first_table VALUES (99, "sarah");
  2. INSERT INTO my_first_table VALUES (100, "zhangyy");
  3. INSERT INTO my_first_table VALUES (200, "spark");

image_1cfmkog7dar5107ni5pmt77f.png-278.3kB

image_1cfmkpdpi1osbik91erosgh1n707s.png-278.9kB

  1. update my_first_table set name='hadoop' where id=99;

image_1cfmkuu15174n1ljq1tfd1uq46ae89.png-251.8kB

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注