`
xinbage
  • 浏览: 9083 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

SQL和NOSQL有区别吗?

阅读更多
  在大数据高速发展的今天,数据量在不断的增加,传统的数据库可能不能满足人们的需求了,这个时候新霸哥注意到了NOSQL出现了可以解决这个问题。我们知道sql数据库可以存储数据和处理数据,但是NOSQL最大的一个优势就是在大数据这方面,能够深度处理大数据,分析数据,从大量的数据中获取有用的资源。

  新霸哥发现关系型数据库本身基于关系代数的数学理论,是很好的抽象,但是nosql的抽象没有太多的数学基础,数学总是不会过时的。从计算机本身来说,关系型数据库的存储也是随着机械硬盘的兴起而发展的,关系型数据库对数据块的处理,比现在最流行的nosql强很多,而且由于约束的存在,存储效率很高,根本不是那些nosql能比的。这一点新霸哥很佩服。

  在云计算高速发展的今天,云计算兼具SQL和NoSQL数据库的益处。云环境中的关系型存储通常是以服务形式提供的,是可复制、高可用性且分布式的,极大地提高了横向扩展能力。同时托管于云服务中的NoSQL数据库也天然享有自动分片的好处,能够阶段性地灵活弹性处理,集成高速缓存和巨大的计算能力来捕获、存储和分析大数据。

  数据量很少的情况下,就不用考虑性能了,分布式什么都不用考虑了,新霸哥也注意到了NoSQL在这种情况下最大的劣势就是没有schema。

  NoSQL不会取代RDBMS,可能很多人会有疑问,RDBMS比如说MySQL通过sharding可以做到NoSQL所能做的一切,除此之外RDBMS有schema(也可以设计成schemaless),支持SQL,健壮的ACID。一般来说,现在的RDBMS完全可以做NoSQL所有可以做的事情,反过来就不是这样了。举个非常形象的例子,要在MySQL上加一层key-value接口不难,如果要在任何NoSQL上加能和MySQL匹敌的Query Optimizer和Transaction support不是件简单的事情。

  NoSQL想解决的问题RDBMS都能解决,它的理念会被融入到RDBMS中,其实在实际应用中真正适合NoSQL应用的场景只是cache。

  新霸哥发现SQL数据库大多数比较昂贵,但是NoSQL数据库通常都是开源的。事实上,两种类型数据库都有开源的和商业的。常见的SQL 数据库有微软公司的SQL Server,MySQL,SQLite,Oracle和PostGres。现在非常流行的NoSQL数据库有Couchbase,MongoDB,Redis,BigTable和RavenDB。这也是现在比较主流的数据存储方式。

  其实无论是SQL还是NOSQL最重要的还是能够根据实际的情况来选择,这样才能够充分的利用资源。爱好大数据的朋友可以关注新霸哥。
分享到:
评论

相关推荐

    SQL和NoSQL之间的区别总结

    SQL和NoSQL数据库是两种不同类型的数据库系统,它们在数据存储、查询语言、可扩展性、数据结构和遵循的属性等方面存在显著差异。 1. 类型与架构: - SQL数据库,即关系数据库管理系统(RDBMS),基于表格模型,...

    深入解析:SQL与NoSQL数据库的比较与应用场景

    SQL数据库和NoSQL数据库各有优势和局限,选择哪种数据库取决于具体的应用需求。理解它们之间的差异有助于开发者做出更合适的技术选型,以满足不同场景下对数据存储和管理的需求。 本文通过详细比较SQL数据库和NoSQL...

    SQL vs NoSQL:如何选择?

    在前一篇文章中,我们讨论了 SQL 与 NoSQL 数据库之间基本的区别。接下来,我们我们将应用我们在特定场景中的知识来确定佳的选择。  回顾一下:  SQL 数据库:  ·在表中存储相关联的数据  ·在使用之前需要...

    mysql必备面试题,mysql必问的面试题

    解释一下MySQL中的SQL和NoSQL有什么区别? 描述一下MySQL中的事务是什么,它的作用是什么? 解释一下MySQL中的视图是什么,它的作用是什么? 描述一下MySQL中的存储过程是什么,它的作用是什么? 解释一下MySQL中的...

    NoSQL还是NoSQL?

    在C#和.NET环境下,开发者可以利用ADO.NET或其他ORM框架(如Entity Framework)来与SQL数据库交互,而针对NoSQL数据库,如MongoDB,有专门的.NET驱动程序,使得.NET开发者也能轻松操作NoSQL数据。 作为架构师或DBA...

    (19)SQL databases v. NoSQL databases.pdf

    SQL(Structured Query Language)数据库和NoSQL(Not Only SQL)数据库是两种主要的数据库类型,它们各自有其独特的优势和适用场景。这篇文档讨论了这两种数据库的区别以及它们在OLTP(Online Transaction ...

    NOSQL与RDBMS区别1

    NoSQL(Not Only SQL)与RDBMS(Relational Database Management System)是两种不同类型的数据库系统,它们在设计理念、数据模型、数据一致性、扩展性和可用性等方面存在显著差异。了解这些区别对于选择合适的...

    java sql 数据库 面试 面试试题

    - 存储过程和函数的区别是什么? - 如何在Java中调用SQL存储过程? 6. **预编译语句与批处理** - 为什么使用PreparedStatement比Statement更好? - 什么是批处理?何时应该使用批处理? 7. **连接池管理** - ...

    noSql数据库面试题整理.zip

    - NoSQL与SQL的主要区别是什么? - MongoDB如何处理数据的增删改查操作? - Redis的五种数据类型及其应用场景? - Redis的持久化机制是如何工作的? - Memcached如何解决缓存穿透、缓存雪崩和缓存击穿问题? - 如何...

    nosql生态系统.txt

    #### 二、NoSQL 数据库与 SQL 数据库的区别 ##### 2.1 SQL 数据库结构 SQL 数据库是一种基于结构化查询语言(Structured Query Language)的数据管理技术,支持复杂的数据关系和事务处理。SQL 数据库通过表、行和...

    nosql专业版(英文版)

    1. **NoSQL概述**:介绍NoSQL的起源、发展和其与关系型数据库的区别。NoSQL应运而生,为了解决传统RDBMS在处理大规模数据、高并发和分布式环境下的局限性。 2. **NoSQL类型**:NoSQL数据库分为多种类型,包括键值...

    深入NoSQL-Professional NoSQL

    这本书中文版的扫描质量较高,适合对NoSQL有深入学习需求的读者。NoSQL,全称为"Not Only SQL",是近年来随着大数据和分布式计算的发展而兴起的一种新型数据库模型,它与传统的关系型数据库有着显著的区别。 1. **...

    NoSQL数据库技术实战

    本书首先会介绍NoSQL数据库的基本概念,包括与关系型数据库的区别,以及NoSQL的四大类型:键值存储、列族、文档数据库和图形数据库。这些类型的数据库各有优势,适应不同的应用场景,例如键值存储适合高速缓存,文档...

    nosql分布式数据库期末考试题.docx

    - SQL与NoSQL的区别:SQL支持严格事务,NoSQL更注重扩展性和性能 - CAP理论:一致性、可用性、分区容错性之间的权衡 - 图形数据库:Neo4j,适合处理关系复杂的数据 - HBase:列存储、分布式、稀疏性,最小存储单元是...

    1. NoSQL简介和分布式系统1

    NoSQL(Not Only SQL)是一种非关系型数据库技术,它与传统的SQL数据库有着显著的区别。在信息化时代,随着大数据和互联网应用的快速发展,NoSQL数据库因其高可扩展性、灵活性和高性能等特点,逐渐受到广泛关注。 ...

    NoSQL非关系型数据库

    NoSQL与关系型数据库的主要区别在于设计理念的不同。下面列出了一些主要的比较点: - **数据模型**:NoSQL支持多种数据模型,如键值对、文档、列族和图形等;而关系型数据库仅支持表格形式的数据模型。 - **扩展性*...

    NoSQL详解文档文档

    NoSQL(Not Only SQL),是非关系型数据库的统称,它代表了与传统关系型数据库不同的数据管理和存储方式。NoSQL的概念始于1998年,最初指的是一个不支持SQL功能的轻量级、开源的关系数据库。然而,在2009年之后,...

    NoSQL数据库之Redis数据库管理视频教程

    NoSQL(Not Only SQL)数据库是指非关系型数据库,它们与传统的关系型数据库在数据存储方式上有显著区别。NoSQL数据库通常支持灵活的数据模式,能够处理大量非结构化或半结构化的数据,并且在扩展性和性能方面具有...

    SQLServer高频面试题及答案

    12. 非关系型数据库和关系型数据库有什么区别? 非关系型数据库和关系型数据库是两种不同的数据库类型。非关系型数据库是NoSQL数据库,关系型数据库是传统的关系数据库。它们在数据存储和处理方式上有很大的不同。 ...

Global site tag (gtag.js) - Google Analytics