背景描述:

  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. 4、手把手教React Native实战之flexbox布局(伸缩属性)

    ###伸缩项目的属性 1.order 定义项目的排列顺序,数值越小,排列越靠前,默认值为0,语法为:order:整数值 2.flex-grow 定义伸缩项目的放大比例,默认值为0,即表示如果存在剩余空 ...

  2. Python实现生命游戏

    1. 生命游戏是什么 生命游戏是英国数学家约翰·何顿·康威在1970年发明的细胞自动机.它包括一个二维矩形世界,这个世界中的每个方格居住着一个活着的或死了的细胞.一个细胞在下一个时刻生死取决于相邻八个 ...

  3. Office Developer Tools for Visual Studio 2012现在可用了

    [原文发表地址]   Now Available: Office Developer Tools for Visual Studio 2012 正如我以前写过的,我们正在为构建下一代Office和 S ...

  4. ObjC利用正则表达式抓取网页内容(网络爬虫)

    本文转载至 http://www.cocoachina.com/bbs/read.php?tid=103813&fpage=63 在开发项目的过程,很多情况下我们需要利用互联网上的一些数据,在 ...

  5. 面试之Java持久层(十)

    91,什么是ORM?         对象关系映射(Object-Relational Mapping,简称ORM)是一种为了解决程序的面向对象模型与数据库的关系模型互不匹配问题的技术: 简单的说,O ...

  6. 妈妈再也不用担心我使用git了

    妈妈再也不用担心我使用git了 Dec 29, 2014 git git由于其灵活,速度快,离线工作等特点而倍受青睐,下面一步步来总结下git的基本命令和常用操作. 安装msysgit 下载地址:ms ...

  7. 记录--常用的linux命令

    mysql event /*查询event是否开启(查询结果Off为关闭 On为开启)*/ show variables like '%sche%'; /*开启/关闭命令(1开启--0关闭)*/ se ...

  8. Python菜鸟之路:Django ModelForm的使用

    一.简单使用案例 #views.py #views.py from django.shortcuts import render,HttpResponse from app01 import mode ...

  9. Spring 框架的AOP之注解的方式

    1. 环境搭建 1.1 导入 jar 包 Spring 框架的基本开发包(6个); Spring 的传统AOP的开发包 spring-aop-4.3.10.RELEASE org.aopallianc ...

  10. 2015-03-20——移动端UC浏览器、QQ浏览器自动全屏

    UC:<meta name="full-screen" content="yes"><meta name="browsermode& ...