Apache Flink 是如何管理好内存的? (www.54tianzhisheng.cn)
如今,许多用于分析大型数据集的开源系统都是用 Java 或者是基于 JVM 的编程语言实现的。最着名的例子是 Apache Hadoop,还有较新的框架,如 Apache Spark、Apache Drill、Apache Flink。基于 JVM 的数据分析引擎面临的一个常见挑战就是如何在内存中存储大量的数据(包括缓存和高效处理)。合理的管理好 JVM 内存可以将 难以配置且不可预测的系统 与 少量配置且稳定运行的系统区分开来。

在这篇文章中,我们将讨论 Apache Flink 如何管理内存,讨论其自定义序列化与反序列化机制,以及它是如何操作二进制数据的。
by @zhisheng_blog 2019-06-03 16:48 查看详情
原理解析 | Apache Flink 结合 Kafka 构建端到端的 Exactly-Once 处理 (mp.weixin.qq.com)
1. Apache Flink 应用程序中的 Exactly-Once 语义

2. Flink 应用程序端到端的 Exactly-Once 语义

3. 示例 Flink 应用程序启动预提交阶段

4. 在 Flink 中实现两阶段提交 Operator

5. 总结
by @zhisheng_blog 2019-06-03 16:47 查看详情
Flink 全网最全资源(视频、博客、PPT、入门、实战、源码解析、问答等持续更新) (www.54tianzhisheng.cn)
除了《从1到100深入学习Flink》源码学习这个系列文章,《从0到1学习Flink》的案例文章也会优先在知识星球更新,让大家先通过一些 demo 学习 Flink,再去深入源码学习!

如果学习 Flink 的过程中,遇到什么问题,可以在里面提问,我会优先解答,这里做个抱歉,自己平时工作也挺忙,微信的问题不能做全部做一些解答,
但肯定会优先回复给知识星球的付费用户的,庆幸的是现在星球里的活跃氛围还是可以的,有不少问题通过提问和解答的方式沉淀了下来。
by @zhisheng_blog 2019-06-03 16:46 查看详情
Flink状态管理和容错机制介绍 (mp.weixin.qq.com)
本文主要内容如下:

有状态的流数据处理;

Flink中的状态接口;

状态管理和容错机制实现;

阿里相关工作介绍;
by @zhisheng_blog 2019-05-21 20:44 查看详情
Maven 虐我千百遍,我待 Maven 如初恋 (mp.weixin.qq.com)
在如今的互联网项目开发当中,特别是Java领域,可以说Maven随处可见。Maven的仓库管理、依赖管理、继承和聚合等特性为项目的构建提供了一整套完善的解决方案,可以说如果你搞不懂Maven,那么一个多模块的项目足以让你头疼,依赖冲突就会让你不知所措,甚至搞不清楚项目是如何运行起来的.....OK,博主就曾经被Maven“伤害”过,那么该专题的目的就是:彻底搞定Maven
by @zhisheng_blog 2019-05-21 20:43 查看详情
流计算框架 Flink 与 Storm 的性能对比 (mp.weixin.qq.com)
Apache Flink 和 Apache Storm 是当前业界广泛使用的两个分布式实时计算框架。其中 Apache Storm(以下简称“Storm”)在美团点评实时计算业务中已有较为成熟的运用(可参考 Storm 的可靠性保证测试),有管理平台、常用 API 和相应的文档,大量实时作业基于 Storm 构建。
by @zhisheng_blog 2019-05-21 20:43 查看详情
死磕 Java集合之ArrayList源码分析 (mp.weixin.qq.com)
简介
ArrayList是一种以数组实现的List,与数组相比,它具有动态扩展的能力,因此也可称之为动态数组。

继承体系
by @zhisheng_blog 2019-05-17 19:59 查看详情
死磕 java集合之CopyOnWriteArrayList源码分析 (mp.weixin.qq.com)
简介
CopyOnWriteArrayList是ArrayList的线程安全版本,内部也是通过数组实现,每次对数组的修改都完全拷贝一份新的数组来修改,修改完了再替换掉老数组,这样保证了只阻塞写操作,不阻塞读操作,实现读写分离。
by @zhisheng_blog 2019-05-17 19:57 查看详情
OPPO数据中台之基石:基于Flink SQL构建实数据仓库 (mp.weixin.qq.com)
- OPPO 实时数仓的演进思路;

- 基于 Flink SQL 的扩展工作;

- 构建实时数仓的应用案例;

- 未来工作的思考和展望。
by @zhisheng_blog 2019-05-14 19:37 查看详情
新手也能看懂的监控报警系统架构设计 (mp.weixin.qq.com)
对于监控报警这一块内容我想过很多次要从哪个方面讲,因为监控报警在现在已经是互联网公司一个通用的产品。
by @zhisheng_blog 2019-05-09 23:12 查看详情
为何单线程的 Redis 却能支撑高并发? (mp.weixin.qq.com)
为什么 Redis 中要使用 I/O 多路复用这种技术呢?

首先,Redis 是跑在单线程中的,所有的操作都是按照顺序线性执行的,但是由于读写操作等待用户输入或输出都是阻塞的,所以 I/O 操作在一般情况下往往不能直接返回,这会导致某一文件的 I/O 阻塞导致整个进程无法对其它客户提供服务,而 I/O 多路复用就是为了解决这个问题而出现的。
by @zhisheng_blog 2019-05-04 02:10 查看详情
内涵! 程序员才懂的动图(太 TM 形象了) (mp.weixin.qq.com)
内涵! 程序员才懂的动图(太 TM 形象了),看第一张图的时候就开始笑死我了,哈哈哈哈哈哈哈哈哈哈哈哈哈
by @zhisheng_blog 2019-04-27 21:03 查看详情
【生活现场】从电影字幕到 Hive 工作原理解析 (mp.weixin.qq.com)
1、hive是一个数据仓库,存储大数据,主要用来做OLAP分析。

2、hive底层是hdfs,它提供了sql来查询数据。

3、hive的原理是将sql翻译成map-reduce任务。

4、数据的导入导出可以用工具sqoop,原理也是把命令翻译成map-reduce任务。
by @zhisheng_blog 2019-04-27 21:02 查看详情
【面试必问】不可不说的 Java “锁”事 (mp.weixin.qq.com)
Java提供了种类丰富的锁,每种锁因其特性的不同,在适当的场景下能够展现出非常高的效率。本文旨在对锁相关源码(本文中的源码来自JDK 8)、使用场景进行举例,为读者介绍主流锁的知识点,以及不同的锁的适用场景。

Java中往往是按照是否含有某一特性来定义锁,我们通过特性将锁进行分组归类,再使用对比的方式进行介绍,帮助大家更快捷的理解相关知识。下面给出本文内容的总体分类目录:
by @zhisheng_blog 2019-04-27 21:01 查看详情
Elasticsearch 7.0 已经发布,盘他! (mp.weixin.qq.com)
Elastic{ON}北京分享了Elasticsearch7.0在Speed,Scale,Relevance等方面的很多新特性。

比快更快,有传说中的那么牛逼吗?盘他!

通过本文,你能了解到:

Elasticsearch&Kibana 7.部署体验

Elasticsearch7 革命性更新

Elasticsearch 7升级注意事项

Elasticsearch 版本更新太快了,学不动了,肿么办?
by @zhisheng_blog 2019-04-21 09:39 查看详情
为什么说流处理即未来? (mp.weixin.qq.com)
Flink电子月刊第二季《重新定义计算:Apache Flink 实践》正式发布了,该月刊融合了 Apache Flink 在国内各大互联网公司的大规模实践和 Flink Forward China 峰会上的精彩演讲内容,希望对大家有所帮助。
by @zhisheng_blog 2019-04-11 14:16 查看详情
从诗词大会到图解 ElasticSearch 原理解析 (mp.weixin.qq.com)
小史学完了elasticsearch,在笔记本上写下了如下记录:

1、反向索引又叫倒排索引,是根据文章内容中的关键字建立索引

2、搜索引擎原理就是建立反向索引

3、elasticsearch在lucene的基础上进行封装,实现了分布式搜索引擎

4、elasticsearch中的索引、类型和文档的概念比较重要,类似于mysql中的数据库、表和行

5、elasticsearch也是master-slave架构,也实现了数据的分片和备份

6、elasticsearch一个典型应用就是elk日志分析系统
by @zhisheng_blog 2019-04-11 14:16 查看详情
《Flink 源码解析》—— 源码编译运行 (mp.weixin.qq.com)
之前自己本地 clone 了 Flink 的源码,编译过,然后 share 到了 GitHub 上去了,自己也写了一些源码的中文注释,并且 push 到了 GitHub 上去了。这几天阿里开源了宣传已久的 Blink,结果我那个分支不能够继续 pull 下新的代码,再加上自己对 Flink 研究了也有点时间了,所以打算将这两个东西对比着来看,这样可能会学到不少更多东西,因为 Blink 是另外一个分支,所以自己干脆再重新 fork 了一份,拉到本地来看源码。
by @zhisheng_blog 2019-04-11 14:15 查看详情
大数据“重磅炸弹”——实时计算框架 Flink (mp.weixin.qq.com)
Flink 多篇博客和问题以及资料分享,《从1到100深入学习Flink》源码学习这个系列文章,《从0到1学习Flink》的案例文章也会优先在知识星球更新,让大家先通过一些 demo 学习 Flink,再去深入源码学习
by @zhisheng_blog 2019-04-03 19:38 查看详情
实战 | canal 实现Mysql到Elasticsearch实时增量同步 (mp.weixin.qq.com)
题记
关系型数据库Mysql/Oracle增量同步Elasticsearch是持续关注的问题,也是社区、QQ群等讨论最多的问题之一。 问题包含但不限于: 1、Mysql如何同步到Elasticsearch? 2、Logstash、kafka_connector、canal选型有什么不同,如何取舍? 3、能实现同步增删改查吗? ..... 本文给出答案。
by @zhisheng_blog 2019-04-01 21:57 查看详情