Danner Blog

Took the sourest lemon that life has to offer and turned it into something resembling lemonade.

大数据 meetup 视频

时间 大数据+AI Meetup 10:00-10:30 深入研究Apache Spark 3.0的新功能 10:30-11:15 从Lambda架构到HSAP,实时数仓的演进之路 11:15-12:00 Alink:提升基于 Flink 的机器学习平台易用性 14:00-14:45 Flink + KafKa在网易云音乐的应用实战 14:45-15:30 Delta Lake 如何帮助...

Flume hdfsSink 数据延迟问题

Flume -> HDFS 时,我们一般会如下设置,将数据按时间落到表分区 a1.sinks.s1.type = hdfs a1.sinks.s1.hdfs.path = hdfs://xxx:8020/data/ds=%Y%m%d/ a1.sinks.s1.hdfs.writeFormat = Text a1.sinks.s1.hdfs.fileType = DataStream ...

MaxWell binlog2json 流程

下载源码,执行如下命令编译 mvn -e clean package -DskipTests=true MaxWell 中,Binlog2json 流程是单线程(main thread)执行。整个执行流程如下所示 了解完整的解析流程,我们就可以做一些二次开发: DDL 语句:业务表结构发生变化后,下游大数据如何感知?在 SQL 解析部分添加代码 时间序列:若业务...

从 Cli 看 Hive 如何解析 SQL

Cli 接收用户输入 SQL,交给 Driver 执行,具体执行流程如下: // CliDriver // 启动 public static void main(String[] args) throws Exception { int ret = new CliDriver().run(args); System.exit(ret); } public int run(St...

访问带 kerberos 认证的 Hive

HDFS

集群开启 kerberos ,下午一顿折腾才能远程访问 Hive,特此记录。mac 环境 keytab kerberos 访问是要验证 keytab,那么就必须要在本地生成对应的文件 拷贝服务器上的 krb5.conf,下载到本地 /etc/krb5.conf 拷贝服务器上的 xxx.keytab,下载到本地并执行命令获取和缓存 principal(当前主体)初始的票据授予票...

high performance spark 读书笔记

Join Join 操作大多数情况会进行 shffle 操作,而 shffle 很耗时。 Core 两个父 RDD 的分区器,子 RDD 都不知道的情况下,拉取两个父 RDD 都会产生 Shuffle,网络开销很大 RDD[key,value] Map 操作,会丢失父 RDD 的分区器 (map 操作有可能改变 key 值,spark 定义不再继承 父RDD 分区器...

Hive on Spark[译]

Hive 默认的是 MR 引擎,但只要设置 set hive.execution.engine=spark; 执行引擎就变成 Spark。但 Hive 和 Spark 版本之间是存在一些兼容星的问题 Hive Version – master 2.3.0 ...

Spark SQL 之 Logical Plan

上图展示了 Logical Plan 在整个 SQL 解析中所在的位置,并阐述 Logical Plan 经历的三个步骤 Unresolved Logical Plan:由 SparkSqlParser 将语法树/DF/DataSet 转换成未解析的逻辑算子树,不包含数据信息与列信息 Logical Plan:Analyzer 将一系列规则作用在未解析的逻辑树,对树节点绑定各...

Antlr 入门案例

​ Antlr 是一款强大的语法分析器生成器,可以用来读取、处理、执行和转换结构化文本或二进制文件。通过称为文法的形式化语言描述,Antlr 可以为该语言自动生成词法分析器。生成的语法分析器可以自动构建语法分析树,它是表示文法如何匹配输入的数据结构。Antlr 还可以自动生成树遍历器,用来访问树节点以执行特定的代码。 ​ Antlr 的树遍历器分为监听器和访问者。访问者模式遍历语法树是一...

Mac 命令

本文命令搜集于网络 SSH Tunnel 实现类似 VPN 功能:启动一个 socket server ,接收到数据后通过 SSH 转发出去。Win 的 XShell 有隧道设置选项,但在 Mac 上没找到有类似的功能的软件。这边通过命令行的模式来实现 ssh -D 本地监听端口 -f -C -q -N user@targethost SSH Tunnel 设置好后,可利用浏览器的...