2013年1月9日星期三

hadoop求文件交集

一,理论

   neil同学昨天抛给我一个小问题:利用hadoop从2个文件中提取出相同的条目。文件格式如下:
input1.txt
aaaa
bbbb
cc
11

input2.txt
aaa
bbbb
ccc
22

2013年1月6日星期日

hadoop蒙特卡洛算法续集

这个版本是参考自带samples实现。相比上个野生版本,增加修改如下特性:
old/new
1:生成点数由输入文本文件决定/生成点数可由命令行参数指定,据此生成相应二进制文件

2:文件中存在冗余列/二进制输入输出文件中不再有冗余列,程序中通过NullWritable来对原本冗余列的位置占位


2013年1月5日星期六

hadoop处女秀之蒙特卡洛算法

序,

   《Hadoop In Action》里开始就推荐从观摩hadoop自带的example起步,于是走马观花的看一遍sample,里面竟然有个Dancing Link的分布式版本。当看到有一个MonteCarlo求Pi的源文件时,觉得有必要去复习一下MonteCarlo的原理。于是跑去看了一下这个随机算法的思路,看完觉着学习还是自己动手来的好,于是先不去看sample自己试着实现一下,因为这个算法很简单。不过,由于不熟悉Hadoop编程模型和IO套路甚至数据类型,又是自己操刀的第一个hadoop程序,就这样摸黑上路了,中间走了很多弯路,摘记如下。

2012年11月28日星期三

erlang模拟TCP连接三次握手四次挥


TCP连接的断开和建立是it从业者尤其是面试官喜闻乐见的内容,今天笔者来借助erlang模拟一下TCP建立过程的三次握手(Three-way Handshak)和断开的四次挥手(Four-way handshake)过程,之所以选择erlang,是因为最近在看erlang的东西。

40+行erlang代码实现一个简易分布式计算框架


选择erlang,多半是因为它便捷的分布式处理方式(当然,是针对其他fp语言)。现在笔者就利用erlang,来鼓捣一个实现了map-reduce思想的简易分布式计算框架。

本文假设你不是erlang盲;
本文假设你了解一些map-reduce的知识;
本文着重介绍erlang分布式架构的搭建过程,代码细节不详细讨论