(dbthink)对后端优化的一点想法

dbthink4.16日在ITPUB数据库大会的演讲稿..

由于部分地方说明不清楚,以及我自己有一点点紧张, 演讲中出现了一点断点,,请在现场的朋友原谅,此处的ppt中对这部分信息做了修正..
原文地址:http://www.dbthink.com/?p=691

基于Flume和Cassandra的实时日志处理

这是Gemini Mobile Release的一个Flume的Plugin.以Cassandra做为其数据的目地的,关于Flume可以参见前文的介绍,它可以收集数据放到指定的目地的,原生的只支持HDFS,但是你可以在上面开发Plugin以支持各种数据结构。关于Flume Plugin的细节可以参考:

https://github.com/cloudera/flume/wiki

Mysql HandleSocket技术在SNS Feed存储中的应用

概要
SNS类型应用中,Feed的数据量最大,Feed数据的存储与读写操作往往是技术难度最高的部分,由于Feed要求的高并发写入,弱一致性,使其成为NoSQL技术的主要应用战场,My SQL handle Socket是一项使用Mysql Innodb存储引擎实现的NOSQL技术,与独立的NOSQL数据库相比,具有不同的特点和独有优势,本次主题主要分享此项技术的特点,以及在飞信开放平台技术选型中选用此项技术的主要经验。

我对NOSQL的一点理解

以下内容主要是看淘宝日照同学的帖子的感想..

日照同学的原文: SQL到NOSQL的思维转变

我个人感觉NoSQL是使用MySQL作为数据库的一个自然的演化.

NoSQL架构实践(二)——以NoSQL为主

原文地址:http://www.infoq.com/cn/news/2011/03/nosql-architecture-practice-2

注:从DBMS到NoSQL的过渡需要谨慎,因此良好的架构对于平滑过渡至关重要。下面是孙立的分享。

前面一篇《NoSQL架构实践(一)——以NoSQL为辅》主要介绍了以NoSQL为辅助的架构,这种架构实施起来比较简单,易于理解,由于其中也使用了传统的关系数据库,让开发者更容易控制NoSQL带来的风险。接下来我们继续深入下去,换另外一个角度,“以NoSQL为主”来架构系统。

(三)纯NoSQL架构

下一代Apache Hadoop MapReduce

下一代Apache Hadoop MapReduce

回顾

海量数据业务中,使用数量少规模大的集群比使用数量多规模小集群的成本低。规模大的集群能处理大数据集,同时也能支持更多的任务和用户。

Apache Hadoop MapReduce框架大约能够支持4000台机器。下一代的Apache Hadoop MapReduce框架会纳入一个通用的资源调度器,用户可以自定义每一个应用程序的执行。相比早期,故障时间在大规模高可靠性的集群中代价更高,更大规模的集群上保证安全性和多重用户才能支持大规模的用户。新的架构要加强它的创新性,灵活性和硬件使用。

Append only和Reuse block之间的抉择

Append only和Reuse block之间的抉择
毫无疑问,正如每一种NoSQL都有其适用场景,这里每一种访问需求都有不同的答案,针对用户的访问需求做决定和测试产品是唯一正确的选择。

简单来说,antirez的观点就是:

1. Append only btree不会出现数据不一致的情况。因为它是只追加的,没有重用文件中的失效块。因为在block I/O layer,内核会做一些IO上的调度,以致我们的IO请求会和我们预期的不一致。(FIXME)这一点我后面会开一篇文章详细讲解。

2. Append only btree的过期数据清理会是很大的问题,很可能会出现compaction永远赶不上write,这样就会一直在做compaction。

人人网Feed系统结构浅析

注:中国的Facebook——人人网所面临的挑战一点也不小,用户产生的数据非常庞大。下面是人人的Feed系统的结构浅析。有兴趣的可以一观。何为Feed系统,敬请观看:

Mongo Beijing 2011 Slide分享—From MySQL To MongoDB

开完公司的会议匆匆转场到mongodb的会场,发现相当的火爆。
在会场间隙,见到了范凯,程显峰,新浪的timyang, 淘宝和盛大的几位…

MongoDB亿级数据量的性能测试

进行了一下Mongodb亿级数据量的性能测试,分别测试如下几个项目:
(所有插入都是单线程进行,所有读取都是多线程进行)
1) 普通插入性能 (插入的数据每条大约在1KB左右)
2) 批量插入性能 (使用的是官方C#客户端的InsertBatch),这个测的是批量插入性能能有多少提高
3) 安全插入功能 (确保插入成功,使用的是SafeMode.True开关),这个测的是安全插入性能会差多少
4) 查询一个索引后的数字列,返回10条记录(也就是10KB)的性能,这个测的是索引查询的性能
5) 查询两个索引后的数字列,返回10条记录(每条记录只返回20字节左右的2个小字段)的性能,这个测的是返回小数据量以及多一个查询条件对性能的影响
6) 查询一个索引后的数字列,按照另一个索引的日期字段排序(索引建立的时候是倒序,排序也是倒序),并且Skip100条记录后返回10条记录的性能,这个测的是Skip和Order对性能的影响
7) 查询100条记录(也就是100KB)的性能(没有排序,没有条件),这个测的是大数据量的查询结果对性能的影响
8) 统计随着测试的进行,总磁盘占用,索引磁盘占用以及数据磁盘占用的数量

« 上一页下一页 »