• Redis深入解析系列一:sql与nosql比较


    SQL-关系型数据库

    特点:

    1、表格形式存储,基于行存储数据,是一个二维的模式,用来存储结构化数据

    2、表结构schema是固定的

    3、表之间存在关联

    4、支持sql,支持复杂的关联查询

    5、支持事务 ACID (酸)

    从特点分析出限制

    1、只能向上扩展,比如增加硬盘存储,通过硬件扩展。水平扩展只能通过通过技术、中间件实现,比如分库分表。不支持动态扩容缩容

    2、存在数据时修改表结构很麻烦,存储的数据格式必须要和表结构完全一致

    3、高并发和高数据量的情况下,关系型数据库通常会把数据持久化到磁盘,对磁盘的读写压力很大,IO压力很大

    4、关系型数据库的一个瓶颈就是IO读写,所以是不适合存储大数据的(比如二进制文件等等)

    为了解决关系型数据库的一系列问题,我们引入非关系型数据库作为关系型数据库的补充

    NOSQL(Not Only Sql)-非关系型数据库

    1、存储非结构化数据(文本、图片、音频、视频等)

    2、表之间没有关联,扩展性强

    3、不支持事务 支持BASE (碱)。Basically Available基本可用 Soft-state软状态 Eventually Consistent最终一致性

    4、支持海量数据存储和高并发高效读写

    5、支持分布式,能够对数据进行分片存储,扩容缩容简单

    对于不同的存储类型,我们又有各种各样的非关系型数据库,常见如下:

    1、KV结构 redis mamecach

    2、列存储 hbase

    3、文档存储 MongoDB

    4、图存储 neo4j graph

    5、对象存储

    6、xml存储 等

    各种nosql数据库可见 http://nosql-database.org

    还有一种介于SQL与NOSQL之间的 NEW SQL 例如 TIDB,这里不做扩展

    总结

    关系型数据库和非关系型数据库是一个互补的关系,有各自的特点,要结合实际的业务场景选择对应特点的存储方式

  • 相关阅读:
    Mvc4.0添加商品到Cookie
    个人作业——词频统计
    利用飞信虚拟框架开发绿色.NET程序
    专用服务器和共享服务器的区别(转)
    我做项目对Excel进程处理问题
    通过SQL Server 2000的链接服务器访问Sybase数据库
    结合地理信息系统开发的项目
    模仿Smartphone的开始菜单效果
    如何修改Windows Mobile手机系统颜色
    个人负责的第一个地图应用项目框架截图
  • 原文地址:https://www.cnblogs.com/zh-ch/p/12666214.html
Copyright © 2020-2023  润新知