数据库技术发展之路
2017-04-23 21:27
260 查看
一切技术的出现都是源于问题,而数据库的主要问题就是性能问题。本文章简单介绍了数据库由于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数据库一些方面的不足,实践中我们要结合这两者使用才可以兼顾性能与开发成本。
的技术历程。这样方便大家在以后数据库的学习中有一个清晰的思路,不要为了技术而学技术,而要因解决问题而学习技术。
如有不对的地方,也请大家多多指教。
数据库分为两大类,关系型数据库(如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数据库一些方面的不足,实践中我们要结合这两者使用才可以兼顾性能与开发成本。
相关文章推荐
- 历程剖析:阿里云自研HTAP数据库的技术发展之路
- 数据库技术发展呈现新趋势
- [转]数据库技术的发展与展望
- 数据库技术发展与非关系型数据库NoSQL
- 数据库的创建,用户,及权限分配---MYSQL技术之路(一)
- 数据库技术发展与非关系型数据库NoSQL:
- 数据库技术演变与发展
- 自考《数据库系统原理》(9)之数据库技术的发展
- 数据库技术发展历史
- 读《百度基础架构技术发展之路》有感
- 读《百度基础架构技术发展之路》有感 .
- 数据库技术趋势发展三大特征:XML、BI、SOA(转)
- 2010年数据库技术领域盘点及发展趋势
- 数据库技术发展呈现新趋势
- SQL Server 强大的分区技术优化执行计划索引实例详解(使用语句检测和优化数据库 (MSSQL个人笔记之数据库优化之路 四)
- 数据库技术的发展与应用
- 技术高手的发展之路
- XML技术与数据库的发展趋势分析
- 淘宝技术发展之路