09 2019 档案
摘要:BTree和B+Tree详解 B+树索引是B+树在数据库中的一种实现,是最常见也是数据库中使用最为频繁的一种索引。B+树中的B代表平衡(balance),而不是二叉(binary),因为B+树是从最早的平衡二叉树演化而来的。在讲B+树之前必须先了解二叉查找树、平衡二叉树(AVLTree)和平衡多路查
阅读全文
摘要:1、快速排序的简单介绍 算法思想:基于分治的思想,是冒泡排序的改进型。首先在数组中选择一个基准点(该基准点的选取可能影响快速排序的效率,后面讲解选取的方法),然后分别从数组的两端扫描数组,设两个指示标志(low指向起始位置,high指向末尾),首先从后半部分开始,如果发现有元素比该基准点的值小,就交
阅读全文
摘要:一.数据倾斜解决方案之原理以及现象分析 1、数据倾斜的现象 在任何大数据类的项目中,都是最棘手的性能问题,最能体现人的技术能力,最能体现RD(Research Developer,研发工程师)的技术水平。 数据倾斜 = 性能杀手 如果没有丰富的经验,或者没有受过专业的技术培训,是很难解决数据倾斜问题
阅读全文
摘要:一.troubleshooting之控制shuffle reduce端缓冲大小以避免OOM 二.troubleshooting之解决JVM GC导致的shuffle文件拉取失败 三.troubleshooting之解决YARN队列资源不足导致的application直接失败 四.troublesho
阅读全文
摘要:一.算子调优之MapPartitions提升Map类操作性能 1.MapPartitions操作的优点: 如果是普通的map,比如一个partition中有1万条数据;ok,那么你的function要执行和计算1万次。 但是,使用MapPartitions操作之后,一个task仅仅会执行一次func
阅读全文
摘要:一.JVM调优之原理概述以及降低cache操作的内存占比 1、常规性能调优:分配资源、并行度。。。等 2、JVM调优(Java虚拟机):JVM相关的参数,通常情况下,如果你的硬件配置、基础的JVM的配置,都ok的话,JVM通常不会造成太严重的性能问题;反而更多的是,在troubleshooting中
阅读全文
摘要:一.性能调优之在实际项目中分配更多资源 分配更多资源:性能调优的王道,就是增加和分配更多的资源,性能和速度上的提升,是显而易见的;基本上,在一定范围之内,增加资源与性能的提升,是成正比的;写完了一个复杂的spark作业之后,进行性能调优的时候,首先第一步,我觉得,就是要来调节最优的资源配置;在这个基
阅读全文

浙公网安备 33010602011771号