<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Yuan_CSDF的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/Yuan_CSDF</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Yuan_CSDF]]></copyright><item><title><![CDATA[Hudi（六）集成Hive]]></title><link>https://blog.youkuaiyun.com/Yuan_CSDF/article/details/130997354</link><guid>https://blog.youkuaiyun.com/Yuan_CSDF/article/details/130997354</guid><author>Yuan_CSDF</author><pubDate>Thu, 01 Jun 2023 22:36:59 +0800</pubDate><description><![CDATA[Hudi源表对应一份HDFS数据，通过Spark，Flink组件或者HudiCLI，可以将Hudi表的数据映射为Hive外部表，基于该外部表，Hive可以方便的进行实时视图，读优化视图以及增量视图的查询。]]></description><category></category></item><item><title><![CDATA[Hudi（五）集成Flink（3）]]></title><link>https://blog.youkuaiyun.com/Yuan_CSDF/article/details/130978537</link><guid>https://blog.youkuaiyun.com/Yuan_CSDF/article/details/130978537</guid><author>Yuan_CSDF</author><pubDate>Wed, 31 May 2023 22:40:20 +0800</pubDate><description><![CDATA[12、离线compaction
]]></description><category></category></item><item><title><![CDATA[Hudi（四）集成Flink（2）]]></title><link>https://blog.youkuaiyun.com/Yuan_CSDF/article/details/130978294</link><guid>https://blog.youkuaiyun.com/Yuan_CSDF/article/details/130978294</guid><author>Yuan_CSDF</author><pubDate>Wed, 31 May 2023 22:21:08 +0800</pubDate><description><![CDATA[当前表，即读取最新的全量快照数据并一次性返回。通过参数 read.streaming.enabled 参数开启流读模式，通过 read.start-commit 参数指定起始消费位置，支持指定 earliest 从最早消费。]]></description><category></category></item><item><title><![CDATA[Hudi（三）集成Flink（1）]]></title><link>https://blog.youkuaiyun.com/Yuan_CSDF/article/details/130815909</link><guid>https://blog.youkuaiyun.com/Yuan_CSDF/article/details/130815909</guid><author>Yuan_CSDF</author><pubDate>Mon, 22 May 2023 21:57:14 +0800</pubDate><description><![CDATA[将编译好的jar包放到Flink的lib目录下。]]></description><category></category></item><item><title><![CDATA[StarRocks与ClickHouse]]></title><link>https://blog.youkuaiyun.com/Yuan_CSDF/article/details/124259187</link><guid>https://blog.youkuaiyun.com/Yuan_CSDF/article/details/124259187</guid><author>Yuan_CSDF</author><pubDate>Mon, 18 Apr 2022 21:00:25 +0800</pubDate><description><![CDATA[1、开源OLAP综述



如今的开源数据引擎多种多样，不同种类的引擎满足了我们不同的需求。现在ROLAP计算存储一体的数据仓库主要有三种，即StarRocks(DorisDB)，ClickHouse和Apache Doris。应用最广的数据查询系统主要有Druid，Kylin和HBase。MPP引擎主要有Trino，PrestoDB和Impala。这些引擎在行业内有着广泛的应用。



2、开源数仓解决方案

接下来，我们讲讲开源大数据以及数仓的解决方案。上图是EMR的整...]]></description><category></category></item><item><title><![CDATA[Flink SQL 常用调优]]></title><link>https://blog.youkuaiyun.com/Yuan_CSDF/article/details/124184470</link><guid>https://blog.youkuaiyun.com/Yuan_CSDF/article/details/124184470</guid><author>Yuan_CSDF</author><pubDate>Thu, 14 Apr 2022 23:14:11 +0800</pubDate><description><![CDATA[1、建表

1.1、JDBC


			connection.max-retry-timeout
			
			可选
			60s
			Duration
			最大重试超时时间，以秒为单位且不应该小于 1 秒。
		
			scan.partition.column
			
			可选
			(none)
			String
			用于将输入进行分区的列名。请参阅下面的分区扫描部分了解更多详情。
		
			scan.partition.num
			
			可选
			(none)
			Integer]]></description><category></category></item><item><title><![CDATA[数据治理（二）]]></title><link>https://blog.youkuaiyun.com/Yuan_CSDF/article/details/124135697</link><guid>https://blog.youkuaiyun.com/Yuan_CSDF/article/details/124135697</guid><author>Yuan_CSDF</author><pubDate>Tue, 12 Apr 2022 22:04:30 +0800</pubDate><description><![CDATA[1、数据质量

1.1、概述

在大数据早期，做数据治理最主要的目的，就是为了提升数据质量，让报表、分析、应用更加准确。到今天，虽然数据治理的范畴扩大了很多，我们开始讲数据资产管理、知识图谱、自动化的数据治理等等概念，但是提升数据的质量，依然是数据治理最重要的目标之一。因为数据要能发挥其价值，关键在于其数据的质量的高低，高质量的数据是一切数据应用的基础。在数据质量不高的环境下，做数据分析可谓问题重重，数据质量问题已经严重影响了组织业务的正常运营。通过科学的数据质量管理，持续地提升数据质量，已...]]></description><category></category></item><item><title><![CDATA[数据治理（一）]]></title><link>https://blog.youkuaiyun.com/Yuan_CSDF/article/details/124135473</link><guid>https://blog.youkuaiyun.com/Yuan_CSDF/article/details/124135473</guid><author>Yuan_CSDF</author><pubDate>Tue, 12 Apr 2022 21:59:41 +0800</pubDate><description><![CDATA[1、基本概念

1.1、什么是数据治理

由于切入视角和侧重点不同，业界给出的数据治理定义已经不下几十种，到目前为止还未形成一个统一标准的定义。
数据治理（Data Governance）指的是数据从零散没有规律变为统一规划的数据、从具有很少甚至于没有组织和流程的治理到企业范围内的综合数据治理、从处理数据时的混乱状态到数据井井有条的一个过程。
数据治理是一种数据管理的概念，能够确保数据的全生命周期存在高数据质量的能力，其最终目标是提升数据的价值。

1.2、为...]]></description><category></category></item><item><title><![CDATA[Flink从1.7到1.14版本升级汇总]]></title><link>https://blog.youkuaiyun.com/Yuan_CSDF/article/details/124002144</link><guid>https://blog.youkuaiyun.com/Yuan_CSDF/article/details/124002144</guid><author>Yuan_CSDF</author><pubDate>Wed, 06 Apr 2022 22:44:40 +0800</pubDate><description><![CDATA[一 、前言

官方发布了Flink1.14版本，但是遗憾的是，中文官网中的案例和资料还都是基于很古老的版本。所以大家照着官网资料跑不通基本代码也是很正常的。

所以整理一下从1.7 版本到1.14版本之间的相对大的变动. 做到在学习的过程中可以做到心里有数。

二 .Flink 1.7 版本

在 Flink 1.7.0，我们更关注实现快速数据处理以及以无缝方式为 Flink 社区构建数据密集型应用程序。我们最新版本包括一些令人兴奋的新功能和改进，例如对 Sc...]]></description><category></category></item><item><title><![CDATA[FlinkSQL源码解析（三）执行流程]]></title><link>https://blog.youkuaiyun.com/Yuan_CSDF/article/details/123467974</link><guid>https://blog.youkuaiyun.com/Yuan_CSDF/article/details/123467974</guid><author>Yuan_CSDF</author><pubDate>Sun, 13 Mar 2022 23:08:06 +0800</pubDate><description><![CDATA[1、前言

前面2部分主要是介绍以下2点：

flink sql整体的执行流程大致为：sqlNode --&gt; Operation --&gt; RelNode --&gt; 优化 --&gt; execNode --&gt; Transformation。
	以及flink sql源码解析需要使用到的java spi。
    现在具体来看看flink sql 在其内部转换的实现步骤，就是如何去调用连接器，主要是在sqlNode --&gt; RelNode这一步。



...]]></description><category></category></item><item><title><![CDATA[FlinkSQL源码解析（二）Java SPI机制]]></title><link>https://blog.youkuaiyun.com/Yuan_CSDF/article/details/123436150</link><guid>https://blog.youkuaiyun.com/Yuan_CSDF/article/details/123436150</guid><author>Yuan_CSDF</author><pubDate>Fri, 11 Mar 2022 23:16:05 +0800</pubDate><description><![CDATA[在前面已经了解了FlinkSQL的转换流程，即如何从excuteSql(sql)如何转换为transformation，到任务的提交。
整体流程大致为：sqlNode --&gt; Operation --&gt; RelNode --&gt; 优化 --&gt; execNode --&gt; Transformation
现在想更深入的了解，我们书写的sql语句是如何通过connecter属性连接kafka、hdfs等，为修改源码新增connector做铺...]]></description><category></category></item><item><title><![CDATA[FlinkSQL源码解析（一）转换流程]]></title><link>https://blog.youkuaiyun.com/Yuan_CSDF/article/details/123397988</link><guid>https://blog.youkuaiyun.com/Yuan_CSDF/article/details/123397988</guid><author>Yuan_CSDF</author><pubDate>Thu, 10 Mar 2022 12:44:27 +0800</pubDate><description><![CDATA[1、前言

1.1、JavaCC

JavaCC(Java Compiler Compiler)是一个开源的语法分析器生成器和词法分析器生成器。JavaCC通过词法和语法描述文件来生成分析器。

flink通过java CC生成分析器用于sql解析和校验。

如下图：在flink-table下的flink-sql-parser项目中，org.apache.flink.sql.parser.impl下的类，就是使用javacc生成的。







1.2、Calcite

...]]></description><category></category></item><item><title><![CDATA[Java异步调用总结]]></title><link>https://blog.youkuaiyun.com/Yuan_CSDF/article/details/123364869</link><guid>https://blog.youkuaiyun.com/Yuan_CSDF/article/details/123364869</guid><author>Yuan_CSDF</author><pubDate>Tue, 08 Mar 2022 22:20:37 +0800</pubDate><description><![CDATA[supplyAsync
			创建带返回值的异步任务的
		runAsync
			创建无返回值的异步任务
		thenApply
			将job2提交到线程池中异步执行，实际执行job2的线程可能是另外一个线程
		thenApplyAsync
			由执行job1的线程立即执行job2，即两个job都是同一个线程执行的
		thenAccept
			接收上一个任务的返回值作为参数，但是无返回值；
		thenRun
			没有入参，也没有返回值
		exceptionally
			exceptio.]]></description><category></category></item><item><title><![CDATA[Iceberg（三）对接Flink]]></title><link>https://blog.youkuaiyun.com/Yuan_CSDF/article/details/122611248</link><guid>https://blog.youkuaiyun.com/Yuan_CSDF/article/details/122611248</guid><author>Yuan_CSDF</author><pubDate>Thu, 20 Jan 2022 23:27:22 +0800</pubDate><description><![CDATA[1、Flink基本操作

1.1、配置参数和jar包

Flink1.11开始就不在提供flink-shaded-hadoop-2-uber的支持，所以如果需要flink支持hadoop得配置环境变量HADOOP_CLASSPATH


[root@hadoop1 flink-1.11.0]# vim bin/config.sh 
export HADOOP_COMMON_HOME=/opt/module/hadoop-3.1.3 
export HADOOP_HDFS_HOME=/opt/...]]></description><category></category></item><item><title><![CDATA[ClickHouse（八）监控与备份]]></title><link>https://blog.youkuaiyun.com/Yuan_CSDF/article/details/122569175</link><guid>https://blog.youkuaiyun.com/Yuan_CSDF/article/details/122569175</guid><author>Yuan_CSDF</author><pubDate>Tue, 18 Jan 2022 21:55:01 +0800</pubDate><description><![CDATA[1、ClickHouse监控概述

ClickHouse运行时会将一些个自身的运行状态记录到众多系统表中（system.*）。所以我们对CH自身的一些运行指标的监控数据，也主要来自这些系统表。

但是直接查询这些系统表会有一些不足之处：

这种方式太过底层，不够直观，我们还需要在此之上实现可视化展示；
	系统表只记录了CH自己的运行指标，有些时候我们需要外部系统的指标进行关联分析，例如Zookeeper、服务器CPU、IO等等。
现在Prometheus + ...]]></description><category></category></item><item><title><![CDATA[ClickHouse（七）MaterializeMySQL引擎]]></title><link>https://blog.youkuaiyun.com/Yuan_CSDF/article/details/122549789</link><guid>https://blog.youkuaiyun.com/Yuan_CSDF/article/details/122549789</guid><author>Yuan_CSDF</author><pubDate>Mon, 17 Jan 2022 22:19:32 +0800</pubDate><description><![CDATA[1、概述

    MySQL的用户群体很大，为了能够增强护具的实时性，很多解决方案会利用binlog将数据写入到ClickHouse。为了能够监听binlog事件，我们需要用到类似canal这样的第三方中间件，这无疑增加了系统的复杂度。

    ClickHouse20.8.2.3版本新增加了MaterializeMySQL的database引擎，该database能映射到MySQL中的某个database，并自动在ClickHouse中创建对应的ReplacingMergeTree。C...]]></description><category></category></item><item><title><![CDATA[java代码远程执行shell脚本]]></title><link>https://blog.youkuaiyun.com/Yuan_CSDF/article/details/122443765</link><guid>https://blog.youkuaiyun.com/Yuan_CSDF/article/details/122443765</guid><author>Yuan_CSDF</author><pubDate>Tue, 11 Jan 2022 23:12:09 +0800</pubDate><description><![CDATA[1、脚本信息如下：



2、代码如下：


public class SSHTool {

    private Connection conn;
    private String ipAddr;
    private Charset charset = StandardCharsets.UTF_8;
    private String userName;
    private String password;

    public SSHTool(String ipAddr, String]]></description><category></category></item><item><title><![CDATA[Iceberg（二）对接Spark]]></title><link>https://blog.youkuaiyun.com/Yuan_CSDF/article/details/122419000</link><guid>https://blog.youkuaiyun.com/Yuan_CSDF/article/details/122419000</guid><author>Yuan_CSDF</author><pubDate>Mon, 10 Jan 2022 22:00:23 +0800</pubDate><description><![CDATA[1、配置参数和jar包

1、将构建好的Iceberg的spark模块jar包，复制到spark jars下


cp /opt/module/iceberg-apache-iceberg-0.11.1/spark3-extensions/build/libs/* /opt/module/spark-3.0.1-bin-hadoop2.7/jars/
cp /opt/module/iceberg-apache-iceberg-0.11.1/spark3-runtime/build/libs/...]]></description><category></category></item><item><title><![CDATA[Iceberg（一）介绍及环境搭建]]></title><link>https://blog.youkuaiyun.com/Yuan_CSDF/article/details/122418763</link><guid>https://blog.youkuaiyun.com/Yuan_CSDF/article/details/122418763</guid><author>Yuan_CSDF</author><pubDate>Mon, 10 Jan 2022 20:43:59 +0800</pubDate><description><![CDATA[1、介绍

Apache Iceberg 是一种用于大型分析数据集的开放表格，Iceberge 向 Trino 和 Spark 添加了使用高性能格式的表，就像 Sql 表一样。

Iceberg 为了避免出现不变要的一些意外，表结构和组织并不会实际删除，用户也不需要特意了解分区便可进行快速查询。

Iceberg 的表支持快速添加、删除、更新或重命名操作。支持overwrite，但不支持行级的更新
	将分区列进行隐藏，避免用户错误的使用分区和进行极慢的查询。
	分区列也会随着表数据量或查询模式的变化而自动更]]></description><category></category></item><item><title><![CDATA[Flink-sql平台化配置之flink-streaming-platform-web]]></title><link>https://blog.youkuaiyun.com/Yuan_CSDF/article/details/122373652</link><guid>https://blog.youkuaiyun.com/Yuan_CSDF/article/details/122373652</guid><author>Yuan_CSDF</author><pubDate>Sat, 08 Jan 2022 12:42:29 +0800</pubDate><description><![CDATA[记录使用flink-streaming-platform-web平台化提交Flink任务。主要是记录通过这个工具提交flink任务的原理。

    相关参考：

    gitee地址：flink-streaming-platform-web: 基于flink-sql的实时流计算web平台

github地址：https://github.com/zhp8341/flink-streaming-platform-web

1、idea本地开发

   ...]]></description><category></category></item></channel></rss>