自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Just for Fun la

-XX:+HeapDumpOnOutOfMemoryError

  • 博客(27)
  • 收藏
  • 关注

原创 流式SQL中不同类型TableSink浅析

因此在流式SQL中需要有不同类型的TableSink来支持不同的SQL。以Flink为例,Flink有3种流式的TableSink,

2020-05-18 23:21:26 1808

原创 自定义Trigger解决Flink窗口延迟数据丢失问题

而在收到延迟窗口时,我们就直接就输出窗口数据并清理窗口state。

2020-05-12 22:27:01 2388 2

原创 HotSpotVM 线程实现浅析

也就是说是由pthread_create出来的线程来执行Thread.run方法,1:1的线程模型。

2019-10-30 22:17:30 2258

原创 Flink如何实现动态表与静态表的Join操作

当前Flink版本(1.5),Table API与SQL都只支持流表与流表之间的Join操作,然而很多业务场景都需要流表与静态表之间的Join。

2019-04-22 20:24:23 6907 3

原创 JStack实现浅析

通过注释我们可以知道,jstack会根据不同参数决定使用不同的方式来进行thread dump:使用SA的JStack,或者使用attach机制。

2019-04-05 17:22:18 1286

原创 Flink HDFS Sink 如何保证 exactly-once 语义

经过源码层面的分析可以看到,对exactly-once语义的保证,是通过引入中间状态(in-progress及pending)和最终可用状态(finished)来实现的,是一种两阶段提交(2PC)的方案。

2018-11-12 20:32:01 5160 5

原创 Spark TeraSort 实现与调优

参考ehiggs/spark-terasort以及RDD#sortBy的代码,我自己实现了一个Spark的TeraSort程序。

2018-03-12 20:38:03 4180 1

原创 SparkSQL如何实现聚合下推

通过Physical Plan可以看到数据源通过PrunedFilteredScan#buildScan接口返回数据给到SparkSQL,下层的HashAggregate执行部分聚合,Exchange进行shuffle,最后由上层的HashAggregate进行最终聚合。

2018-03-05 13:14:47 4848 11

原创 SparkSQL性能分析与优化及相关工具小结

前段时间的工作是将内部一个OLAP系统Hxxx作为一个数据源接入到SparkSQL并进行优化。本文总结下调优过程当中一些可以借鉴与讨论的地方,鉴于本人水平有限,还请有这方面调优经验的同学不吝赐教 ^_^

2018-03-02 21:24:38 12127 3

翻译 Java编译概览

将源文件编译成类文件并不是一个简单的过程,通常可以分成三个阶段。

2015-12-27 20:57:04 785

原创 BTrace简介及实现浅析

通过BTrace的实现我们可以看到HotSpot Serviceability的几个技术点:Dynamic Attach,Instrumentation API以及JVM Tool Interface。

2015-07-19 22:38:37 3004

原创 HotSpotVM Serviceability Agent 实现浅析

可以看到SA中有两种方式来获取HotSpotVM里面的变量地址,一种是通过符号表,另一种是通过VMStructEntry这种VM提供的元信息(也就是通过&运算获取的地址)。

2015-06-15 00:17:19 3137 2

原创 HotSpotVM 字符串实现浅析

我们可以借助SA写一个小工具来dump下StringTable中所有的oop(SA真是个好东西哇:)

2015-04-19 13:49:03 1405

原创 OpenJDK类加载实现浅析

1. loadClass 用于实现类加载的代理机制;2. findClass 用于找到类的二进制表示;3. defineClass 用于将类的二进制表示转化成`Class`对象,这一步由虚拟机来完成;

2015-03-29 14:47:48 3321

原创 HotSpotVM 对象机制实现浅析

今天借助HotSpot SA来看下HotSpot VM所实现的对象机制。

2015-03-26 00:03:03 3905 1

翻译 HotSpot运行时概览

本文将介绍与HotSpot运行时的重要子系统相关的核心概念。

2015-03-23 06:14:25 1747

原创 HotSpotVM JNI 实现浅析

最近想看下HotSpotVM是怎么找到一个native方法的实现的,例如Thread.start0和FileChannelImpl.transferTo0,最后发现是两种不同的方式。

2015-03-13 15:36:57 2423

原创 借助HotSpot SA浅析finalize机制

相信Java程序猿都对Object#finalize不陌生,那么你有没有想过,这个方法,是在什么时候,如何被调用的?

2015-03-10 19:40:43 1268

原创 OpenJDK源码索引

OpenJDK 7u 下有三个比较重要的子工程。

2015-03-07 01:56:41 1074

原创 Java官方文档索引

之前一直感觉Java的官方文档有些杂乱,最近特意整理了一下,仅供参考。

2015-03-07 01:30:16 3761 1

翻译 Storm基本原理

然而大规模实时数据处理的需求与日俱增,缺少一个“实时的Hadoop”已经成为数据处理领域最大的缺憾。

2015-03-05 00:03:04 1204

原创 Java的BigDecimal如何解决浮点数精度问题

BigDecimal的解决方案就是,不使用二进制,而是使用十进制(BigInteger)+小数点位置(scale)来表示小数。

2015-02-16 00:30:31 11198 3

原创 Java注解实现浅析

所以就像R大说的,注解就是接口+Map,然后通过动态代理将他们组合起来就OK了 ^_^

2015-02-11 09:48:13 4982

原创 Java Platform Debugger Architecture 实现浅析

Java Platform Debugger Architecture(JPDA)简单来说就是Java提供的一套用于开发Java调试工具的规范,任何的JDK实现都需要实现这个规范。

2015-02-05 01:04:25 4174

原创 借助HotSpot SA浅析动态代理与反射机制的实现

今天我们借助HotSpot SA中的一个工具,ClassDump,来看下Java的动态代理以及反射机制是如何实现的。

2015-02-01 17:30:03 1750

原创 Lombok实现浅析

简单来讲,Lombok就是在编译时对抽象语法树(AST)进行了修改来实现它的功能。

2015-01-11 22:03:23 1621

原创 SkipList 浅析

假设k层节点的数量是k+1层节点的P倍,那么其实这个SkipList可以看成是一棵平衡的P叉树。

2014-08-20 15:14:06 4995 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除