44
我们要解决什么问题?

Isess show

  • Upload
    mrytsr

  • View
    130

  • Download
    2

Embed Size (px)

Citation preview

我们要解决什么问题?

• 2000万用户注册信息

• 2000万用户注册信息

• 每日新增10万

• 2000万用户注册信息

• 每日新增10万• 一秒钟300并发

• 2000万用户注册信息

• 每日新增10万• 一秒钟300并发

• 频繁的读取相同信息

• 2000万用户注册信息

• 每日新增10万• 一秒钟300并发

• 频繁的读取相同信息

• 要求添加一个获取用户注册信息的模块

• 2000万用户注册信息

• 每日新增10万• 一秒钟300并发

• 频繁的读取相同信息

• 要求添加一个获取用户注册信息的模块

• 对原来系统性能的影响尽量小

这和浏览器的SESSION有啥区别?

什么是SESSION?

如果我创建一个session

为什么不用传统数据库?

以下内容来自

维基百科

NoSQL = Not Only SQL ?

NoSQL = No relational SQL ?

NoSQL = Not SQL ?

NoSQL是一种提供

模型化(相对于格式化)存储与解析的机制

驱动这种方式的原因包括

简化设计横向缩放更好的可用性控制

基于(键-值,图,文档)的数据结构

与关系型数据库有很大区别

所以有的操作的速度在两种结构中会不一样

因为存在区别

一个特定NoSQL数据库的适用性与

其要解决的问题有很大关系

例如 有没有涉及图形算法

众多NoSQL数据库

已经在大数据和实时应用场景中体现出有效性和增长趋势

很多 NoSQL 为了

数据的可用性和可分块性存储时会在兼容三范式理论

什么是三范式?

第一范式

第二范式

第三范式

很多 NoSQL 数据库缺少真正的事务机制,即使少数近期出现的

系统支持如FairCom,c-treeACE, Google Spanner and FoundationDB

为啥选择MongoDB?

• 性能memcache 可以胜任2000万redis 有测试说在1000万左右时性能下降,分表后应该可以mongodb 2000万没问题

• 操作的便利性memcache 数据结构单一redis 丰富一些,redis更好一些,较少的网络IO次数mongodb 支持丰富的数据表达,索引,最类似关系型数据库

• 内存空间的大小和数据量的大小redis 2.0版本增加了自己的VM特性,突破物理内存的限制memcache 可以修改最大可用内存,采用LRU算法mongoDB 依赖用操作系统VM做内存管理,吃内存也厉害,适合海量数据

• 可靠性(持久化,数据恢复)redis 支持 - 快照、AOFmemcache 不支持,通常用在做缓存,提升性能;MongoDB 从1.8版本开始采用binlog方式支持持久化的可靠性

• 性能memcache 可以胜任2000万redis 有测试说在1000万左右时性能下降,分表后应该可以mongodb 2000万没问题

• 操作的便利性memcache 数据结构单一redis 丰富一些,redis更好一些,较少的网络IO次数mongodb支持丰富的数据表达,索引,最类似关系型数据库

• 内存空间的大小和数据量的大小redis 2.0版本增加了自己的VM特性,突破物理内存的限制memcache 可以修改最大可用内存,采用LRU算法mongoDB 依赖用操作系统VM做内存管理,吃内存也厉害,适合海量数据

• 可靠性(持久化,数据恢复)redis 支持 - 快照、AOFmemcache 不支持,通常用在做缓存,提升性能;MongoDB 从1.8版本开始采用binlog方式支持持久化的可靠性

• 性能memcache 可以胜任2000万redis 有测试说在1000万左右时性能下降,分表后应该可以mongodb 2000万没问题

• 操作的便利性memcache 数据结构单一redis 丰富一些,redis更好一些,较少的网络IO次数mongodb 支持丰富的数据表达,索引,最类似关系型数据库

• 内存空间的大小和数据量的大小redis 2.0版本增加了自己的VM特性,突破物理内存的限制memcache 可以修改最大可用内存,采用LRU算法mongoDB依赖用操作系统VM做内存管理,吃内存也厉害,适合海量数据

• 可靠性(持久化,数据恢复)redis 支持 - 快照、AOFmemcache 不支持,通常用在做缓存,提升性能;MongoDB 从1.8版本开始采用binlog方式支持持久化的可靠性

• 性能memcache 可以胜任2000万redis 有测试说在1000万左右时性能下降,分表后应该可以mongodb 2000万没问题

• 操作的便利性memcache 数据结构单一redis 丰富一些,redis更好一些,较少的网络IO次数mongodb 支持丰富的数据表达,索引,最类似关系型数据库

• 内存空间的大小和数据量的大小redis 2.0版本增加了自己的VM特性,突破物理内存的限制memcache 可以修改最大可用内存,采用LRU算法mongoDB 依赖用操作系统VM做内存管理,吃内存也厉害,适合海量数据

• 可靠性(持久化,数据恢复)redis 支持 -快照、AOFmemcache 不支持,通常用在做缓存,提升性能;MongoDB从1.8版本开始采用binlog方式支持持久化的可靠性

最后搞出来的东西

有没有什么感想?