背景描述:

  phoenix基于hbase的SQL层,映射hbase的表,也可以映射视图(VIEW)

  部署安装比较简单

  映射表和视图的区别:

    映射表:

        在Phoenix建表错误不易更改;

        删除会连同hbase源数据一起删;

        表映射,可以查询和更改hbase数据

    视图映射:

        在Phoenix创建hbase表的视图;

        只提供查询功能;

        有问题随时可以删除视图重建;

  注:初次使用Phoenix,了解浅显,仅以部署安装为主,其余不多做描述。 

架构描述:

    zookeeper+hadoop+hbase 集群,部署在5个节点上。

    phoenix客户端 : 部署在5个节点的任意一节点上,映射hbase中表,便于执行SQL查询。

    squirrel sql client : 图形化工具,可以查看兼容JDBC的数据库,类似SQLyog,navicat工具

部署安装:

    下载地址:http://mirrors.hust.edu.cn/apache/phoenix/

    选择格式:phoenix-[version]-bin.tar  与hbase版本对应:apache-phoenix-4.11.0-HBase-1.2-bin.tar.gz

两个概念:

    phoenix server : HBase region server and maste  (hbase集群所有节点)
    phoenix client :部署phoenix 的机器节点(该节点可以部署在任何机器上)
 
涉及IP地址:
 
    phoinix server:
    hbase集群:
         Hmaster:172.21.10.1~2
         Hregion:172.21.10.3~5
 
    phoenix client:
         172.21.10.2 (任意机器)
 
    zookeeper集群:
         172.21.10.3~5
 
phoenix 连接hbase :
    是通过访问zookeeper地址:
    $ sqlline.py 172.21.10.3,172.21.10.4,172.21.10.5:2181     #phoenix部署在任意节点时
 
Linux 操作步骤:
  (1)解压
    cd /data
    tar -xf apache-phoenix-4.11.0-HBase-1.2-bin.tar.gz
    cd apache-phoenix-4.11.0-HBase-1.2-bin
    ls #可以看到很多jar包
 
  (2)有用jar包
    phoenix-4.11.0-HBase-1.2-server.jar    
    #复制到hbase所有节点的:/usr/local/hbase/lib 目录下
 
    phoenix-4.11.0-HBase-1.2-client.jar    
    #复制到phoenix client的CLASSPATH目录下面:(需要在/etc/profile中设置环境变量)
    #本节点的CLASSPATH:/data/data/apache-phoenix-4.11.0-HBase-1.2-bin
      #所有的jar包都在这个路径下,所以不必复制了
 
    phoenix-4.11.0-HBase-1.2-client.jar
    phoenix-4.11.0-HBase-1.2-thin-client.jar
    phoenix-core-4.11.0-HBase-1.2.jar
     #这3个jar包:SQuirrel图形工具所必须的。需要复制到安装目录下的lib目录下面。
    #暂时不用管,安装SQuirrel时再复制。
 
  (3)设置phoenix环境变量
    在/etc/profile中添加:
    export PHOENIX_HOME=/data/apache-phoenix-4.11.0-HBase-1.2-bin
    export PHOENIX_CLASSPATH=$PHOENIX_HOME
    export PATH=$PATH:$PHOENIX_HOME/bin
    执行source /etc/profile  生效
 
  (4)附权
    phoenix目录及复制到所有节点上/usr/local/hbase/lib下的jar包都需要hadoop.hadoop权限
    chown -R hadoop.hadoop /data/apache-phoenix-4.11.0-HBase-1.2-bin
    chown -R hadoop.hadoop /usr/local/hbase/lib/phoenix-*
  (5)phoenix连接hbase的sqlline.py是基于Python编写的
    路径: /data/apache-phoenix-4.11.0-HBase-1.2-bin/bin/sqlline.py
    sqlline.py脚本中:import argparse 需要argparse模块,现网机器上默认没有这个模块包,需要单独下载
    argparse模块包下载地址:https://pypi.python.org/pypi/argparse/#downloads

    argparse安装:

      tar -xf argparse-1.4.0.tar.gz

      cd argparse-1.4.0

       python setup.py install
  (6)重启hbase
    stop-hbase.sh
    start-hbase.sh
 
登录测试
 
 
 
建表测试:
在hbase创建表:
>create 'phoenix','info'
插入数据:
> put 'phoenix', 'row001','info:name','phoenix'
>put'phoenix','row002','info:name','hbase'
 
在phoenix中建相同结构的表:
create table "phoenix"("row" varchar primary key, "info"."name" varchar);
 
在phoenix中查询表:表名要用 "" 引起来
 
--ok

phoenix部署手册-基于hbase的更多相关文章

  1. MariaDB Galera Cluster部署手册

    MariaDB Galera Cluster部署手册 galara保证双主数据库的同步及一致性 1.环境准备 基于新部署.最小化安装centos6.5 1>  yum install opens ...

  2. HQueue:基于HBase的消息队列

    HQueue:基于HBase的消息队列   凌柏   ​1. HQueue简介 HQueue是一淘搜索网页抓取离线系统团队基于HBase开发的一套分布式.持久化消息队列.它利用HTable存储消息数据 ...

  3. Ambari部署HDP:HBase Master启动后自动消失

    这是第一次出勤部署产品.遇到不可控问题,解决,写个心得.记录一下吧^^ 在排查问题的过程中,学到不少知识. (1)centos系统盘和数据盘分开,装操作系统的人没有将IT的空间分配出来,所以分区,自动 ...

  4. Phoenix(SQL On HBase)安装和使用报告

    一.为什么使用Phoenix二.安装Phoenix2.1 兼容问题?2.2 编译CDH版本的Phoenix2.3 安装Phoenix到CDH环境中三.Phoenix的使用3.1 phoenix的4种调 ...

  5. 读者来信 | 刚搭完HBase集群,Phoenix一启动,HBase就全崩了,是什么原因?(已解决)

    前言:之前有朋友加好友与我探讨一些问题,我觉得这些问题倒挺有价值的:于是就想在本公众号开设一个问答专栏,方便技术交流与分享,专栏名就定为:<读者来信>.如遇到本人能力有限难以解决的问题,我 ...

  6. LVS+MYCAT+读写分离+MYSQL主备同步部署手册

    LVS+MYCAT+读写分离+MYSQL主备同步部署手册 1          配置MYSQL主备同步…. 2 1.1       测试环境… 2 1.2       配置主数据库… 2 1.2.1  ...

  7. WebDriver基本API使用手册(基于Java和C#)

    WebDriver基本API使用手册(基于Java和C#) http://www.docin.com/p-747728551.html

  8. OpenTSDB介绍——基于Hbase的分布式的,可伸缩的时间序列数据库,而Hbase本质是列存储

    原文链接:http://www.jianshu.com/p/0bafd0168647 OpenTSDB介绍 1.1.OpenTSDB是什么?主要用途是什么? 官方文档这样描述:OpenTSDB is ...

  9. 如何使用 Docker 部署一个基于 Play Framework 的 Scala Web 应用?

    本文作者 Jacek Laskowski 拥有近20年的应用程序开发经验,现 CodiLime 的软件开发团队 Leader,曾从 IBM 取得多种资格认证.在这篇博文中,Jacek 分享了 Wars ...

随机推荐

  1. [LAMP]安装-Debian

    sudo apt-get install build-essential sudo apt-get install mysql-server sudo apt-get install apache2 ...

  2. Windows 10 上安装 3D Studio Max 2016 报错的解决办法

    在 Windows 10 上安装 3D Stuido Max 2016 报错,无法正常安装,查看日志是 VC 运行时安装错误,经过分析发现在 Windows 10 上已经有这些运行时并且版本比安装包中 ...

  3. css3 box

    一.box-shadow介绍 box-shadow属性向box添加一个或多个阴影. 语法: box-shadow: offset-x offset-y blur spread color inset; ...

  4. 【BZOJ3144】[Hnoi2013]切糕 最小割

    [BZOJ3144][Hnoi2013]切糕 Description Input 第一行是三个正整数P,Q,R,表示切糕的长P. 宽Q.高R.第二行有一个非负整数D,表示光滑性要求.接下来是R个P行Q ...

  5. excel导出工具类

    package com.jianwu.util.excel; import com.google.common.collect.Lists;import com.jianwu.exception.Mo ...

  6. maven的核心概念

    1 简单的核心概念 1.1 坐标 groupId.artifactId.version,很简单,这三个坐标定位到了该依赖的位置,有了它们就可以下载该依赖了. 1.2 依赖 如果一个jar包使用了另外一 ...

  7. VC中获取窗口句柄的各种方法

    AfxGetMainWndAfxGetMainWnd获取自身窗口句柄HWND hWnd = AfxGetMainWnd()->m_hWnd; GetTopWindow函数功能:该函数检查与特定父 ...

  8. jq左右按钮点击幻灯片

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/ ...

  9. 原!mysql5.6 存储过程 批量建表

    由于业务需求,需要按天分表,因此写了个存储过程,根据时间生成表. 根据createTime 的时间,以及 while循环的变量设置范围,生成该指定日期及之后的多张表. BEGIN ); ); ; '; ...

  10. filebeat 简介安装

    Filebeat is a lightweight shipper for forwarding and centralizing log data. Installed as an agent on ...