hadoop中使用到的设计模式

设计模式(Design pattern)的官方定义是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。解决的是代码可重用、代码更容易被他人理解、保证代码可靠性的问题。
Hadoop作为一个06年开始开源走到现在的框架,已经是一个非常成熟和经典的系统了。这个里面对于设计模式的使用也是非常的经典,本篇主要介绍一下Hadoop中使用到的设计模式,非常值得学习。额外需要提到的是这里的设计模式特指:四人帮23种模式.
关于设计模式的详细介绍可见:http://www.runoob.com/design-pattern/design-pattern-tutorial.html
1.创建型模式
1.1 单例模式 单例模式(Singleton Pattern)
RMPolicyProvider : 双重锁的形式单例实现。
NMPolicyProvider,HDFSPolicyProvider : 饿汉式的单例实现。
一般是要求全局单例的要求。

阅读全文…

Hadoop中的类命名

干程序员这行,一个很常见的工作就是需要给程序中的变量、方法、类命名,那么如何合理的取名字就是一个非常有意思和挑战的事情。通常来说,不好定义变量有以下几种风格。

阅读全文…

spark简介

一 核心术语
----------------------------------------
Application : 运行在spark上的应用,包含了driver和executor
Application jar : 打包的可执行jar
Driver program : 运行main函数的类
Cluster manager :外部的资源调度,例如mesos,yarn
Deploy mode : 部署运行模式,例如local,client,yarn等
Worker node:具体的执行节点,例如yarn中的nodemanager
Executor : 在Worker node上运行的进程,例如yarn中的container
Task:最小可执行的单元
job:具体的某个操作行为,例如spark中的save,collector
Stage :每个作业的执行阶段,类似于mr中的map, reduce
二 整体架构图:
----------------------------------------
spark = 一个driver + 少量的executor + 大量的task组成
driver : 打的可执行spark包
executor : 一个独立的jvm进程,在spark on yarn中,executor = container
task : 独立jvm进程中的线程

阅读全文…

kylin-关键配置

自身的配置
kylin.properties
kylin.cube.algorithm : 建立cube的算法,默认是auto , 可以选择的是 “layer” or “inmem” ,“inmem”更快,但是更消耗内存。
kylin.hbase.region.cut : hbase 的每个region 大小,默认是5G
kylin.hbase.default.compression.codec : 在hbase中的压缩方式。
hadoop 相关的配置
kylin_job_conf.xml & kylin_job_conf_inmem.xml 文件
kylin.job.mr.config.override.mapreduce.map.java.opts=-Xmx7g
kylin.job.mr.config.override.mapreduce.map.memory.mb=8192
kylin.job.mr.config.override.mapreduce.job.queuename=myQueue
hive 相关的配置
kylin_hive_conf.xml
默认情况下 ,这三个配置文件是一样的,配置在哪个文件中都可以,只是名字上做了区分。
若是想开启压缩的话:
hive要开启压缩,修改 kylin_hive_conf.xml
<property>
<name>mapreduce.map.output.compress.codec</name>
<value>org.apache.hadoop.io.compress.SnappyCodec</value>
<description></description>
</property>
<property>
<name>mapreduce.output.fileoutputformat.compress.codec</name>
<value>org.apache.hadoop.io.compress.SnappyCodec</value>
<description></description>
</property>
MR作业想开启压缩的话: 修改kylin_job_conf.xml & kylin_job_conf_inmem.xml

阅读全文…

Pages: 1 2 3 Next