美文网首页
第十二周

第十二周

作者: 梧上擎天 | 来源:发表于2019-06-17 18:04 被阅读0次

    Algorithm

    并查集: java实现并查集,一种特殊的树,子节点指向父节点。rank优化、路径优化。

    github地址

    Review

    一、《为什么要学习 Apache Flink?》

    应用场景:

    • flink-kafka ETL 数据清洗。(构建实时数仓,实时索引build)
    • 数据分析 (报表、大屏)
    • 数据触发(触发器,告警)

    链接

    二、《有状态流式处理引擎基石》

    • 状态容错

      • Flink如何保证精确一次如何保证?分布式快照 流程中安插checkpoint barrier,其中记录source的position和流过的各个operator中的state。
    • 状态维护

      • JVM Heap状态后端 (on memery)
      • RocksDB状态后端(on disk)
    • Event-time处理

      • 如何判定在某一个时间点数据都到齐了
    • 状态的保存与迁移

    链接

    三、《DataStream API》

    操作概览.png image.png image.png

    链接

    Tips/Technology

    一、JVM知识体系复习

    参考资料:https://github.com/CyC2018/CS-Notes/blob/master/notes/Java%20%E8%99%9A%E6%8B%9F%E6%9C%BA.md

    二、Flink教程(更新中)

    本系列课程由 Apache Flink Community China 官方出品。旨在为具备一定大数据基础、对Apache Flink感兴趣的同学提供系统性的入门教程,课程路径为“基础篇>>进阶篇>>运维篇>>实战篇>>源码篇”。地址

    三、分布式锁

    • redis

    现成实现框架:Redisson,实现原理:

    石衫大神的图.png
    其中lua脚本中有两个判断:第一个判断当前key是否有空闲锁和是否过期,第二个判断客户端id,如果相同则为重入锁,数据结构后+1。
    如果加锁成功则启动watch dog后台进程,没十秒扫描一次,如果当前持锁的客户端还继续持有锁则继续延长时间。

    缺点:集群或者主从结构在master宕机的时候,客户A持有锁。还没同步过去就宕机了,此时客户端B去加锁就成功了,客户端A也认为自己持有锁。

    • zk

    现成的实现框架 Curator

    image.png

    1.谁需要加锁,谁就去zk上创建一个临时顺序节点
    2.创建完成后,判断一下自己是不是最小的节点,如果是就拿锁,不是就对上一个节点添加监听器
    3.上一个节点结束自己就排到前面去了,相当于一个排队机制
    4.如果节点挂了,因为是临时的zk会自动删除节点,完成释放锁的过程。

    Share

    《什么是命》

    最近这个时间一直感觉自己很迷茫。总有这样一种感觉,自己无论多么努力好像最后也就那么回事了,而开始慢悠悠的养老生活其实也不会差到哪里去,我相信很多中年人都会有这种体会,这就应该是命。

    如果一个人中了彩票或者家里拆迁了,我想这不是命好而运气好。运气和命是不一样的,世界上从不缺少有好运气的人,并且每个人都会有走运和不走运的时候,但是命如果定了,那些中奖的人就会在几年内把钱败光,或者当一辈子守财奴一生也就那样了。运气无非是在命运曲线上的微调而已。

    我个人是不信宿命论这一系列说法的。我认为命是由环境和性格决定的。环境很重要,生在现在肯定就比生在100年前要好。在同一个时代下,人的性格就是命运,因为它决定人看问题的角度和处理事情的方法。有的人保守,有的人激进,有的人软弱,有的人冲动.... 这些不同的性格会让人在人生这条路上选择不同的方向,选着选着命运的曲线就出来了,而运气不过是在这条曲线上的微调而已。我在和不同的人交流的时候,就能看到一个人未来的命运判断他到底能不能成功,不是我会算命,因为我感觉他做事的方式不会引导他向成功的方向前进。

    Research

    JVM知识体系复习,多级JSON树型结构,Flink使用SQL语法解析。

    相关文章

      网友评论

          本文标题:第十二周

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