2013年11月9日

Java深拷贝浅拷贝

摘要: 首先,Java中常用的拷贝操作有三个,operator = 、拷贝构造函数 和 clone()方法。由于Java不支持运算符重载,我们无法在自己的自定义类型中定义operator=。拷贝构造函数大家应该很熟悉,现在看一下如何支持clone方法: 实现 Cloneable接口,因为 ... 阅读全文

posted @ 2013-11-09 16:29 代码王子 阅读(180) 评论(0) 推荐(0)

HBase写数据

摘要: 1 多HTable并发写 创建多个HTable客户端用于写操作,提高写数据的吞吐量,一个例子: static final Configuration conf = HBaseConfiguration.create(); static final String table_log_name ... 阅读全文

posted @ 2013-11-09 16:11 代码王子 阅读(179) 评论(0) 推荐(0)

HBase性能调优

摘要: 因官方Book Performance Tuning部分章节没有按配置项进行索引,不能达到快速查阅的效果。所以我以配置项驱动,重新整理了原文,并补充一些自己的理解,如有错误,欢迎指正。 配置优化 zookeeper.session.timeout 默认值:3分钟(180000ms) 说明:R... 阅读全文

posted @ 2013-11-09 16:08 代码王子 阅读(104) 评论(0) 推荐(0)

HBase压缩

摘要: Hbase有两种压缩 策略:minor和major。Minor compactions通常选择几个临近的小的storefiles把他们重写成一个。Minors 不会丢掉已删除或者过期的cells,只有major compactions才会做这些。有时一次Minor compactions将... 阅读全文

posted @ 2013-11-09 16:06 代码王子 阅读(421) 评论(0) 推荐(0)

HBASE表设计

摘要: 1. 表的设计 1.1 Pre-Creating Regions 默认情况下,在创建HBase表的时候会自动创建一个region分区,当导入数据的时候,所有的HBase客户端都向这一个region写数据,直到这 个region足够大了才进行切分。一种可以加快批量写入速度的方法是通过预先创建一些... 阅读全文

posted @ 2013-11-09 16:05 代码王子 阅读(187) 评论(0) 推荐(0)

Mapreduce 框架解析

摘要: MapReduce过程解析 一、客户端 Map-Reduce的过程首先是由客户端提交一个任务开始的。 public static RunningJob runJob(JobConf job) throws IOException { //首先生成一个JobClient对象 ... 阅读全文

posted @ 2013-11-09 15:56 代码王子 阅读(233) 评论(0) 推荐(0)

HDFS读写数据过程

摘要: 一、文件的打开 1.1、客户端 HDFS打开一个文件,需要在客户端调用DistributedFileSystem.open(Path f, int bufferSize),其实现为: public FSDataInputStream open(Path f, int bufferSi... 阅读全文

posted @ 2013-11-09 15:50 代码王子 阅读(900) 评论(0) 推荐(0)

Hadoop 数据排序(一)

摘要: 1、概述 1TB排序通常用于衡量分布式数据处理框架的数据处理能力。Terasort是Hadoop中的的一个排序作业。那么Terasort在Hadoop中是怎样实现的呢?本文主要从算法设计角度分析Terasort作业。 2、算法思想 实 际上,当我们要把传统的串行排序算法设计成并行的排序算法时,... 阅读全文

posted @ 2013-11-09 15:41 代码王子 阅读(309) 评论(0) 推荐(0)

排序算法

摘要: 排序算法有很多,所以在特定情景中使用哪一种算法很重要。为了选择合适的算法,可以按照建议的顺序考虑以下标准: (1)执行时间 (2)存储空间 (3)编程 对于数据量较小的情形,(1)(2)差别不大,主要考虑(3);而对于数据量大的,(1)为首要。 主要排序法有: ... 阅读全文

posted @ 2013-11-09 15:33 代码王子 阅读(223) 评论(0) 推荐(0)

Weka 算法大全

摘要: 关联规则挖掘 (一) Apriori (二) FilteredAssociator (三) FPGrowth (四) GeneralizedSequentislPatterns (五) PredictiveApriori (六) Tertius Cluster (一) ... 阅读全文

posted @ 2013-11-09 15:30 代码王子 阅读(491) 评论(0) 推荐(0)

Mahout系列之----kmeans 聚类

摘要: Kmeans是最经典的聚类算法之一,它的优美简单、快速高效被广泛使用。 Kmeans算法描述 输入:簇的数目k;包含n个对象的数据集D。 输出:k个簇的集合。 方法: 从D中任意选择k个对象作为初始簇中心;repeat;根据簇中对象的均值,将每个对象指派到最相似的簇;更新簇均值,即计算每个簇... 阅读全文

posted @ 2013-11-09 14:32 代码王子 阅读(203) 评论(0) 推荐(0)

Mahout 系列之--canopy 算法

摘要: Canopy 算法,流程简单,容易实现,一下是算法 (1)设样本集合为S,确定两个阈值t1和t2,且t1>t2。 (2)任取一个样本点p属于S,作为一个Canopy,记为C,从S中移除p。 (3)计算S中所有点到p的距离dist (4)若dist<t1,则将相应点归到C,作为弱关联。 (5)若... 阅读全文

posted @ 2013-11-09 14:07 代码王子 阅读(279) 评论(0) 推荐(0)

Mahout系列之-----相似度

摘要: Mahout推荐系统中有许多相似度实现,这些组件实现了计算不能User之间或Item之间的相似度。对于数据量以及数据类型不同的数据源,需要不同的相似度计算方法来提高推荐性能,在mahout提供了大量用于计算相似度的组件,这些组件分别实现了不同的相似度计算方。 User 相似度: ... 阅读全文

posted @ 2013-11-09 13:08 代码王子 阅读(253) 评论(0) 推荐(0)

Mahout系列之----距离度量

摘要: x = (x1,...,xn) 和y = (y1,...,yn) 之间的距离为 (1)欧氏距离 EuclideanDistanceMeasure (2)曼哈顿距离 ManhattanDistanceMeasure (3)马氏距离MahalanobisDi... 阅读全文

posted @ 2013-11-09 13:01 代码王子 阅读(223) 评论(0) 推荐(0)

Mahout系列之----共轭梯度预处理

摘要: 对于大型矩阵,预处理是很重要的.常用的预处理方法有: (1) 雅克比预处理 (2)块状雅克比预处理 (3)半LU 分解 (4... 阅读全文

posted @ 2013-11-09 12:21 代码王子 阅读(225) 评论(0) 推荐(0)

导航