分享知识,分享快乐

0%

HBase常用的Filter

简介:

​ 根据技术调研的过程可以明显的体会到hbase的存储方式和数据库的存储有着明显的区别,查询的方式也有着很大不同,HBase主要是通过这种filter来对数据进行筛选。同时对于数据的体量较大(10亿级别以上的数据数据量),检索和修改的场景较多时是比较适合使用hbase。

HBase过滤器可以根据分为:列簇与列类型过滤器,行键过滤器,其他过滤器
HBase Filter 概览
查询hbase支持的filter 列表

[复制代码](javascript:void(0);)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
base(main):001:0> show_filters
DependentColumnFilter
KeyOnlyFilter
ColumnCountGetFilter
SingleColumnValueFilter
PrefixFilter
SingleColumnValueExcludeFilter
FirstKeyOnlyFilter
ColumnRangeFilter
ColumnValueFilter
TimestampsFilter
FamilyFilter
QualifierFilter
ColumnPrefixFilter
RowFilter
MultipleColumnPrefixFilter
InclusiveStopFilter
PageFilter
ValueFilter
ColumnPaginationFilter
Took 0.0033 seconds

[复制代码](javascript:void(0);)

HBase Filter 使用简单例子
行键过滤器
RowFilter:针对行键进行过滤

1
scan 'test',FILTER=>"RowFilter(=,'binaryprefix:row')"

说明:把test表中rowkey 以row开头的数据查出来

阅读全文 »

配置虚拟IP

/sbin/ifconfig bond0:2 172.20.192.241 netmask 255.255.255.0 up

广播通知

/sbin/arping -c 5 -U -I bond0 172.20.192.241 >/dev/null 2>&1

关闭虚拟IP

/sbin/ifconfig bond0:2 172.20.192.241 netmask 255.255.255.0 down

阅读全文 »

https://sslover.me/2022/03/15/trino-deploy-tutorials/

开启 TLS 支持

当采用用户名/密码的方式进行认证时,Trino 强制要求我们使用 TLS,所以我们需要对其进行配置。

首先我们需要创建 HTTPS 证书,由于是本地测试,所以我们直接自己签发一个。Trino 支持 PEM 文件和 JKS 文件,我们使用标准的 PEM 文件进行配置。

1
2
3
4
5
6
7
8
9
10
11
# 生成私钥
[root@cdh192-150 ssl]# openssl genrsa -out server.key 2048
# 生成 CSR
[root@cdh192-150 ssl]# openssl req -new -key server.key -out server.csr
# 自己派发证书
[root@cdh192-150 ssl]# openssl x509 -req -days 36500 -in server.csr -signkey server.key -out server.crt
# 生成 PEM 格式文件
[root@cdh192-150 ssl]# cat server.key server.crt > server.pem
# 校验 PEM 文件
[root@cdh192-150 ssl]# openssl rsa -in server.pem -check -noout
[root@cdh192-150 ssl]# openssl x509 -in server.pem -text -noout

生成完证书后,在 config.properties 文件中添加如下配置即可开启 TLS 支持:

1
2
3
4
5
6
7
8
# 开启 https
http-server.https.enabled=true
# 指定 https 端口
http-server.https.port=8443
# 指定证书文件
http-server.https.keystore.path=/opt/module/trino-server-405/etc/ssl/server.pem
# 开启web-ui访问
http-server.authentication.allow-insecure-over-http=true

最后修改 JDBC 连接地址,由于是自签证书,所以我们需要关闭证书校验:

1
jdbc:trino://127.0.0.1:8443?SSL=true&SSLVerification=NONE

同理,CLI 命令修改为:

阅读全文 »

Alluxio常用操作

启动一个Alluxio集群

格式化Alluxio

在首次启动Alluxio之前,必须先格式化日志。

格式化日记将删除Alluxio中的所有元数据。 但是,格式化不会涉及底层存储的数据。

在master节点上,使用以下命令格式化Alluxio:

1
$ ./bin/alluxio formatMaster

启动Alluxio

启动Alluxio集群,在master点上确保conf/workers文件中所有worker的主机名都是正确的。

在master点上,运行以下命令启动Alluxio集群:

阅读全文 »

准备
下载文件:wget https://downloads.alluxio.io/downloads/files/2.9.2/alluxio-2.9.2-bin.tar.gz

解压目录:/opt/servers/alluxio

1
2
wget https://downloads.alluxio.io/downloads/files/2.9.2/alluxio-2.9.2-bin.tar.gz
tar -xzf alluxio-2.9.2-bin.tar.gz -C /opt/servers/alluxio

创建目录:mkdir -p /mnt/ramdisk

机器:10.0.21.190(master,worker)10.0.21.191(master,worker)10.0.21.192(worker)

HA 配置

搭建高可用集群前的准备:

  • ①确保Zookeeper服务已经运行

  • ②一个单独安装的可靠的共享日志存储系统(可用HDFS或S3等系统)

  • ③这个配置针对Alluxio 2.x版本,不适用于1.x版本

  • ④需要事先创建好ramdisk挂载目录

配置hive alluxio文件系统:core-site.xml

1
2
3
4
5
6
7
8
9
10
11
12
<configuration>
<property>
<name>fs.alluxio.impl</name>
<value>alluxio.hadoop.FileSystem</value>
<description>The Alluxio FileSystem (Hadoop 1.x and 2.x)</description>
</property>
<property>
<name>fs.AbstractFileSystem.alluxio.impl</name>
<value>alluxio.hadoop.AlluxioFileSystem</value>
<description>The Alluxio AbstractFileSystem (Hadoop 2.x)</description>
</property>
</configuration>
阅读全文 »

CDH 6.3.2 集成 flink 1.14.6

制作Flink的parcel包和csd文件

1. 下载制作脚本

1
2
3
# 克隆源码
git clone https://github.com/pkeropen/flink-parcel.git
cd flink-parcel

2 修改参数

vim flink-parcel.properties

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#FLINK 下载地址
FLINK_URL=https://archive.apache.org/dist/flink/flink-1.14.6/flink-1.14.6-bin-scala_2.12.tgz

#flink版本号
FLINK_VERSION=1.14.6

#扩展版本号
EXTENS_VERSION=BIN-SCALA_2.12

#操作系统版本,以centos为例
OS_VERSION=7

#CDH 小版本
CDH_MIN_FULL=5.13.1
CDH_MAX_FULL=6.3.2

#CDH大版本
CDH_MIN=5
CDH_MAX=6

4 编译parcel

1
2
3
4
# 赋予执行权限
chmod +x ./build.sh
# 执行编译脚本
./build.sh parcel

编译完会在flink-parcel项目根目录下生成_build文件夹

阅读全文 »