
# Flink on Paimon最佳实践
#### 概述
Apache Paimon是一个流式数据湖存储技术，它提供高吞吐、低延迟的数据摄入、流式订阅和实时查询。采用开放的ORC、Parquet、Avro文件格式，与Flink、Spark等计算引擎兼容。
#### 前提条件
- 完成Hadoop部署并对接OBS，详情参考[Hadoop对接OBS](https://support.huaweicloud.com/bestpractice-obs/obs_05_1507.html)。
- 已部署Flink，并集成Paimon到Flink中，详情参考[Flink官方文档](https://paimon.apache.org/docs/1.0/flink/quick-start/)。
 
#### Flink对接OBS
1. [下载](https://gitcode.com/HuaweiCloudDeveloper/flink-obs/tree/master-dev)flink-obs。
2. 使用mvn构建flink对应版本的flink-obs-fs-hadoop-xxx.jar。
3. 创建${FLINK_HOME}/plugins/obs-fs-hadoop目录。
4. 复制[2]中构建的flink-obs-fs-hadoop-xxx.jar到${FLINK_HOME}/plugins/obs-fs-hadoop目录。
5. 配置环境变量，命令如下： 
   ```
   export HADOOP_CLASSPATH=$(hadoop classpath)
   ```
   
   
6. 在Flink的配置文件中配置OBSA参数：flink-conf.yaml(1.19之前)，config.yaml(1.19及以后) 
   ```
   fs.obs.impl: org.apache.hadoop.fs.obs.OBSFileSystem
   fs.obs.access.key: xxx
   fs.obs.secret.key: xxx
   fs.obs.endpoint: obs.xxx.myhuaweicloud.com
   fs.obs.buffer.dir: /opt/data/obsa_buffer
   ```
   
   
 
#### 配置Paimon对接OBS
1. 创建Paimon Catalog，warehouse路径指定为OBS桶中目录，例如指定为jtc-pfs001桶中的flink/paimon101目录： 
   ```
   CREATE CATALOG paimon101_catlog WITH (
       'type'='paimon',
       'warehouse'='obs://jtc-pfs001/flink/paimon101'
   );
   ```
   
   
2. 创建数据库，指定catalog创建或使用use catalog *catalog_name* 指定catalog。
   
   ```
   use catalog paimon101_catlog;
   create paimon_db;
   create paimon101_catlog.paimon_db;
   ```
   
   
 
