|
1.目前主流的NoSQL数据库有哪些?Redis 性能是否比 Memcached 好?哪些网站使用了NoSQL数据库?
主流的NoSQLogic数据库:
- Hbase: Key Value存储,基于Hadoop的分布式文件系统。客户包括:阿里集团
- MongoDB: 基于Document的存储,无schema,结构灵活,数据架构维护成本很低。客户包括:微软,Ebay,Cisco等,详情参见:https://www.mongodb.com/customers
- Cassandra: Key Value存储,数据最终一致性
Redis 性能是否比 Memcached 好? 这个不清楚,但是应该和应用场景有关吧,不能一概而论。
2.NoSQL会不会敲响关系型数据库即将灭亡的第一声警钟呢?还是说NoSQL要抢走数据库领域的头把交椅?我们的回答是:“这两种情况都不会出现。”请问为什么?
NoSQL会不会敲响关系型数据库即将灭亡的第一声警钟呢: 个人认为不会,应该是平分秋色,双剑齐发的模式。理由如下:
- 关系型数据库事务一致特点是NoSQL很难达到的,ACID属性作为RDBMS的基础,最重要的特点,在中心性企业的应用依然会非常广泛。
- NoSQL数据库的无Schema或者轻量级Schema的设计,相对于关系型数据库在数据结构方面的维护成本大大降低。想想你我曾经多少个昼夜改大表,迁移大库,索引维护,数据库迁移,通宵达旦,灯火通明的场景,就觉得NoSQL的No schema设计真好。
- NoSQL高可用性,易扩展性是关系型数据库所不具备的
3.在关系型数据库长久占领市场之后,NoSQL的出现让我们眼前一亮,为之惊喜,NoSQL数据库究竟有哪些优势?
NoSQL的优点:
- 数据存储:多Location存储。所以,我们可以使用比较低廉的存储设备。比如,普通的企业级存储,RAID的就可以了。而不需要使用昂贵的SAN, NetApp,EMC等昂贵的存储设备。想想几十万美金的网络存储设备(日常维护费用在外)而只能使用3~4年。真心觉得不便宜
- 高可用性,易于扩充:这个好理解,如果现在这个年代NoSQL还没有这两个特性,你好意思说自己是NoSQL?
- 快:一大堆的Server在后面服务,每个Server分到1/N的任务和数据来处理,当然快了。不会大量的IO累计
- 无Schema的设计使得数据结构的后期维护非常轻松
- NoSQL的服务器成员对整个业务系统影响越来越小: 想想当年那个DataCenter死掉那个紧张场景再也不复存在了.......
4.RDBMS和NoSQL都有自己擅长的领域,对于那种可以将文件名作为Key,文件内容作为value的平行文件存储,NoSQL是很有优势的。请分别举例说说SQL数据库与NoSQL数据库各自适用的场合。
- RDBMS:严格的数据一致性要求,严格满足数据的ACID属性。比如:银行系统,交易系统等
- NoSQL:超高并发量处理系统,非同步处理,数据最终一致性系统。比如:Log分析,数据分析,数据统计汇总等。
|
|