Phoenix】【大数据基础】Phoenix安装详细步骤

2020-10-30 15:57发布

2条回答
我想吃肉
2楼 · 2020-10-30 20:44
  1. 1、上传jar包到/opt/software/

    解压到/opt/module 改名为phoenix

    Phoenix安装部署

  2. 2、 复制server和client这俩个包拷贝到各个节点的hbase/lib

    在phoenix目录下

    Phoenix安装部署

  3. 3、向每个节点发送server jar

    Phoenix安装部署

  4. 4、向每个节点发送client jar

    Phoenix安装部署

  5. 5、在root权限下给/etc/profile 下添加如下内容

    Phoenix安装部署

  6. 6、启动Zookeeper,Hadoop,Hbase

  7. 7、启动Phoenix

    Phoenix安装部署

    Phoenix安装部署


我的网名不再改
3楼 · 2020-11-01 17:43

安装和配置Phoenix

  • 把下载好的安装包放入software目录下

  • 解压Phoenix到opt目录下

[root@hadoop100 software]# tar -zxvf apache-phoenix-4.14.0-cdh5.14.2-bin.tar.gz -C /opt

进入Phoenix的bin目录下

把phoenix-4.14.0-cdh5.14.2-server.jar包复制到hbase目录下的lib目录下

配置hbase-site.xml文件

[root@hadoop100 software]# cd /opt[root@hadoop100 opt]# cd apache-phoenix-4.14.0-cdh5.14.2-bin/[root@hadoop100 apache-phoenix-4.14.0-cdh5.14.2-bin]# cp phoenix-4.14.0-cdh5.14.2-server.jar /opt/hbase/lib/[root@hadoop100 apache-phoenix-4.14.0-cdh5.14.2-bin]# vi /opt/hbase/conf/hbase-site.xml

添加

//把true改为falsehbase.regionserver.wal.codecorg.apache.hadoop.hbase.regionserver.wal.IndexedWALEditCodec phoenix.schema.isNamespaceMappingEnabledtruephoenix.schema.mapSystemTablesToNamespacetruephoenix.functions.allowUserDefinedFunctionstrueenable UDF functions

把配置好的hbase-site.xml复制到Phoenix目录下的bin目录下

// An highlighted block[root@hadoop100 hbase]# cp conf/hbase-site.xml ../apache-phoenix-4.14.0-cdh5.14.2-bin/bin/

重启hbase master

[root@hadoop100 hbase]# hbase-daemon.sh restart master

进入Phoenix目录下的bin目录下启动Phoenix

[root@hadoop100 apache-phoenix-4.14.0-cdh5.14.2-bin]# cd bin/[root@hadoop100 bin]# ./sqlline.py

Phoenix概述

Phoenix简介

  • 构建在HBase上的SQL层

  • 使用标准SQL在HBase中管理数据

  • 使用JDBC来创建表,插入数据、对HBase数据进行查询

  • Phoenix JDBC Driver容易嵌入到支持JDBC的程序中

Phoenix无法代替RDBMS

 

Phoenix不适合场景

 

 

Phoenix架构

在这里插入图片描述

Phoenix SQL语法

Phoenix支持类SQL语法

Java API CodePhoenix DDL
HBaseAdmin hbase = new HBaseAdmin(conf);
HTableDescriptor desc = new HTableDescriptor(“us_population”);
HColumnDescriptor state = new HColumnDescriptor(“state”.getBytes());
HColumnDescriptor city = new HColumnDescriptor(“city”.getBytes());
HColumnDescriptor population = new HColumnDescriptor(“population”.getBytes());
desc.addFamily(state);
desc.addFamily(city);
desc.addFamily(population);
hbase.createTable(desc);
CREATE TABLE us_population (state CHAR(2) NOT NULL,city VARCHAR NOT NULL,population BIGINTCONSTRAINT my_pk PRIMARY KEY (state, city));
使用更灵活
可与其他应用集成
常用的SQL语法<>br提供附加约束检查

 

  • 缺乏完整约束,很多领域尚不成熟后
    Phoenix使HBase更易用

  • Phoenix应用场景

    Phoenix适合场景

  • 快速而容易地构建基于HBase的应用程序

  • 需要极大的规模、性能和并发性的SQL应用程序

  • 在转换到Hadoop时重用已有的SQL技能

  • BI工具(对SQL支持较好)

  • 涉及大型Join操作或高级SQL特性的复杂SQL查询

  • Full-Table Scans

  • ETL jobs

  • Application Drivers/Interface

 Phoenix支持的关键字类型

Standard SQL Data Types --标准SQL 数据类型SELECT, UPSERT, DELETE --UPSERT与标准SQL不同JOINs: Inner and OuterSubqueriesSecondary IndexesGROUP BY, ORDER BY, HAVINGAVG, COUNT, MIN, MAX, SUMPrimary Keys, ConstraintsCASE, COALESCEVIEWsPERCENT_RANK, LAST|FIRST VALUEUNION ALLCross JoinsWindowing Functions  --窗口函数Transactions  --事务AuthorizationReplication Management

Phoenix操作HBase

命令行操作

!tables   -- 查看所有表,类似于beeline操作CREATE TABLE company (COMPANY_ID INTEGER PRIMARY KEY, NAME VARCHAR(225));   --创建表操作UPSERT INTO company VALUES(1, 'Microsoft');   -- 插入数据SELECT * FROM Company; --查看数据

查看所有表

创建表

create table test_emp(emp_id bigint primary key,emp_name varchar(10));!tables

插入数据

upsert into test_emp values(1,'trump');select * from test_emp;


相关问题推荐

没有解决我的问题,去提问