上一页 1 ··· 7 8 9 10 11 12 13 14 15 ··· 26 下一页
摘要: 问题:给定一个有序序列1~n,要你将其完全打乱,要求每个元素在任何一个位置出现的概率均为1/n。 解决方案:依次遍历数组,对第n个元素,以1/n的概率与前n个元素中的某个元素互换位置,最后生成的序列即满足要求,1/n的概率可通过rand() % n实现。见如下程序: void swap(int* p, int* q) { int tmp = *p; *p = *q; *q = tmp; } ... 阅读全文
posted @ 2013-04-19 14:10 ydzhang 阅读(230) 评论(0) 推荐(0)
摘要: 4月1号在火车上收到快递公司的电话,cublog的礼物送到了,开始以为只是很普通的衬衣,然后印上CU的标志,昨天看到礼物发现居然是cerruti,质量很不错,小雅姐果然很给力。 这次参加“蓦然回首,博客五年”的博客征文活动,其实给CU写的意见博文是在征文活动之前,因为我很早就在关注CU博客系统升级的消息,所以在第一时间就体验了一下新的博客系统,并提了几点意见,所以说这次能拿到奖品也完全是小雅姐的... 阅读全文
posted @ 2013-04-19 14:10 ydzhang 阅读(126) 评论(0) 推荐(0)
摘要: Tair是由淘宝开发的一个key/value存储系统。 参考:http://rdc.taobao.com/blog/cs/?p=302 在数据分配方面,Tair使用了对照表,对照表由于数据路由功能,由配置服务器(configserver负责维护),configserver周期性的初始化各个数据节点的信息,并通过Heartbeat来管理数据节点的状态。对照表通常包含多个slot(应远大于数据... 阅读全文
posted @ 2013-04-19 14:09 ydzhang 阅读(608) 评论(0) 推荐(0)
摘要: Bitcask来自于riak,是一个日志(log-structured)存储系统。用在riak的分布式数据库的底层key/value的存储。 Bitcask的一些基本特征: 1. key/value以日志的形式按顺序存储,只能追加(append-only)写入key/value,每次写操作都是顺序写入。当某个key所对应的value发生变化时,新的key/value被追加到文件末尾。 2... 阅读全文
posted @ 2013-04-19 14:09 ydzhang 阅读(1352) 评论(0) 推荐(0)
摘要: 1. 与日志相关字段的初始化 <super.c> static int parse_options (char *options, struct super_block *sb, unsigned long *inum, unsigned long *journal_devnum, ext3_fsblk_t *n_blocks_count, int is_remount) { … ca... 阅读全文
posted @ 2013-04-19 14:09 ydzhang 阅读(742) 评论(0) 推荐(0)
摘要: Lucene支持基于词条的TermQuery、RangeQuery、PrefixQuery、BolleanQuery、PhraseQuery、WildcardQuery、FuzzyQuery,另外lucene提供了功能强大的QueryParse用于从查询表达式中分析出查询请求。 1. TermQuery与QueryParser 单个单词作为查询表达式时,它相当于一个单独的项。如果表达式是由单个... 阅读全文
posted @ 2013-04-19 14:09 ydzhang 阅读(292) 评论(0) 推荐(0)
摘要: 日志文件系统的目标是避免对整个文件系统进行耗时的一致性检查,ext3日志文件系统的思想是对文件系统进行的任何高级修改都分两步进行。首先,把待写块的一个副本存放在日志中;其次,当发往日志的I/O数据传送完成时(把数据提交到日志后),待写块就被写入文件系统。当发往文件系统的I/O数据传送终止时(把数据提交到文件系统后),日志中的块的副本就被丢弃。 当从系统故障中恢复时,e2fsck程序区分以下两种情... 阅读全文
posted @ 2013-04-19 14:09 ydzhang 阅读(1886) 评论(0) 推荐(0)
摘要: HayStack是Fackbook用于存储照片的系统,其存储照片的数量在千亿数量级,本文简要分析HayStack的设计与实现原理。 图片存储的几个关键点: 1. Metadata信息存储。由于图片数量巨大,单机存放不了所有的Metadata信息,假设每个图片文件的Metadata占用100字节,260 billion图片Metadata占用的空间为260G * 100 = 26000GB。... 阅读全文
posted @ 2013-04-19 14:09 ydzhang 阅读(583) 评论(0) 推荐(0)
摘要: 我是一个学习计算机专业的理想主义者,我的研究兴趣为网络存储与分布式系统,我对很多的优秀软件的设计极为钦佩,我梦想着有一天我自己设计了一个系统,她有着近乎完美的架构、良好的性能和容错性、她能满足用户的一切需求,我和我优秀的同事们一起为实现这个系统编写了一行行优雅的代码,并进行测试和部署。 在实验室,我每天阅读计算机方面的书籍,只要我觉得会对我有帮助的我就会读,因为我觉得,只有打好了坚实的基础,... 阅读全文
posted @ 2013-04-19 14:09 ydzhang 阅读(191) 评论(0) 推荐(0)
摘要: 进程是操作系统运行的基础,本文以比较粗犷的角度闲侃linux进程方面的知识。 用户态的每个进程在内核中对应一个task_struct结构的进程描述符,描述符中包含进程的状态和执行信息、虚拟内存信息、打开文件信息、以及文件文件系统信息,信号相关信息等(进程使用的资源时有限制的,如打开文件数,使用的物理页,文件大小等,其值包含在描述符中task_struct->signal->rlim字段中,也... 阅读全文
posted @ 2013-04-19 14:09 ydzhang 阅读(167) 评论(0) 推荐(0)
上一页 1 ··· 7 8 9 10 11 12 13 14 15 ··· 26 下一页