首页 > 数据库 > 其他综合 >

数据库技术发展之路

2017-04-24

数据库技,术发展之路,一切技术的出现都是源于问题,而数据库的主要问题就是性能问题。本文章简单介绍了数据库由于web发展带来的性能问题而引入。

一切技术的出现都是源于问题,而数据库的主要问题就是性能问题。本文章简单介绍了数据库由于web发展带来的性能问题而引入

的技术历程。这样方便大家在以后数据库的学习中有一个清晰的思路,不要为了技术而学技术,而要因解决问题而学习技术。

如有不对的地方,也请大家多多指教。

数据库分为两大类,关系型数据库(如Mysql)和非关系数据库(NoSQL)。

最开始人们使用关系型数据库,它有着不错的性能,也稳定,但随着论坛,微博等web领域访问量的增加这时候MySLQ的性能就不行了(MySQL读取是基于磁盘上的I/O操作)。

这时程序员们就使用缓存技术,优化数据库结构和索引来提高性能。但访问量继续增加时,多台服务器间缓存也不能共享,多个缓存文件也带来了I/O压力。

这时就引入了Memcached,作为一个独立的分布式服务器,为多个服务器提供了一个可共享缓存。

但Memcached没有缓解了写操作的压力,这时候便引入了MySQL主从复制技术来达到读写分离来缓解写操作压力。

但随着web的发展,数据量持续增加,由于MyISAM使用表锁,在高并发下会出现严重的锁问题,大量的高并发MySQL应用开始使用InnoDB引擎代替MyISAM。同时也采用分库分表技术来缓解写压力。

但一方面分库分表需要经验,而且面对着需求变更与扩展,可能又需要一种新的变更方式。另外数据库也会存储很大的字段,导致

一个数据库可能非常大,恢复的就非常慢了。总而言之,MySQL虽然好,但是不能总是很好的用于所有场景。

这时便引入了一种非关系型数据库NOSQL,它主要有以下特点

1.它去除了关系性,数据之间没有关系,因此有着高扩展性。

2.高读写性能,因为无关系性,并且采用记录级的Cache。

3.灵活的数据模型,无需事先建立字段,可存储自定义的数据模型。

总结:NoSQL数据弥补了MySQL数据库一些方面的不足,实践中我们要结合这两者使用才可以兼顾性能与开发成本。

相关文章
最新文章
热点推荐