- 博客(40)
- 资源 (3)
- 收藏
- 关注
原创 flink 内存及优化
flink内存在yarn的环境下.提交任务时指定内存 -ytm 4g-ytm,–yarntaskManagerMemory指定的是taskmanager.memory.managed.size执行无状态作业或者使用 Heap State Backend(MemoryStateBackend 或 FsStateBackend)时,建议将托管内存设置为 0。 这样能够最大化分配给 JVM 上用户代码的内存。-yD taskmanager.memory.managed.size=0不设置管理内存为
2020-12-10 11:02:10
1639
原创 sparkshuffe 3
如何去看一个shuffle算子aggregatormapSideCombinekeyOrderingpartitionerreduceByKey有true无有groupByKey有false无有sortByKey无false有有repartitionAndSortWithinPartitions无false有有这个...
2019-06-25 11:17:33
221
原创 spark shuffle 2 map和reduce
spark shuffleshuffle分为map阶段和reducer阶段ShuffleManager在driver和executor的sparkEnv中被创建.基于spark.shuffle.manager的设置.driver用它注册shuffle,executor(或在driver本地运行的任务)可以请求来读或写数据/** * Pluggable interface for shuf...
2019-06-24 21:48:11
283
原创 spark shuffle 1 相关类的了解
WritablePartitionedPairCollection每个kv对有一个分区,支持内存效率排序迭代器.插入分区,k,v返回迭代器Iterator[((Int, K), V)],/** * A common interface for size-tracking collections of key-value pairs that * * 为key-value对的s...
2019-06-24 20:43:43
174
原创 从实模式到保护模式 15 章 任务切换
在一个多任务环境中,可以同时在多个任务,每个任务都有自己的ldt和tss.可以在多个任务之间切换,使它们轮流执行.从一个任务切换到另一个任务时,具体的切换是由处理器固件负责进行的.什么时候切换,切换到那个任务时由操作系统负责的,处理器负责切换的具体过程,包括保护前一个现场(段寄存器,通用寄存器),恢复新任务运行的环境.有两种基本的切换任务的方式协同式 当任务切换时,当前的主动请求放弃执行权...
2019-06-12 14:05:15
354
原创 从实模式到保护模式 14 章 任务和特权级保护
前面的段的保护是类似阻止写可执行的代码段,访问超过段的界限.这些段的保护是处理器提供的基本保护功能.正常的程序只访问自己的段,但恶意的程序可以修改自己的段寄存器,指向操作系统的私有数据.进行访问.其次,在(单核)多任务系统中,两个以上的任务需要可以交替执行,快速的处理器加上高效的任务切换,在外界看来,多个任务都在同时运行.多任务系统对任务之间的隔离和保护,以及任务和操作系统之间的隔离和保护都...
2019-06-11 23:13:41
484
原创 第13章 程序的动态加载和执行
操作系统需要考虑采用什么办法加载用户程序(所有的段,在使用前都要以描述符的形式定义在描述符表中),用户程序需要提供一些必要的信息帮助操作系统.操作系统提供了大量的例程供用户使用,比如显示一个字符串,就不要让用户自己来写代码了,直接调用操作系统的代码即可.但操作系统系统和用户程序应当协商一种机制,让用户程序能够使用这些例程.(API)内核不能放到主引导扇区(超过512字节),主引导程序加载内核,...
2019-06-10 14:20:08
546
原创 第12章 存储器保护
存储器保护,存储器保护可能禁止程序的非法内存访问,比如向代码段写入数据,访问段界之外的内存位置.一旦发现这些非法操作,在程序失去控制之前引发异常中断.可以提高软件的可靠性.利用存储器的保证,可以实现虚拟内存管理,当访问一个不在内存中的段时,会引发异常中断,操作系统就可以利用这一点来从磁盘中进行段的换入换出,从而实现在较小的内存空间运行尽可能多的程序.可用多个段描述符指向同一个段,在保护模式下,...
2019-06-08 23:39:55
516
原创 spar 内存存储 MemoryStore
MemoryStorespark将内存中的block抽象为MemoryEntry//spark将内存中的block抽象为MemoryEntryprivate sealed trait MemoryEntry[T] { def size: Long//当前块的大小 def memoryMode: MemoryMode//block存入内存的内存模式 def classTag: Cl...
2019-05-03 00:41:40
400
原创 spark 存储之磁盘存储
spark 存储之磁盘存储spark的数据需要写到磁盘上,主要有两个类负责这个工作.DiskBlockManager和DiskStoreDiskBlockManagerCreates and maintains the logical mapping between logical blocks and physical on-disk locations. One block is map...
2019-05-02 16:42:47
1070
原创 spark 内存管理模型
MemoryManagerAn abstract memory manager that enforces how memory is shared between execution and storage. In this context, execution memory refers that used for computation in shuffles, joins, sorts ...
2019-05-02 02:13:23
310
原创 从spark学scala语法 1
with mutable.MultiMap[TaskAttemptId, BlockId]//BlockInfoManager 类 /** * Tracks the set of blocks that each task has locked for writing. */ @GuardedBy("this") private[this] val writeLocksB...
2019-05-01 01:13:36
164
原创 netty Future await方法的实现
Future awaitpublic interface Future<V> extends java.util.concurrent.Future<V> { /** * Waits for this future to be completed within the * specified time limit. * * ...
2019-04-30 15:05:19
2583
原创 spark MapOutputTracker
MapOutputTracker 图MapOutputTracker保持追踪一个阶段map输出的位置的类.这个类是抽像的,因为driver和executor有不同的MapOutputTracker版本MapOutputTrackerMasterDriver-side的类,跟踪一个stage map输出的位置DAGScheduler用这个类来 注册/取消注册 map输出的状态,查看任务位...
2019-04-29 19:09:04
226
原创 spark sql dataset用匿名函数 的问题
dataset用匿名函数不得优化spark.sql("select * from user").as[User].filter($"id" > 5). select("id").show()spark.sql("select * from user").as[User].filter(_.id>5) .select("id").show()上面的两句话一样吗?首先,结果肯定...
2019-04-28 20:15:15
448
原创 spark KVStore(web界面)
spark界面spark有一个web界面展示这个界面 是用 jetty做为后端展示的.KVStore是这些数据的存储.为什么会有kvStoreissue
2019-04-26 19:47:50
817
翻译 spark 对大应用更好的可扩展历史服务器 (Better History Server scalability for many / large applications)
Better History Server scalability for many / large applications下一代的spark历史服务/UI在这个文档中我们将看一下为什么现在的spark history server(shs)是大量issues的来源,然后探索关于如何修复造成当前事态的想法.动机SHS是一个非常有用的工具,供人们对其应用程序进行事后调试.在driver在防...
2019-04-26 16:32:16
219
原创 spark ListenerBus
spark ListenerBus系统中,常常需要异步处理监听事件.用监听器,可以解耦系统.ListenerBus 总是监听器总线.ListenerBus 类/** * An event bus which posts events to its listeners. * 事件总线 发送事件到监听器 */ //L 表示监听器, E表示传给监听器的事件.private[spar...
2019-04-25 13:01:02
257
原创 netty 源码分析
netty中的write方法io.netty.channel.Channel write方法//注意这个chnnel是netty中的chinnel,不是nio中的channelio.netty.channel.Channel /** * Request to write a message via this {@link Channel} through the {@li...
2019-04-24 20:50:15
350
原创 maven scala java
项目中,Java和scala混用,java调scala,scala调java.用 mvn package的时候报错.总结出了以下简单的 xml.使之不抱错 <build> <plugins> <!-- 这个插件是打包的,用maven-shade-plugin应该也有一样的功能--> &...
2019-04-24 12:41:40
171
转载 java 日志
门面模式就什么门面模式java 日志讲解java 日志讲解SLF4JJava简易日志门面(Simple Logging Facade for Java,缩写SLF4J),是一套包装Logging 框架的界面程式,以外观模式实现。可以在软件部署的时候决定要使用的 Logging 框架,目前主要支援的有Java Logging API、Log4j及logback等框架。以MIT 授权方式发...
2019-04-23 19:55:58
105
原创 线上jvm故障,dump拉回本地查看原因
配置参数//路径填写一个系统中存在的路径 -Xms20m -Xmx20m -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=H:\soft 代码package OutOfMemoryError;import java.util.ArrayList;import java.util.List;public class Memory ...
2019-04-22 12:41:33
560
原创 林轩田机器学习基石课程学习笔记2. Learning to Answer Yes/No
Learning to Answer Yes/No回顾: 有一个A,看D和H set,从H set里面选一个g,当成学到的技能(要不要给顾客发信用卡这样一个公式),今天讲机器怎么解决要不要发信用卡的问题,或者说,怎么去解决是非题.Perceptron Hypothesis Set-介绍一个具体的H的长像. perceptron(感知器),把问题数学化,就可以用一个公式来表示了.可...
2019-01-31 18:31:30
226
原创 林轩田机器学习基石课程学习笔记1.The Learning Problem
When Can Machines Learn?(何时可以使用机器学习)The learning problem(机器学习问题)Course Introduction机器学习是一门理论与实践结合的学科,不能讲的太理论,这样就会无聊,不知道如何用在实际的问题上.不能全讲机器学习的方法,这样的话在遇到实际问题时,不知道用那个方法面向基础(foundation oriented)基...
2019-01-29 19:32:21
162
翻译 Apache Spark - 深入了解存储格式(译)
Apache Spark - Deep Dive into Storage Format’sApache Spark一直在快速发展,包括对核心API的更改和添加,Spark是一种内存大数据处理系统,内存是它不可或缺的关键资源。因此,有效使用内存对它来说非常重要。让我们尝试在本文中找到以下问题的答案:What storage format did Spark use?How did stor...
2019-01-03 15:06:06
966
原创 spark sql 从antlr的ast到Unresolved Logical Plan
spark sql 从antlr的ast到Unresolved Logical Plan前提了解spark sql流程了解antlr,能看懂antlr的语法文件(*.g4),了解antlr访问者模式,安装idea antlr插件准备生成antlr语法树在idea中打开SqlBase.g4,这个是antlr规定的spark sql的sql语法.如果我们想看看某个关键字在spark ...
2018-12-06 17:12:05
1021
原创 markdown nginx 搭建自己的图片服务器
介绍 在使用markdown格式的过程中,经常需要上传图片,但是常常很复杂,,在csdn上也很麻烦,在我有阿里云的情况下,用nginx实现我的图片服务器.安装 OpenRestyOpenResty,以前用过,所以就按照文档快速安装.apt-get install libpcre3-dev libssl-dev perl make build-essential curl./config...
2018-11-19 17:19:08
2035
原创 kafka如何获取所有topic kafka如何获取集群信息
我使用的是0.10.1版本方法一public class KafkaConsumer&lt;K, V&gt; implements Consumer&lt;K, V&gt; { @Override public Map&lt;String, List&lt;PartitionInfo&gt;&gt; listTopics() {
2018-09-06 14:47:53
9541
原创 Kafka指定topic分区的偏移量 Exception in thread "main" java.lang.IllegalStateException: No current assignment
在kafka中,我想指定分区的偏移量开始消费 KafkaConsumer&amp;lt;Integer,String&amp;gt; consumer = new KafkaConsumer(props); consumer.subscribe(Arrays.asList(&quot;test&quot;)); consumer.seek(new TopicPartition(&am
2018-08-23 12:52:38
7828
1
原创 metadataUpdater
MetadataMetadata 是封装了kafka元数据的类,是一个管理类 metadata的元数据第一次什么时候更新 每次调用producer.send方法,都会去metadata.cluster中去查找元数据,如果没有,就会标记需要更新,并且通过version等待更新.public synchronized int requestUpdate() { ...
2018-08-22 17:36:34
382
原创 kafkaProducer
kafkaProducer说明producer是线程安全的(consumer不是线程安全的),多个线程共享一个producer是推荐的.send()方法是异步的,把单个的记录变成一批发送提高效率.acks 请求完成的标准 all阻塞直到记录完全commit(所有的broker都收到消费),最慢但最可靠的如果请求失败,producer可以自动发送(props.put(“retries”,...
2018-08-21 15:17:26
673
原创 spark windows 下在idea中 作driver 调试 spark问题(spark本地代码集群运行问题)
spark windows 下在idea中 作driver 调试 spark(spark本地代码集群运行问题) 18/03/15 19:35:48 WARN ReliableDeliverySupervisor: Association with remote system [akka.tcp://sparkExecutor@node1:38126] has failed, address...
2018-03-15 19:56:13
1095
原创 sparkDag源码分析--生成
sparkDag源码分析–生成Dag生成 dag主要是通过rdd的各种转换生成,如下面rdd的map方法,会生成一个新的Rdd //返回一个新的rdd,通过应用一个函数到Rdd的所有元素 def map[U: ClassTag](f: T => U): RDD[U] = { val cleanF = sc.clean(f) new MapPar...
2018-03-14 19:55:32
595
原创 数据结构-顺序表
package suanfa;/** * * @author Administrator 顺序表在内存空间是一串连续的地址空间,最基础的线性表,随机存取 seqList */public class SeqList {private Integer[] array;private int maxsize;private int curren
2017-08-08 00:30:39
194
原创 Spring IllegalArgumentException 异常
Spring3+Jdk8 IllegalArgumentException 异常不知不觉中,已经开始用JDK8了,然后它却不能和spring3兼容。解决办法:1 spring4 2 jdk7
2016-04-15 14:52:32
559
原创 Ajax
AJAX即“Asynchronous Javascript And XML”(异步JavaScript和XML),是指一种创建交互式网页应用的网页开发技术。AJAX = 异步 JavaScript和XML(标准通用标记语言的子集)。AJAX 是一种用于创建快速动态网页的技术。通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的
2015-05-27 14:30:36
2184
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人