12 2014 档案

摘要:一、调优工作流程 (1)、划分系统需求优先级(内存消耗、响应时间、吞吐量、可用性、可管理性、启动时间等) (2)、选择JVM部署模式:单JVM还是多JVM,32位或64位,64位指针压缩 (3)、选择JVM Runtime:-client 还是 server 模式,垃圾回收器Parallel 还是 阅读全文
posted @ 2014-12-31 12:17 lihui1625 阅读(150) 评论(0) 推荐(0)
摘要:一、数值统计模式 1、求最大值、最小值、总值、个数、平均值 案例:给出用户发帖的第一次时间、最后一次时间、评论总数、帖子平均长度 等。 解决:定义一个 类CaculateObj实现 Writable 接口,以用户ID为Key,在Map/Reduce阶段向HDFS写入的是 CaculateObj 对象 阅读全文
posted @ 2014-12-30 11:55 lihui1625 阅读(150) 评论(0) 推荐(0)
摘要:一、性能优化的类型 1、使用更高效的算法 2、减少锁竞争 3、为算法生成更有效率的代码 二、CPU的使用 用BufferedOutputStream 替代直接的 FileOutputStream 利用缓冲、NIO改善磁盘与网络的IO瓶颈。 三、锁竞争 利用ConcurrentHashMap 替代 H 阅读全文
posted @ 2014-12-29 18:56 lihui1625 阅读(96) 评论(0) 推荐(0)
摘要:一、性能优化的类型 1、使用更高效的算法 2、减少锁竞争 3、为算法生成更有效率的代码 二、CPU的使用 用BufferedOutputStream 替代直接的 FileOutputStream 利用缓冲、NIO改善磁盘与网络的IO瓶颈。 三、锁竞争 利用ConcurrentHashMap 替代 H 阅读全文
posted @ 2014-12-29 18:56 lihui1625 阅读(97) 评论(0) 推荐(0)
摘要:性能分析很少在生产环境中进行,通常在质量评估、测试或者开发环境中进行,作为监控活动发现性能问题时的后续活动。 1、Oracle Solaris Studio Performance Analyzer 只能安装在Solaris/Linux 平台上。 2、 NetBeans Profiler 阅读全文
posted @ 2014-12-29 18:49 lihui1625 阅读(79) 评论(0) 推荐(0)
摘要:性能分析很少在生产环境中进行,通常在质量评估、测试或者开发环境中进行,作为监控活动发现性能问题时的后续活动。 1、Oracle Solaris Studio Performance Analyzer 只能安装在Solaris/Linux 平台上。 2、 NetBeans Profiler 阅读全文
posted @ 2014-12-29 18:49 lihui1625 阅读(75) 评论(0) 推荐(0)
摘要:http://blog.csdn.net/cuirong1986/article/details/8528317 External Source Input Pattern Description 这种模式不从hdfs加载数据,而是从hadoop以外系统,例如RDB或web service加载。 I 阅读全文
posted @ 2014-12-29 17:54 lihui1625 阅读(113) 评论(0) 推荐(0)
摘要:http://blog.csdn.net/cuirong1986/article/details/8510162 CHAPTER 7.Input and Output Patterns 本章关注一个最经常忽略的问题,来改进MapReduce 的value:自定义输入和输出。我们并不会总使用Mapre 阅读全文
posted @ 2014-12-29 17:41 lihui1625 阅读(145) 评论(0) 推荐(0)
摘要:http://blog.csdn.net/cuirong1986/article/details/8502460 Chain Folding 这是对job 链的一种优化。基本上是一种大体规则:每条记录都会提交给多个mapper,或者给reducer然后给mapper。这种综合处理方法会节省很多读文件 阅读全文
posted @ 2014-12-29 17:34 lihui1625 阅读(148) 评论(0) 推荐(0)
摘要:http://blog.csdn.net/cuirong1986/article/details/8492804 Chapter 6. Meta patterns 这种模式不是解决某个问题的,而是处理模式的关系的。可以理解为“模式的模式”。首先讨论的是job链,把几个模式联合起来解决复杂的,有多个阶 阅读全文
posted @ 2014-12-29 17:26 lihui1625 阅读(126) 评论(0) 推荐(0)
摘要:http://blog.csdn.net/cuirong1986/article/details/8492804 Chapter 6. Meta patterns 这种模式不是解决某个问题的,而是处理模式的关系的。可以理解为“模式的模式”。首先讨论的是job链,把几个模式联合起来解决复杂的,有多个阶 阅读全文
posted @ 2014-12-29 17:26 lihui1625 阅读(107) 评论(0) 推荐(0)
摘要:http://blog.csdn.net/cuirong1986/article/details/8489248 Replicated Join Pattern Description 复制join是一种特殊的join,用于一个大数据和许多小数据集map端执行的情况。 Intent 这种模式能够消除 阅读全文
posted @ 2014-12-29 17:20 lihui1625 阅读(109) 评论(0) 推荐(0)
摘要:http://blog.csdn.net/cuirong1986/article/details/8489248 Replicated Join Pattern Description 复制join是一种特殊的join,用于一个大数据和许多小数据集map端执行的情况。 Intent 这种模式能够消除 阅读全文
posted @ 2014-12-29 17:20 lihui1625 阅读(147) 评论(0) 推荐(0)
摘要:http://blog.csdn.net/cuirong1986/article/details/8485273 Chapter 5. Join Patterns 把数据保存成一个巨大的数据集不是很常见。例如,用户信息数据频繁更新,所以要保存到关系数据库中。于此同时,web日志以恒定的数据流量增加, 阅读全文
posted @ 2014-12-29 17:10 lihui1625 阅读(119) 评论(0) 推荐(0)
摘要:http://blog.csdn.net/cuirong1986/article/details/8485273 Chapter 5. Join Patterns 把数据保存成一个巨大的数据集不是很常见。例如,用户信息数据频繁更新,所以要保存到关系数据库中。于此同时,web日志以恒定的数据流量增加, 阅读全文
posted @ 2014-12-29 17:10 lihui1625 阅读(138) 评论(0) 推荐(0)
摘要:http://blog.csdn.net/cuirong1986/article/details/8481075 Binning Pattern Description 分箱模式,跟前面的类似,分类记录且不考虑记录的顺序。 Intent 归档数据集中的每条记录到一个或多个类别。 Motivation 阅读全文
posted @ 2014-12-29 17:01 lihui1625 阅读(205) 评论(0) 推荐(0)
摘要:http://blog.csdn.net/cuirong1986/article/details/8481075 Binning Pattern Description 分箱模式,跟前面的类似,分类记录且不考虑记录的顺序。 Intent 归档数据集中的每条记录到一个或多个类别。 Motivation 阅读全文
posted @ 2014-12-29 17:01 lihui1625 阅读(151) 评论(0) 推荐(0)
摘要:http://blog.csdn.net/cuirong1986/article/details/8476368 Chapter 4. Data Organization Patterns 与前面章节的过滤器相比,本章是关于数据重组。个别记录的价值通常靠分区,分片,排序成倍增加。特别是在分布式系统中 阅读全文
posted @ 2014-12-29 16:53 lihui1625 阅读(149) 评论(0) 推荐(0)
摘要:http://blog.csdn.net/cuirong1986/article/details/8476368 Chapter 4. Data Organization Patterns 与前面章节的过滤器相比,本章是关于数据重组。个别记录的价值通常靠分区,分片,排序成倍增加。特别是在分布式系统中 阅读全文
posted @ 2014-12-29 16:53 lihui1625 阅读(158) 评论(0) 推荐(0)
摘要:http://blog.csdn.net/cuirong1986/article/details/8469448 Top Ten Pattern Description Top ten模式跟前面的有很大的不同,跟输入数据大小无关,最终得到的记录数量是确定的。而在通用filtering中,输出的规模取 阅读全文
posted @ 2014-12-29 16:42 lihui1625 阅读(134) 评论(0) 推荐(0)
摘要:http://blog.csdn.net/cuirong1986/article/details/8469448 Top Ten Pattern Description Top ten模式跟前面的有很大的不同,跟输入数据大小无关,最终得到的记录数量是确定的。而在通用filtering中,输出的规模取 阅读全文
posted @ 2014-12-29 16:42 lihui1625 阅读(140) 评论(0) 推荐(0)
摘要:http://blog.csdn.net/cuirong1986/article/details/8465630 Chapter 3. Filtering Patterns 本章的模式有一个共同点:不会改变原来的记录。这种模式是找到一个数据的子集,或者更小,例如取前十条,或者很大,例如结果去重。这种 阅读全文
posted @ 2014-12-29 16:34 lihui1625 阅读(230) 评论(0) 推荐(0)
摘要:http://blog.csdn.net/cuirong1986/article/details/8465630 Chapter 3. Filtering Patterns 本章的模式有一个共同点:不会改变原来的记录。这种模式是找到一个数据的子集,或者更小,例如取前十条,或者很大,例如结果去重。这种 阅读全文
posted @ 2014-12-29 16:34 lihui1625 阅读(605) 评论(0) 推荐(0)
摘要:http://blog.csdn.net/cuirong1986/article/details/8456923 Inverted Index Summarizations Pattern Description 反向索引模式在MapReduce分析中经常作为一个例子。我们将会讨论我们要创建的ter 阅读全文
posted @ 2014-12-29 16:19 lihui1625 阅读(138) 评论(0) 推荐(0)
摘要:http://blog.csdn.net/cuirong1986/article/details/8456923 Inverted Index Summarizations Pattern Description 反向索引模式在MapReduce分析中经常作为一个例子。我们将会讨论我们要创建的ter 阅读全文
posted @ 2014-12-29 16:19 lihui1625 阅读(129) 评论(0) 推荐(0)
摘要:http://blog.csdn.net/cuirong1986/article/details/8455335 Median and standard deviation 中值和标准差的计算比前面的例子复杂一点。因为这种运算是非关联的,它们不是那么容易的能从combiner中获益。中值是将数据集一 阅读全文
posted @ 2014-12-29 16:10 lihui1625 阅读(411) 评论(0) 推荐(0)
摘要:http://blog.csdn.net/cuirong1986/article/details/8455335 Median and standard deviation 中值和标准差的计算比前面的例子复杂一点。因为这种运算是非关联的,它们不是那么容易的能从combiner中获益。中值是将数据集一 阅读全文
posted @ 2014-12-29 16:10 lihui1625 阅读(170) 评论(0) 推荐(0)
摘要:http://blog.csdn.net/cuirong1986/article/details/8451336 CHAPTER 2 .Summarization Patterns 随着每天都有更多的数据加载进系统,数据量变得很庞大。这一章专注于对你的数据顶层的,概括性意见的设计模式,从而使你能扩展 阅读全文
posted @ 2014-12-29 16:00 lihui1625 阅读(161) 评论(0) 推荐(0)
摘要:http://blog.csdn.net/cuirong1986/article/details/8451336 CHAPTER 2 .Summarization Patterns 随着每天都有更多的数据加载进系统,数据量变得很庞大。这一章专注于对你的数据顶层的,概括性意见的设计模式,从而使你能扩展 阅读全文
posted @ 2014-12-29 16:00 lihui1625 阅读(352) 评论(0) 推荐(0)
摘要:http://blog.csdn.net/cuirong1986/article/details/8443841 Chapter 1. Design Patterns and MapReduce MapReduce 是一种运行于成百上千台机器上的处理数据的框架,目前被google,Hadoop等多家 阅读全文
posted @ 2014-12-29 15:46 lihui1625 阅读(135) 评论(0) 推荐(0)
摘要:http://blog.csdn.net/cuirong1986/article/details/8443841 Chapter 1. Design Patterns and MapReduce MapReduce 是一种运行于成百上千台机器上的处理数据的框架,目前被google,Hadoop等多家 阅读全文
posted @ 2014-12-29 15:46 lihui1625 阅读(138) 评论(0) 推荐(0)
摘要:http://dongxicheng.org/mapreduce/hadoop-join-two-tables/ 1. 概述 在传统数据库(如:MYSQL)中,JOIN操作是非常常见且非常耗时的。而在HADOOP中进行JOIN操作,同样常见且耗时,由于Hadoop的独特设计思想,当进行JOIN操作时 阅读全文
posted @ 2014-12-29 14:26 lihui1625 阅读(714) 评论(0) 推荐(0)
摘要:http://blog.csdn.net/qq272936993/article/details/7457553 现在这里有两个text文档,需要把它合并成一个文档,并且里面的数据不能有冗余.. user.txt文件: depart.txt文件: 生成文件: 因为user.txt文档的第3个字段与d 阅读全文
posted @ 2014-12-29 14:10 lihui1625 阅读(190) 评论(0) 推荐(0)
摘要:JVM 性能监控一般在生产环境中。 一、垃圾收集 JVM 记录垃圾收集报告几乎没有什么额外开销,因此建议在生产环境中开启: -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -Xloggc:/opt/hbase/bin/../logs/gc 阅读全文
posted @ 2014-12-28 17:12 lihui1625 阅读(138) 评论(0) 推荐(0)
摘要:一、JVM 的基本架构 JIT编译器 (Just-In-Time Compiler, 即时编译器):Client 或 Server 垃圾收集器:Serial、Parallel、CMS、G1 JVM Runtime: 32 位JVM 的最大内存约为2.5~3G . 64 位JVM 的指针压缩:-XX: 阅读全文
posted @ 2014-12-28 16:32 lihui1625 阅读(138) 评论(0) 推荐(0)
摘要:一、CPU 使用率 命令: vmstat 输出 最后的CPU列::us = user, sy=system ,id=idle ,wa=waiting ,st= 命令: mpstat 输出 命令: top 输出 二、CPU调度程序运行队列 命令: vmstat 三、内存利用率 命令: vmstat m 阅读全文
posted @ 2014-12-28 13:43 lihui1625 阅读(162) 评论(0) 推荐(0)
摘要:jstatd 的启动步骤: 1、新建文件jstatd.all.policy,内容如下 2、启动 3、启动 jvisualvm 4、连接 5、成功 阅读全文
posted @ 2014-12-28 11:58 lihui1625 阅读(203) 评论(0) 推荐(0)
摘要:待续 阅读全文
posted @ 2014-12-26 09:39 lihui1625 阅读(104) 评论(0) 推荐(0)
摘要:一、协处理器的种类 1、observer:与触发器相似,回调函数在一些特定事件发生时候被执行。主要接口有RegionObserver、MasterObserver、WALObserver 2、endpoint:与存储过程类似,通过一些远程过程调用来动态扩展RPC协议。 二、 Coprocessor 阅读全文
posted @ 2014-12-26 09:38 lihui1625 阅读(249) 评论(0) 推荐(0)
摘要:一、设计模式 1、单例模式: 对于频繁使用的对象,可以省略创建对象所花费的时间,减少内存使用频率,减轻GC压力。 单例模式相比静态类的优势:可以继承、被继承、实现接口,面向对象风格;静态类不行,是面向过程风格的。 2、代理模式: 因为安全原因,屏蔽客户端直接访问真实对象;远程调用,隐藏远程调用的细节 阅读全文
posted @ 2014-12-24 14:38 lihui1625 阅读(148) 评论(0) 推荐(0)
摘要:http://thoughtfly.iteye.com/blog/1426996 glassfish已经内部实现集群步骤 启动某个域后,打开后台管理 1.创建一个节点 2.创建一个集群并指向特定节点 3.在集群下创建实例,实例分两种,本机的和远程的。远程的要使用SSH安全套接字。确认后会给出新的监听 阅读全文
posted @ 2014-12-24 13:18 lihui1625 阅读(221) 评论(0) 推荐(0)
摘要:http://blog.csdn.net/lifetragedy/article/details/7712691 一、为何要集群 单台App Server再强劲,也有其瓶劲,先来看一下下面这个真实的场景。 当时这个工程是这样的,tomcat这一段被称为web zone,里面用spring+ws,还装 阅读全文
posted @ 2014-12-23 17:34 lihui1625 阅读(162) 评论(0) 推荐(0)
摘要:http://blog.csdn.net/lifetragedy/article/details/7708724 一、总结前一天的学习 从“第三天”的性能测试一节中,我们得知了决定性能测试的几个重要指标,它们是: ü 吞吐量 ü Responsetime ü Cpuload ü MemoryUsag 阅读全文
posted @ 2014-12-23 17:32 lihui1625 阅读(148) 评论(0) 推荐(0)
摘要:一、总结前一天的学习 在前两天的学习中我们知道、了解并掌握了Web Server结合App Server实现单向Https的这样的一个架构。这个架构是一个非常基础的J2ee工程上线布署时的一种架构。在前两天的教程中,还讲述了Http服务器、App Server的最基本安全配置(包括单向https的实 阅读全文
posted @ 2014-12-23 17:27 lihui1625 阅读(256) 评论(0) 推荐(0)
摘要:一、先从J2EE工程的通用架构说起 这是一个通用的Web即B/S工程的架构,它由: ü Web Server ü App Server ü DB Server 三大部分组成,其中: ² Web Server 置于企业防火墙外,这个防火墙,大家可以认为是一个CISCO路由器,然后在CISCO路由器上开 阅读全文
posted @ 2014-12-23 16:29 lihui1625 阅读(161) 评论(0) 推荐(0)
摘要:一、Class的生命周期 1、加载:将.class 文件读取到内存,存放在方法区(Perm Gen), 最终产品是Class对象。 2、验证:检查是否有正确数据结构。 3、准备:JVM为Class的静态变量分配内存,并设置默认初始值。 4、解析:把Class的二进制数据中的符号引用替换为直接引用。 阅读全文
posted @ 2014-12-23 15:36 lihui1625 阅读(190) 评论(0) 推荐(0)
摘要:1、每天15万 PV 的在线文档类型网站 环境:4 CPU,16GB 内存, 64位 CentOS 5.4 问题:网站失去响应 原先JVM配置:JDK1.5, -Xmx12G -Xms12G 解决过程:发现问题来自GC停顿(12G内存 的 Full GC 需要12秒),内存中暂存文件导致“朝生夕灭” 阅读全文
posted @ 2014-12-21 21:47 lihui1625 阅读(150) 评论(0) 推荐(0)
摘要:1、jps 列出JVM 进程 其中: -m 列出输入参数;-l 列出类全名 ;-v 列出JVM 参数 命令: jps -l 输出: 命令:jps -l -m -v 2、jstat 列出JVM统计信息 命令: jstat -gc 7164 250 20 (获取进程7164的Heap 状况,250毫秒为 阅读全文
posted @ 2014-12-21 21:40 lihui1625 阅读(337) 评论(0) 推荐(0)
摘要:1、对象是否已死 (1). 引用计数法:无法回收相互引用的对象,故JVM没有采用 例子: 以上例子使用引用计数法无法回收,但是JVM使用的不是,JVM可回收。 (2). 可达性分析算法: 通过一系列“GC root” 作为起始点,从这些节点开始往下搜索,搜索经过的路径成为引用链。若对象不与引用链相连 阅读全文
posted @ 2014-12-21 21:25 lihui1625 阅读(118) 评论(0) 推荐(0)
摘要:1、JVM 运行时数据区 所有线程共享的数据区:方法区(持久代)、堆区 线程隔离的数据区:程序计数器、Java虚拟机栈区 堆区构成:新生代 ( 由Eden, From Survivor, To Survivor 构成)、老生代 运行时常量池:方法区一部分,用于存放编译期生成的各种字面量和符号引用 直 阅读全文
posted @ 2014-12-21 16:53 lihui1625 阅读(112) 评论(0) 推荐(0)
摘要:http://blog.chinaunix.net/uid-26602509-id-4110150.html 简介 考虑一下这种场景,你开发了一个应用,它有十分优秀的布局设计,最新的特性以及其它的优秀特点。但是在性能这方面欠缺,不管这个应用如何都会遭到客户拒绝。客户总是期望它们的应用应该有更好的性能 阅读全文
posted @ 2014-12-21 10:47 lihui1625 阅读(2131) 评论(0) 推荐(0)
摘要:http://blog.csdn.net/kthq/article/details/8618052 堆内存设置 原理 JVM堆内存分为2块:Permanent Space 和 Heap Space。 Permanent 即 持久代(Permanent Generation),主要存放的是Java类定 阅读全文
posted @ 2014-12-21 10:18 lihui1625 阅读(104) 评论(0) 推荐(0)
摘要:1、为何HMaster一般不需调整垃圾回收机制 HMaster 没有处理过重的负载,并且实际的数据服务不经过 HMaster,所以垃圾回收时 HMaster 通常不会产生问题。 2、描述JRE的启发式算法 JRE 在默认情况下会按照一般情况下来估计程序在做什么、怎么创建对象、如何分配堆内存处理数据, 阅读全文
posted @ 2014-12-20 09:20 lihui1625 阅读(177) 评论(0) 推荐(0)
摘要:public class QuickSortUtil { public static void sort(int[] array) { sort(array, 0, array.length - 1); } private static void sort(int[]... 阅读全文
posted @ 2014-12-19 17:48 lihui1625 阅读(101) 评论(0) 推荐(0)
摘要:假设出现 ConnectionLoss 的直接重试。 假设判断框下边为Y,右边为N 1. 连接流程 2. Master 竞争流程 3、Master 工作流程 其中故障恢复的流程 4、Worker工作流程 5、Client工作流程 阅读全文
posted @ 2014-12-17 17:08 lihui1625 阅读(272) 评论(0) 推荐(0)
摘要:1、分布式系统常见问题 部分失败:发生网络错误时候,发送者不知道接受者是否已经收到信息,接收者可能收到、可能没有、可能进程已死。发送者需要重新连接接收者,再次发送以确认。 2、ZooKeeper 用于正确处理部分失败‘,其特点是 (1)、ZooKeeper 核心是一个精简的文件系统,提供排序、通知等 阅读全文
posted @ 2014-12-15 21:22 lihui1625 阅读(127) 评论(0) 推荐(0)
摘要:http://www.binospace.com/index.php/in-depth-analysis-hbase-phoenix/ 深入分析HBase-Phoenix执行机制与原理 七月 1st, 2013 by klose | Posted under 互联网应用, 海量数据存储与处理. 针对 阅读全文
posted @ 2014-12-14 17:21 lihui1625 阅读(911) 评论(0) 推荐(0)
摘要:http://blog.csdn.net/jiadebin890724/article/details/40622575 Using Impala to Query HBase Tables(利用impala查询HBase Tables) 默认情况下,impala table使用存储在HDFS中的数 阅读全文
posted @ 2014-12-14 16:18 lihui1625 阅读(452) 评论(0) 推荐(0)