欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

大數(shù)據(jù)開(kāi)發(fā)phoenix連接hbase流程詳解

 更新時(shí)間:2022年11月20日 12:00:18   作者:fengchengwu2012  
HBase是一個(gè)分布式的、面向列的開(kāi)源數(shù)據(jù)庫(kù),該技術(shù)來(lái)源于?Fay?Chang?所撰寫的Google論文“Bigtable:一個(gè)結(jié)構(gòu)化數(shù)據(jù)的分布式存儲(chǔ)系統(tǒng)”。就像Bigtable利用了Google文件系統(tǒng)(File?System)所提供的分布式數(shù)據(jù)存儲(chǔ)一樣,HBase在Hadoop之上提供了類似于Bigtable的能力

一、安裝phoennix添加配置

1、將phoenix-server-hbase-2.4-5.1.2.jar拷貝至hbase的的lib下

cp  phoenix-server-hbase-2.4-5.1.2.jar ../hbase/lib/

2、配置phoenix可以訪問(wèn)hbase的系統(tǒng)表

(1)將以下配置添加至hbase-site.xml中

   <property>
      <name>phoenix.schema.isNamespaceMappingEnabled</name>
      <value>true</value>
   </property>
    <property>
        <name>phoenix.schema.mapSystemTablesToNamespace</name>
        <value>true</value>
    </property>

(2)將hbase-stie.xml拷貝到phoenix/bin目錄下

cp ../hbase/conf/hbase-site.xml   ../phoenix/bin/

二、啟動(dòng)phoenix服務(wù)

1、啟動(dòng)hbase

../hbase/bin/start-hbase.sh

2、啟動(dòng)phoenix

python3  ../phoenix/bin/sqlline.py   server200:2181

server200:2181為zookeeper地址

三、phoenix常用語(yǔ)法

 官網(wǎng)文檔   https://phoenix.apache.org/language/index.html

(1)創(chuàng)建表

create table test1(id varchar primary key,a varchar,b varchar);

id主鍵可視為hbase的rowkey

?

(2)插入數(shù)據(jù)

upsert into TEST1 values('202211160089','liuping','chenyingying');

(3) 查詢數(shù)據(jù)

select * from TEST1;

(4)視圖/表映射

由于phoenix 無(wú)法直接訪問(wèn)hbase創(chuàng)建的非系統(tǒng)表,可以通過(guò)視圖/表映射對(duì)非系統(tǒng)表進(jìn)行查詢,但視圖不可修改,表映射可讀可寫

在hbase上創(chuàng)建表名為eftb列族為fm1 、fm2的表

create 'reftb','fm1','fm2'

向表中添加數(shù)據(jù)

 put 'reftb','010101','fm1:name','zhangsan'
 put 'reftb','010101','fm2:age','九千歲'

<1>視圖映射

create view "reftb"(id varchar primary key,"fm1"."name" varchar,"fm2"."age" varchar);

<2>表映射

create table "reftb"(id varchar primary key,"fm1"."name" varchar,"fm2"."age" varchar);

<3>查看數(shù)據(jù)

(5)添加修改數(shù)據(jù)(增改語(yǔ)法相同)

 upsert into "reftb"  values('010102','諸葛村夫','五十');
 upsert into "reftb"  values('010101','常山趙子龍','七十');

(6)刪除數(shù)據(jù)

delete from "reftb" where ID='010101';

(7)創(chuàng)建schema(數(shù)據(jù)庫(kù)名,對(duì)用hbase是的namespace)

CREATE SCHEMA IF NOT EXISTS "my_schema";

四、java代碼集成phoenix

1、添加依賴

implementation 'org.apache.phoenix:phoenix-client-hbase-2.4:5.1.2'

2、編寫代碼

public class PhoenixJdbcUtils {
    private final static Logger LOGGER = LoggerFactory.getLogger(PhoenixJdbcUtils.class);
    private static   Connection connection;
    static {
        Properties properties =new Properties();
        PhoenixDriver instance = PhoenixDriver.INSTANCE;
        try {
            connection = instance.connect("jdbc:phoenix:server200:2181", properties);
            ///connection = DriverManager.getConnection("jdbc:phoenix:server200:2181", properties);
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }
    /**
     * 插入數(shù)據(jù)
     * @throws SQLException
     */
    public static   void  testUpsertData() throws SQLException {
        PreparedStatement psUpsert = connection.prepareStatement( " upsert  into \"reftb\" values('168936','劉備','63')");
        boolean addData = psUpsert.execute();
        LOGGER.info("addData---------"+addData);
        connection.commit();
    }
    /**
     * 查詢數(shù)據(jù)
     * @throws SQLException
     */
    public static void  testQueryData() throws SQLException {
        PreparedStatement psQuery = connection.prepareStatement(" select  *  from  \"reftb\" ");
        ResultSet resultSet = psQuery.executeQuery();
        while (resultSet.next()) {
            LOGGER.info("id--{}",resultSet.getString(1));
            LOGGER.info("name--{}",resultSet.getString(2));
            LOGGER.info("age--{}",resultSet.getString(3));
        }
    }
    public static void main(String[] args) {
        try {
            testQueryData();
            testUpsertData();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

到此這篇關(guān)于大數(shù)據(jù)開(kāi)發(fā)phoenix連接hbase流程詳解的文章就介紹到這了,更多相關(guān)phoenix連接hbase內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • SQL中代替Like語(yǔ)句的另一種寫法

    SQL中代替Like語(yǔ)句的另一種寫法

    SQL中代替Like語(yǔ)句的另一種寫法...
    2006-12-12
  • 數(shù)據(jù)分析之ELT的基本概念

    數(shù)據(jù)分析之ELT的基本概念

    這篇文章主要介紹了數(shù)據(jù)分析之ELT的基本概念, ETL是英文Extract-Transform-Load的縮寫,用來(lái)描述將數(shù)據(jù)從來(lái)源端經(jīng)過(guò)抽取(extract)、轉(zhuǎn)換(transform)、加載(load)至目的端的過(guò)程,需要的朋友可以參考下
    2023-07-07
  • 詳細(xì)講解PostgreSQL中的全文搜索的用法

    詳細(xì)講解PostgreSQL中的全文搜索的用法

    這篇文章詳細(xì)介紹了的PostgreSQL中的全文搜索的用法,包括對(duì)全文搜索的一些優(yōu)化的實(shí)現(xiàn),需要的朋友可以參考下
    2015-04-04
  • dbeaver批量導(dǎo)出數(shù)據(jù)到另一個(gè)數(shù)據(jù)庫(kù)的詳細(xì)圖文教程

    dbeaver批量導(dǎo)出數(shù)據(jù)到另一個(gè)數(shù)據(jù)庫(kù)的詳細(xì)圖文教程

    DBeaver是一款數(shù)據(jù)庫(kù)管理軟件,小巧易用,最主要其官方版就可以滿足平常得任務(wù)需求,這篇文章主要給大家介紹了關(guān)于dbeaver批量導(dǎo)出數(shù)據(jù)到另一個(gè)數(shù)據(jù)庫(kù)的相關(guān)資料,文中通過(guò)圖文介紹的非常詳細(xì),需要的朋友可以參考下
    2024-03-03
  • MyISAM與InnoDB索引實(shí)現(xiàn)對(duì)比詳解

    MyISAM與InnoDB索引實(shí)現(xiàn)對(duì)比詳解

    這篇文章主要給大家介紹了關(guān)于MyISAM與InnoDB索引實(shí)現(xiàn)對(duì)比的相關(guān)資料,文中通過(guò)圖文介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-09-09
  • 大數(shù)據(jù)量時(shí)提高分頁(yè)的效率

    大數(shù)據(jù)量時(shí)提高分頁(yè)的效率

    當(dāng)我們?cè)谔幚泶罅繑?shù)據(jù)的時(shí)候,就需要注意分頁(yè)的效率問(wèn)題了,下面大家可以看看
    2009-03-03
  • Navicat Premium 15無(wú)限試用注冊(cè)表修改的方法詳解

    Navicat Premium 15無(wú)限試用注冊(cè)表修改的方法詳解

    這篇文章主要介紹了Navicat Premium 15無(wú)限試用注冊(cè)表修改的方法詳解,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-11-11
  • 詳解hive常見(jiàn)表結(jié)構(gòu)

    詳解hive常見(jiàn)表結(jié)構(gòu)

    hive是基于Hadoop的一個(gè)數(shù)據(jù)倉(cāng)庫(kù)工具,用來(lái)進(jìn)行數(shù)據(jù)提取、轉(zhuǎn)化、加載,這是一種可以存儲(chǔ)、查詢和分析存儲(chǔ)在Hadoop中的大規(guī)模數(shù)據(jù)的機(jī)制,這篇文章主要介紹了hive常見(jiàn)表結(jié)構(gòu),需要的朋友可以參考下
    2022-08-08
  • 使用sqlplus創(chuàng)建DDL和DML操作技巧

    使用sqlplus創(chuàng)建DDL和DML操作技巧

    這篇文章主要介紹了使用sqlplus創(chuàng)建DDL和DML操作技巧,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下
    2018-05-05
  • 在ACCESS和SQL Server下Like 日期類型查詢區(qū)別

    在ACCESS和SQL Server下Like 日期類型查詢區(qū)別

    Like 和日期類型在ACCESS和SQL Server的區(qū)別,需要的朋友可以參考下。
    2009-10-10

最新評(píng)論