摘要: 本文链接地址:http://www.nosqlnotes.net/archives/222互联网架构中缓存无处不在,某厂牛人曾经说过:”缓存就像清凉油,哪里不舒服,抹一下就好了”。高品质的存储容量小,价格高;低品质存储容量大,价格低,缓存的目的就在于”扩充”高品质存储的容量。本文探讨缓存相关的一些问题。LRU替换算法缓存的技术点包括内存管理和替换算法。LRU是使用最多的替换算法,每次淘汰最久没有使用的元素。LRU缓存实现分为两个部分:Hash表和LRU链表,Hash表用于查找缓存中的元素,LRU链表用于淘汰。内存常以Slab的方式管理。上图是Memcache的内存管理示意图,Memcache以 阅读全文
posted @ 2012-03-23 23:28 vivianC 阅读(177) 评论(0) 推荐(0) 编辑
摘要: Google文件系统(Google File System,GFS)是构建在廉价的服务器之上的大型分布式系统。它将服务器故障视为正常现象,通过软件的方式自动容错,在保证系统可靠性和可用性的同时,大大减少了系统的成本。GFS是Google云存储的基石,其它存储系统,如Google Bigtable,Google Megastore,Google Percolator均直接或者间接地构建在GFS之上。另外,Google大规模批处理系统MapReduce也需要利用GFS作为海量数据的输入输出。系统架构GFS将整个系统的节点分为三种角色:GFS Master(总控服务器),GFS Chunkserve 阅读全文
posted @ 2012-03-23 23:26 vivianC 阅读(1104) 评论(0) 推荐(0) 编辑
摘要: 主要参考文献事务日志对现有主要的单机事务日志进行解析。两阶段提交描述原始的两阶段提交Large-scale Incremental Processing Using Distributed Transactions and Notifications两段提交在Google实时检索中的应用,对于理解分布式、两段提交至关重要,强烈建议阅读How to Build a Highly Available System Using Consensus分布式一致性的基础概念,区分容易混淆的概念,如果之前有分布式的一些知识,这篇论文具有醍醐灌顶的作用Paxos: The Part-Time Parliame 阅读全文
posted @ 2012-03-23 23:21 vivianC 阅读(353) 评论(0) 推荐(0) 编辑
摘要: 在做Shuffle阶段的优化过程中,遇到了数据倾斜的问题,造成了对一些情况下优化效果不明显。主要是因为在Job完成后的所得到的Counters是整个Job的总和,优化是基于这些Counters得出的平均值,而由于数据倾斜的原因造成map处理数据量的差异过大,使得这些平均值能代表的价值降低。Hive的执行是分阶段的,map处理数据量的差异取决于上一个stage的reduce输出,所以如何将数据均匀的分配到各个reduce中,就是解决数据倾斜的根本所在。规避错误来更好的运行比解决错误更高效。在查看了一些资料后,总结如下。1数据倾斜的原因1.1操作:关键词情形后果Join其中一个表较小,但是key集 阅读全文
posted @ 2012-03-23 23:18 vivianC 阅读(906) 评论(0) 推荐(0) 编辑
摘要: 摘要:在平时的mysql应用中,总会碰到导入数据,导出数据,当然有很多方法,这篇文章,主要介绍应用mysqlmysqldump命令进行数据导入导出,希望对大家有所帮助。一、mysql导入文件或数据或执行相关SQLmysql -h主机地址 -u用户名 -p用户密码1. 文件形式。(shell命令行)mysql -u root -p dbname < filename.sql2. 直接放在命令行(shell命令行)执行一个sqlmysql -hhostname -uusername -p dbname -e 'select * from tbname limit 1'执行后命 阅读全文
posted @ 2012-03-23 23:16 vivianC 阅读(331) 评论(0) 推荐(0) 编辑
摘要: 本文主要是从HBase应用程序设计与开发的角度,总结几种常用的性能优化方法。有关HBase系统配置级别的优化,这里涉及的不多,这部分可以参考:淘宝Ken Wu同学的博客。1. 表的设计1.1 Pre-Creating Regions默认情况下,在创建HBase表的时候会自动创建一个region分区,当导入数据的时候,所有的HBase客户端都向这一个region写数据,直到这个region足够大了才进行切分。一种可以加快批量写入速度的方法是通过预先创建一些空的regions,这样当数据写入HBase时,会按照region分区情况,在集群内做数据的负载均衡。有关预分区,详情参见:Table Cre 阅读全文
posted @ 2012-03-23 23:15 vivianC 阅读(2116) 评论(0) 推荐(0) 编辑
摘要: 阅读目录开始Cookie 概述Cookie的写、读过程使用Cookie保存复杂对象Js中读写CookieCookie在Session中的应用Cookie在身份验证中的应用Cookie的安全状况如何在C#发请的请求中使用Cookie重构与使用总结补充Cookie虽然是个很简单的东西,但它又是WEB开发中一个很重要的客户端数据来源,而且它可以实现扩展性很好的会话状态, 所以我认为每个WEB开发人员都有必要对它有个清晰的认识。本文将对Cookie这个话题做一个全面的描述, 也算是我对Cookie的认识总结。回到顶部Cookie 概述Cookie是什么?Cookie 是一小段文本信息,伴随着用户请求和 阅读全文
posted @ 2012-03-23 22:35 vivianC 阅读(199) 评论(0) 推荐(0) 编辑
摘要: 云计算资源分享与下载2010-12-31 08:25 by 圣殿骑士一. 摘要 自从上一篇实战第一个云程序之后,我就没有再发布云计算相关的文章,这些天重新整理了一下草稿箱,发现这个系列有很多篇都存了大半年了,一直没有整理发布出来,今天就先发布这篇“云计算资源分享与下载”,希望能给大家带来一些参考和帮助。这篇文章对于学习系统学习云计算有很好的指导作用,尤其是大量的书籍、视频和相关社区网站的介绍,但是由于我比较热衷于微软的Azure平台的研究和推广,针对其他厂商的云计算产品,我只是很粗浅的了解了其概念及简单使用,并没有做深入的研究,所以如果后续发布的云计算相关文章也会集中在Azure上。二. 本. 阅读全文
posted @ 2012-03-23 22:18 vivianC 阅读(220) 评论(0) 推荐(0) 编辑
摘要: SQLServer2008在数据的高安全、高性能、高可用方面的技术已经比较成熟,这些技术和方案都是随着很多公司的业务和数据访问压力的增加而不断的升级和变迁的,同时经历了方方面面的考验,证明了它们都是成熟可靠的,下面就这方面的技术方案和变迁过程来做一些分析。阶段一:裸奔时代:优点:裸奔最大的好处就是简单,成本低。缺点:一旦服务器出现问题,恢复起来比较麻烦;如果访问压力变大,服务器可能不堪重负。阶段二:单库+Mirror+BackUp方案:说明:Mirror有两种方式,同步和异步;同步方式能保证主库和Mirror端数据的一致性,而且不需要使用企业版,但是对主库的性能影响也比较大;异步方式需要企业版 阅读全文
posted @ 2012-03-23 22:15 vivianC 阅读(374) 评论(0) 推荐(0) 编辑
摘要: http://www.gotapi.com/语言:英语简介:HTML,CSS,XPATH,XSL,JAVASCRIPT等API的查询网站。http://www.w3schools.com/语言:英语简介:W3C制定的标准诸如XML,HTML,XSL等等的在线学习教程。http://www.xml.org.cn/语言:中文简介:可以说是XML的中国官方网吧。W3C标准的翻译组织与XML系列技术交流社区.http://www.connectionstrings.com/语言:英语简介:这里几乎收集了所有的数据库连接字符(connectionstring)了。http://www.itpub.net 阅读全文
posted @ 2012-03-23 19:29 vivianC 阅读(168) 评论(0) 推荐(0) 编辑