1 flink-sql写parquet格式

-

1 参考链接

Parquet | Apache Flink

ParquetOutputFormat - parquet-hadoop 1.10.0 javadoc

FileSystem | Apache Flink

注意: 多个链接要结合起来看

-

2 连接文件系统

CREATE TABLE test_fs_table (iid STRING,local_time TIMESTAMP,dt STRING,dh STRING
) PARTITIONED BY (dt,dh) WITH ('connector'='filesystem','path'='out_path','format'='parquet','parquet.block.size'='128MB', -- 设定文件块大小'auto-compaction'='true', -- 开启自动合并小文件'compaction.file-size'='12MB', -- 合并文件大小'parquet.compression'='SNAPPY'  -- 指定压缩, 生成的文件名没有压缩类型标记
)

-

2 parquet文件生成规则

1) 数据量小, checkpoint内没超过parquet.block.size

2) 数据量较大, checkpoint内超过parquet.block.size

-

3) 文件回滚的条件

a.下个checkpoint来临

b.文件达到128M(parquet.block.size)

c.下个分区来临

-

3 小文件优化

影响因素:并行度、回滚时间、文件大小、checkpoint、compaction

1 flink-sql写parquet文件到

规则总结:

1)checkpoint时, 生成compact文件(立即可读), 下个checkpoint时删除uncompact(不可读)文件;

2) 只能合并单个checkpoint内的文件,不同checkpoint生成的文件是不会合并的;

3) 分区结束两个checkpoint后文件可用

参考链接:

Flink实战之合并小文件 - 简书

flink读写filesystem相关推荐

  1. flink读写hive-代码方式

    注意: flink读写hive有两种方式, 一种是connector方式, 一种是jdbc方式. jdbc因为性能上的问题,该方式没有尝试的意义. ########################## ...

  2. Flink读写Mysql(Java版)

    必须得创建好Mysql表 CREATE TABLE student (name VARCHAR(20),age INT); 读写代码 创建实体类 public class Student {priva ...

  3. Flink读写系列之-读HBase并写入HBase

    这里读HBase提供两种方式,一种是继承RichSourceFunction,重写父类方法,一种是实现OutputFormat接口,具体代码如下: 方式一:继承RichSourceFunction p ...

  4. Flink从入门到精通100篇(十五)-Flink SQL FileSystem Connector 分区提交与自定义小文件合并策略 ​

    前言 本文先通过源码简单过一下分区提交机制的两个要素--即触发(trigger)和策略(policy)的实现,然后用合并小文件的实例说一下自定义分区提交策略的方法. PartitionCommitTr ...

  5. Flink读写系列之-读Kafka并写入Kafka

    读写Kafka比较简单,官方提供了connector,也提供了例子可以参看,官网例子的GitHub地址: https://github.com/apache/flink/tree/master/fli ...

  6. HBase读写的几种方式(三)flink篇

    1. HBase连接的方式概况 主要分为: 纯Java API读写HBase的方式: Spark读写HBase的方式: Flink读写HBase的方式: HBase通过Phoenix读写的方式: 第一 ...

  7. Flink FileSystem的connector分析

    文章目录 前言 FileSystem的RollingSink FileSystem连接器的Exactly Once恢复语义 FileSystem Sink的文件状态转换 Checkpoint下的Exa ...

  8. 2021年大数据Flink(四十四):​​​​​​扩展阅读 End-to-End Exactly-Once

    目录 扩展阅读 End-to-End Exactly-Once 流处理的数据处理语义 At-most-once-最多一次 At-least-once-至少一次 Exactly-once-精确一次 En ...

  9. flink各版本变化和新增特性

    1.6新特性 Flink 1.6-有状态流处理的下一步 在Flink 1.6.0中,我们继续在较早版本中进行的基础工作:使Flink用户能够无缝地运行快速数据处理并毫不费力地构建数据驱动的数据密集型应 ...

最新文章

  1. mongodb中简单的根据时间过滤进行查询
  2. 从10W个数中随机抽走2个数,求出那两个数是多少
  3. android加固多渠道,Android 多渠道打包(使用友盟统计,结合360加固宝进行多渠道打包)...
  4. 【课件】基础雷达信号处理
  5. React Native的安装和初始化(android /ios)
  6. 让不带www的域名跳转到带www的域名
  7. 淘宝快捷通道——百汇家园
  8. python求小于n的所有素数_用python求出2000000内所有素数的和?不知怎么写?
  9. 两个关于JAVA String的小问题
  10. 滴滴春节期间加强司机安全教育 考核通过才能上岗
  11. 心理学巨著《影响力》读后总结
  12. win7 64位 内核安全_Win7进入死亡倒计时,全国一半电脑要遭殃?
  13. vue-cropper 自定义旋转任意角度
  14. SAP 电商云 Spartacus UI Cart 页面的 CMS 布局
  15. 【ATSC】ATSC数字测试专用ATSC Frequency
  16. linux挂载40t硬盘,Centos支持40T磁盘阵列MD1200
  17. 为何日本手机走不出国门?
  18. java 程序怎么设置中文_怎么让这个简单JAVA程序读写中文字符
  19. PHP自适应小说网站源码深度SEO优化自动采集
  20. 一文懂熵Entropy

热门文章

  1. 计算机主板ttl串口,TTL基础知识介绍,串口TTL与电脑RS232接口区别,主板高清图...
  2. 浏览器首页被流氓桔梗网和2345篡改的解决方案(自测是有效的)
  3. 数据库软件mysql属于哪种类型软件_常见的数据库软件有哪几种
  4. 数字电路硬件设计系列(七)之泄放电路设计
  5. VirtualBox导入虚拟机文件报错:VBOX_E_FILE_ERROR (0x80BB0004)
  6. 设置入校时间字段的有效性规则为_access字段有效性规则中怎么表示“入校时间必须为9月”?...
  7. 安装麒麟操作系统及达梦数据库DM8详细步骤教程
  8. Linux 裸I/O
  9. 使用shareSDK实现微信多图分享到朋友圈Url分享到朋友圈URL分享到好友 问题记录
  10. 文件,图片,视频的保存路径