hbase集成phoenix

embedded/2024/11/14 4:13:39/

1.环境

环境准备

  1. 三台节点
  2. zookeeper三节点
  3. hadoop三节点
  4. hbase三节点

2.pheonix集成

官网下载地址,需挂梯子,使用官网推荐的对应hbase版本即可

https://phoenix.apache.org/download.html

下载及解压

wget https://dlcdn.apache.org/phoenix/phoenix-5.2.0/phoenix-hbase-2.5.0-5.2.0-bin.tar.gz
tar -zxvf phoenix-hbase-2.5.0-5.2.0-bin.tar.gz
mv phoenix-hbase-2.5.0-5.2.0-bin phoenix-hbase

修改 /etc/profile 环境变量

export PHEONIX_HOME=/root/phoenix-hbase
export PHEONIX_CLASSPATH=$PHEONIX_HOME
export PATH=$PHEONIX_HOME/bin:$PATH

配置资源重载

source /etc/profile

拷贝解压包内服务端jar至hbase/lib目录

cp phoenix-server-hbase-2.5.0-5.2.0.jar ../hbase/lib/

三台节点均配置

3. 开启二级索引和shema

修改 hbase-site.xml

<property><name>hbase.regionserver.wal.codec</name><value>org.apache.hadoop.hbase.regionserver.wal.IndexedWALEditCodec</value>
</property><property><name>phoenix.schema.mapSystemTablesToNamespace</name><value>true</value></property><property><name>phoenix.schema.isNamespaceMappingEnabled</name><value>true</value></property>

三台节点均配置

4.启动pheonix

重启hbase

./stop-hbase.sh
./start-hbase.sh

单机具体重启看上篇hbase文章

这里连接的是zookeeper地址,默认使用2181端口

sqlline.py node1,node2,node3

执行语句即可

CREATE TABLE IF NOT EXISTS "student"(
id VARCHAR primary key,
name VARCHAR,
age BIGINT,
addr VARCHAR
);

5.索引

5.1.全局索引

create index index_name on my_table(column);

在查询列只有column时快,在hbase中会单独开索引表使用一行存储,有其他列需回表
如 select columns from my_table where columns =xxx

5.2.包含索引

create index index_name on my_table(column1) include(column2);

在查询列只有 column1或column2 都快,在hbase中一条数据会使用两行存储

phoenix语法-官网

https://phoenix.apache.org/language/index.htm

5.3 本地索引

create local index index_name on my_table(columns);

columns可多个
适用于写操作频繁,会将所有信息放在一个影子列族中,读取也是范围扫描但是没有全局索引快,会直接在表中修改,不用单独创建索引表

后续命令行或者使用客户端连接即可


http://www.ppmy.cn/embedded/137404.html

相关文章

npm list @types/node 命令用于列出当前项目中 @types/node 包及其依赖关系

文章目录 作用示例常用选项示例命令注意事项 1、实战举例**解决方法**1. **锁定唯一的 types/node 版本**2. **清理依赖并重新安装**3. **设置 tsconfig.json 的 types**4. **验证 Promise 类型支持** **总结** npm list types/node 命令用于列出当前项目中 types/node 包及其…

Typescript类型运算符、关键字以及内置高级类型

目录 类型运算符 |运算符 &运算符 类型关键字 Infer 示例 extends typeof keyof in 注意 内置高级类型 类型 PropertyKey ArrayBufferLike 对类型集合的操作 Exclude,> Extract,> 对类型的操作 NonNullable Readonly Required Partial Pick…

ONLYOFFICE8.2版本测评,团队协作的办公软件

文章目录 引言ONLYOFFICE产品简介功能与特点1. 实时协作2. 兼容性3. 模板库4. 评论和修订5. 安全性 体验与测评功能测试 邀请用户使用项目介绍结尾了解更多 引言 在数字化办公的浪潮中&#xff0c;效率和协作成为了工作的核心。ONLYOFFICE作为一个强大的办公套件&#xff0c;正…

【Unity/GameFramework】Start Force ——配置和表加载

文章目录 前言寻找流程具体加载配置加载&#xff1a;获取路径&#xff1a;添加到标志数组&#xff1a;进行实际加载&#xff1a; 数据表加载&#xff1a;获取路径&#xff1a;添加到标志数组&#xff1a;进行实际加载&#xff1a; 语言加载&#xff1a;字体加载&#xff1a; 前…

java操作ES(一)RestHighLevelClient(2)集成与demo

一、集成方法 1、pom依赖 <dependency><groupId>org.elasticsearch.client</groupId><artifactId>elasticsearch-rest-high-level-client</artifactId><version>7.x.x</version> <!-- 请使用与你的Elasticsearch版本相匹配的版…

打响反对人工智能的第一枪

序言&#xff1a;人工智能的讨论不能只有一片叫好的声音&#xff0c;一味的追捧反而可能隐藏巨大的危机。因此&#xff0c;必须有反对的声音&#xff0c;且越强烈越能激发深入思考。本篇文章的作者就以犀利的视角&#xff0c;漂亮地打响了反对人工智能应用的第一枪。 我以前一…

论文阅读《Structure-from-Motion Revisited》

摘要 增量式地运动结构恢复是从无序图像集合中进行三维重建的一个普遍策略。虽然增量式地重建系统在各个方面上都取得了巨大的进步&#xff0c;但鲁棒性、准确性、完整度和尺度仍然是构建真正通用管道的关键问题。我们提出了一种新的运动结构恢复技术&#xff0c;它改进了目前…

矩阵函数及计算

矩阵函数 下面的式子一定要记住&#xff01;&#xff01; 例题&#xff1a; 求出Jordan形求出可逆P和P根据给出的公式&#xff0c;计算每一项&#xff0c;然后带入J中的元素&#xff0c;组成新的乘法式&#xff0c;计算出最后结果。 考点 主要是会计算函数矩阵矩阵函数。 参…