美文网首页
Flink 1.10 新特性一览

Flink 1.10 新特性一览

作者: 郭彦超 | 来源:发表于2020-03-26 21:58 被阅读0次

    Flink 1.10 是迄今为止规模最大的一次版本升级,除标志着 Blink 的合并完成
    外,还实现了 Flink 作业的整体性能及稳定性的显著优化, 非常适合数据实时处理及海量批处理。

    Hive相关

    ● 支持读写静态分区和动态分区表。
    ● 在表级别和分区级别都支持 INSERT OVERWRITE。
    ● 支持了更多数据类型。(除 UNION 类型都支持)
    ● 支持更多的 DDL。(CREATE TABLE/DATABASE)
    ● 支持在 Flink 中调用 Hive 的内置函数。(Hive 大约 200 多个内置函数)
    ● 支持了更多的 Hive 版本。(Hive 的 1.0.0~3.1.1)
    ● 做了很多性能优化如,Project/Predicate Pushdown,向量的读取 ORC 数
    据等。
    ● 通过Module用户可以使用多种外部系统函数,目前 Module 有两个实现,CoreModule 提供了Flink原生的内置函数,HiveModule 提供了 Hive 的内置函数,先加载的 Module 会提供 Function 的定义。
    

    Batch Sql

    • 特点:
      ● 容错好,可以单点恢复
      ● 调度好,不管多少资源都可以运行
      ● 性能差,中间数据需要落盘,强烈建议开启压缩

    • 配置

    #开启压缩
    taskmanager.network.blocking-shuffle.compression.enabled = true
    #提高重启间隔时间
    restart-strategy.fixed-delay.delay = 30 s
    #故障转移策略
    jobmanager.execution.failover-strategy = region
    #Session 模式可以跨作业复用进程。加大 TaskManager 的超时释放,复用闲置的进程资源
    resourcemanager.taskmanager-timeout = 900000
    
    
    • 使用 Blink planner 创建Batch Sql
    TableEnvironment tEnv = TableEnvironment.create(EnvironmentSettings
     .newInstance()
     .useBlinkPlanner()
     .inBatchMode()
     .build());
    
    #切换到hive catalog
    tEnv.registerCatalog("hive", hiveCatalog);
    tEnv.useCatalog("hive");
    

    其它

    • Flink 和 Blink 的整合正式完成
    • Flink on Yarn 支持Session模式,支持跨作业复用Job资源
    • Flink 对 K8S 环境的原生支持
    • PyFlink 增加了原生 UDF 支持
    • 支持创建临时函数,程序退出即销毁
    • 默认Shuffle 的压缩
    • 基于新调度框架的优化 (FLINK-14735)
    • 基于比例的弹性内存分配,使得内存利用更加合理
    • 对管理页面进行优化调整

    相关文章

      网友评论

          本文标题:Flink 1.10 新特性一览

          本文链接:https://www.haomeiwen.com/subject/qbyhuhtx.html