自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

365天

做喜欢的事

  • 博客(24)
  • 资源 (4)
  • 收藏
  • 关注

原创 Redis的内存碎片

Redis默认使用jemalloc分配内存,根据fast'14的最佳论文的说法,当遇到变长key-value负载时,会出现碎片问题:内存利用率低,实际分配的内存比所需要的内存多。因此我用YCSB对Redis的内存进行了测试。实验的第1阶段:向Redis插入100万条记录,key为20字节,value为100字节,皆为定长,理论上的有效数据大约是120MB。阶段2:产生90万个update请

2014-10-29 16:02:02 13125 1

原创 谷歌技术"三宝"之BigTable

2006年的OSDI有两篇google的论文,分别是BigTable和Chubby。Chubby是一个分布式锁服务,基于Paxos算法;BigTable是一个用于管理结构化数据的分布式存储系统,构建在GFS、Chubby、SSTable等google技术之上。相当多的google应用使用了BigTable,比如Google Earth和Google Analytics,因此它和GFS、MapRed

2012-05-04 22:09:29 91123 11

原创 谷歌技术"三宝"之MapReduce

江湖传说永流传:谷歌技术有"三宝",GFS、MapReduce和大表(BigTable)!谷歌在03到06年间连续发表了三篇很有影响力的文章,分别是03年SOSP的GFS,04年OSDI的MapReduce,和06年OSDI的BigTable。SOSP和OSDI都是操作系统领域的顶级会议,在计算机学会推荐会议里属于A类。SOSP在单数年举办,而OSDI在双数年举办。那么这篇博客就来介绍一下

2012-04-26 22:01:57 137418 22

原创 谷歌技术"三宝"之谷歌文件系统

题记:初学分布式文件系统,写篇博客加深点印象。GFS的特点是使用一堆廉价的商用计算机支撑大规模数据处理。虽然"The Google File System " 是03年发表的老文章了,但现在仍被广泛讨论,其对后来的分布式文件系统设计具有指导意义。然而,作者在设计GFS时,是基于过去很多实验观察的,并提出了很多假设作为前提,这等于给出了一个GFS的应用场景。所以我们自己在设计分布式系统时,一定要

2012-04-21 17:28:31 60706 10

原创 使用math库遇到的错误

程序里需要使用pow函数,虽然我已经#include ,但是make的时候仍然出现错误:undefined reference to 'pow'。在网上查找了一些解决方案,明白了math库是需要手动加上-lm链接的,但是仍有些问题不明白。Q1:pow的参数如果是两个常数,则不加-lm也是正确的,why?Q2:-lm的位置似乎有讲究,gcc $(OBJS) -o exbin -lm可以链

2012-04-09 22:03:26 2445

原创 三种二叉树遍历的非递归实现

今天偶然翻出了很久以前写的一篇博客,是关于三种二叉树遍历的非递归实现的,转到这儿来吧。程序都是伪代码,因为是考研复习期间写的,数据结构参考了严蔚敏的《数据结构》。先看递归实现:void Traverse(BiTree T){ if(T){ //visit,先序遍历 Traverse(T->lchild); //visit,中序遍历 Travers

2012-04-09 20:43:02 1867

翻译 主文件系统 vs 二级文件系统 (EMC篇)

文主要基于FAST11和FAST12的两篇论文:A study of practical deduplication和Characteristics of backup workloads in production systems。前者来自微软,主要分析的是用于主存储系统的文件系统;后者来自EMC,分析的是用于二级存储系统(如备份、归档)的文件系统。两篇论文共同的特点是实验的数据集都非常庞大,因

2012-03-19 21:32:15 3568

翻译 主文件系统 vs 二级文件系统 (微软篇)

本文主要基于FAST11和FAST12的两篇论文:A study of practical deduplication和Characteristics of backup workloads in production systems。前者来自微软,主要分析的是用于主存储系统的文件系统;后者来自EMC,分析的是用于二级存储系统(如备份、归档)的文件系统。两篇论文共同的特点是实验的数据集都非常庞大,

2012-03-18 11:02:00 3694

翻译 最佳论文:构建高性能的重复数据删除系统

USENIX年度会议(USENIX Annual Technical Conference)是计算机体系结构的顶级会议之一,每年举办一次。2011年ATC会议的最佳论文奖被来自赛门铁克的一篇论文摘得:Building a High-performance Deduplication System。最近几年关于重复数据删除的研究达到了高潮,2011年FAST的最佳论文是一篇来自微软的关于重复数据删除

2011-12-26 15:05:19 4225 2

原创 磁盘分区

有台服务器的分区不太合理,今天重新给分了一下,顺便整理一下资料。1 概念通常新买回来的电脑,都习惯先对磁盘进行分区。磁盘分区就是将一块物理磁盘分为好几个逻辑存储单元,这几个单元之间互相独立,从外部看就好像有多块物理磁盘。分区编辑软件(比如fdisk)可以对磁盘执行创建、删除分区等操作。每个分区都可以有自己的文件系统。对磁盘进行分区有很多的好处。保护和孤立数据,一个分区损坏了并不

2011-12-22 15:57:09 1637

原创 大话存储

这本书买了一年了,最近终于比较完整的读了一遍,感觉收获不少,应该写一篇读后感吧。首先这本书是讲存储的,市面上关于存储的书少之又少,好书就更是稀缺资源,这本书可以说一定程度上弥补了资料的缺失。书里几乎涉及到了存储的方方面面,涵盖了磁盘、RAID、FC、SAN、NAS、备份等各个方向。这本书里不仅对各个技术的概念、原理进行了讲解,还包括了一些产品的实践,就称它为理论联系实际吧。入学的时候,自己是完

2011-12-09 21:11:51 4321 1

原创 关联规则挖掘(二):Apriori算法

1 算法简介在数据挖掘领域,Apriori算法是挖掘关联规则的经典算法。Apriori算法采用的是自底向上的方法,从1-频繁集开始,逐步找出高阶频繁集。它的基本流程是:第一次扫描交易数据库D时,产生1-频繁集。在此基础上经过连接、修剪产生2-频繁集。以此类推,直到无法产生更高阶的频繁集为止。在第k次循环中,也就是产生k-频繁集的时候,首先产生k-候选集,k-候选集中每一个项集都是对两个

2011-12-08 21:11:04 14589 1

原创 关联规则挖掘(一):基本概念

本文主要来自《数据仓库和数据挖掘》一书,这本书讲的和维基百科里的非常相似,怀疑是从某本外文书籍里翻译过来的。关联规则挖掘(Association rule mining)是数据挖掘中最活跃的研究方法之一,可以用来发现事情之间的联系,最早是为了发现超市交易数据库中不同的商品之间的关系。这里有一则沃尔玛超市的趣闻。沃尔玛曾今对数据仓库中一年多的原始交易数据进行了详细的分析,发现与尿布一起被

2011-12-07 11:04:44 29145 3

原创 Linux文件系统

从图书馆借的《Linux文件系统》,作者是Moshe Bar,他还写了另一本书叫《Linux internals》,应该说还是挺牛的。但是翻看了几页后,终于忍不住给还了回去,因为翻译太烂了,而且有些古老。首先说说翻译,除了有些不流畅外,最让人不能忍受的是通篇充斥了缓冲区、缓冲区缓存、缓存这样的模糊不清的翻译,不了解的人很难区分这些词语的意思。抱怨一下,国内有很多翻译过来的经典书籍(谁让

2011-12-06 14:16:19 1680

原创 谁养鱼(四):遗传算法的实现

1 简介根据达尔文的进化论,生物种群从低级、简单的类型逐渐发展成为高级、复杂的类型。各种生物要生存下去就必须进行生存斗争,具有较强生存能力的生物个体容易存活下来,并有较多的机会产生后代;具有较低生存能力的生物则被淘汰,或者产生后代的机会越来越少,直至消亡。遗传算法借鉴了生物界自然选择、遗传变异机制,将种群代表一组问题的解,通过对当前种群施加选择、交叉和变异等一系列遗传操作,从而产生新一

2011-11-28 19:13:30 4274 2

原创 谁养鱼(三):如何让计算机认识线索

在谁养鱼问题中给出了15条线索,如何让计算机识别这些线索,并作出正确的判断呢?因为房子的顺序是固定,给它们编号1、2、3、4、5。每个房子都有五种类型的属性,分别是颜色、国籍、饮料、宠物、香烟,并且不同的房子之间相同类型的属性是不同的。通过观察可以发现,线索可以分为三类:固定线索,绑定线索和相邻线索。固定线索指的将某个属性固定在某个序号的房子,比如线索8和线索9,分别将牛奶固定在中间房

2011-11-25 21:52:44 1911

原创 谁养鱼(二):如何将排列映射到整数域

今天又考虑了一下谁养鱼的问题,觉得用遗传算法来解题值得一试,但是主要的难点有三:如何让计算机理解线索?即如何表示绑定、相邻等关系?比如丹麦人喝茶的绑定关系,绿房子在白房子左边的左相邻关系等。问题空间和遗传空间如何转换?问题空间是红黄蓝绿白这样的排列,如何将其转换成遗传空间的二进制编码?也就是编码问题。遗传算法如何设计?包括种群规模,初始化,适应度函数,选择、交差、变异算子,终止条件等。

2011-11-23 14:59:41 2706

原创 谁养鱼(一):人工解法

题目:据说有五个不同颜色的房间排成一排,每个房间里分别住着一个不同国籍的人,每个人都喝 一种特定品牌的饮料,抽一种特定品牌的烟,养一种宠物,没有任意两个人抽相同品牌的香烟,或喝相同品牌的饮料,或养相同的宠物,问题是谁在养鱼作为宠物? 为了寻找答案,给出了十五条线索:英国人住在红色的房子里;瑞典人养狗作为宠物;丹麦人喝茶;绿房子紧挨着白房子,在白房子的左边;绿房子的主人喝咖啡;抽Pall

2011-11-21 23:02:05 3412 1

原创 图灵机和NP难度问题

这学期选了NP难度这门课,挺感兴趣。但是在和同学讨论问题的时候,发现大家对NP难度的认识非常模糊,什么是P!=NP?什么是NP完全?什么是NP难度?都有自己的一套说法。于是自己去查阅了一些资料,可能存在理解不正确的地方,但尽量要把这些问题讲清楚。关于NP方面的知识涉及到很多哲学和数学的内容,有非常多的定理,很难理解,这里只介绍一些基本概念。下面就从最最基本的图灵机开始说起。1 图灵机图

2011-11-19 19:57:14 13672 4

原创 拟人拟物法求解不等圆Packing问题

NP难度这门课还是比较有意思的,老师布置了一道作业,写一个用拟人拟物法求解不等圆Packing问题的小程序。问题描述:在一个已知的容器中希望能放下N个不同形状大小的物体,其中界限容器的封闭边境以及各个物体都是不可入的刚性实体,如果客观上放不下,我们要求做出放不下的判断;如果客观上放得下,则要求给出每个物体的位置和方向。这就是所谓的Packing问题,我们将问题简化了,只考虑圆形的容器和物体

2011-11-18 16:46:19 5205 2

原创 重复数据删除和SSD的互补方法

/******************************* * 信息存储专题课程作业 * 重复数据删除技术和SSD技术的互补方法 *******************************/摘要重复数据删除和SSD是目前存储领域非常热门的话题,近几年来得到了飞速的发展。重复数据删除由于其较高的计算和索引开销,容易成为性能瓶颈,所以一直没有在主存储系统中立足。SSD则

2011-11-18 09:45:39 4955 3

原创 Bacula测试报告

0.实验准备为了能测试bacula的性能,我在两台服务器上搭建了bacula平台,分别称为53和62。在62上安装了全部三方,而在53上只安装Storage Daemon和File Daemon。一共准备3种数据集,分别是document、source和video,它们代表了不同数量级的平均文件大小,详细信息如下:文件集大小(MB)文件数文件平均大小Do

2011-11-15 14:56:32 1389

原创 VMFS简介:数据组织,锁和写时拷贝

VMFS(Virtual Machine File System)是VMWare为其VMWare ESX Server和VMWare Infrastructure产品开发的集群文件系统。它主要用来存储虚拟机的磁盘镜像,设计的初衷是为了让多个主机合作维护存储在共享磁盘上的文件系统,而不需要一个coordinator的角色。VMFS会将共享的磁盘分成四个不同的资源池:inode,指针块,数据块和子

2011-11-15 14:54:46 2633

原创 数据挖掘概念

人们对于数据的拥有欲是贪婪的,特别是计算机网络技术和存储技术的发展加速了人们收集数据的范围和容量。这种贪婪的结果导致了“数据丰富而知识贫乏”现象的产生。说来惭愧,我的硬盘里有一个18GB的资料文件夹,里面都是本人长期收集的电子书,涵盖了计算机科学与技术的各个领域,但是至今绝大多数都是没有看过的。数据是具体的,知识是一种概念、规则、模式和规律;数据不能直接对我们产生帮助,只有从中产生了知识才能帮助我

2011-11-15 14:47:21 2293

一个比较好用的vimrc

比较好用的一个vimrc,将其复制到用户目录下,记得重命名为.vimrc

2012-05-08

一个遗传算法的Java小程序

一个eclipse工程 谁养鱼问题的遗传算法解法

2011-12-02

[源代码]拟人拟物法求解不等圆Packing问题

程序是在MFC框架下写的,代码包括整个vs工程,有些大。 要想移植出来,理论上只要复制出packing.cpp和packing.h文件,然后实现自己的画图函数和主函数就可以了。

2011-11-19

拟人拟物法求解不等圆Packing问题

一个求解不等圆Packing问题的小程序 点击左上角的“P”开始测试,根据提示依次输入容器的半径、小圆的个数以及每个小圆的半径。 供测试的实验输入: 1.容器的半径为6,小圆个数是7,它们的半径都是2; 2.容器的半径为2.4143,小圆的个数是9,其中四个小圆的半径是1,五个小圆的半径是0.41415; 3.容器的半径为2.4143,小圆的个数是17,其中四个小圆的半径是1,五个小圆的半径是0.41415,八个小圆的半径是0.207;

2011-11-18

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除