广告
返回顶部
首页 > 资讯 > 数据库 >NOSQL入门
  • 957
分享到

NOSQL入门

NOSQL入门 2014-05-13 04:05:23 957人浏览 才女
摘要

什么是NoSQL? Nosql (Not Only SQL),指的是非关系型的数据库。是对不同于传统的关系型数据库的数据库管理系统的统称。 轻量、开源、不提供SQL功能的关系数据库。 NoSQL用于超大规模数据的存储。数据存储不需要

NOSQL入门

什么是NoSQL?

Nosql (Not Only SQL),指的是非关系型的数据库。是对不同于传统的关系型数据库的数据库管理系统的统称。

轻量、开源、不提供SQL功能的关系数据库。

NoSQL用于超大规模数据的存储。数据存储不需要固定的模式,无需多余操作就可以横向扩展。

为什么使用NoSQL ?

今天我们可以通过第三方平台(如:Google,Facebook等)可以很容易的访问和抓取数据。用户的个人信息,社交网络,地理位置,用户生成的数据和用户操作日志已经成倍的增加。我们如果要对这些用户数据进行挖掘,那SQL数据库已经不适合这些应用了, NoSQL 数据库的发展却能很好的处理这些大的数据。

CAP定理

对于一个分布式计算系统来说,不可能同时满足以下三点:

  • 一致性(Consistency) (所有节点在同一时间具有相同的数据)
  • 可用性(Availability) (保证每个请求不管成功或者失败都有响应)
  • 分隔容忍(Partition tolerance) (系统中任意信息的丢失或失败不会影响系统的继续运作)

CAP理论的核心是:一个分布式系统不可能同时很好的满足一致性,可用性和分区容错性这三个需求,最多只能同时较好的满足两个。

因此,根据 CAP 原理将 NoSQL 数据库分成了满足 CA 原则、满足 CP 原则和满足 AP 原则三 大类:

  • CA - 单点集群,满足一致性,可用性的系统,通常在可扩展性上不太强大。
  • CP - 满足一致性,分区容忍性的系统,通常性能不是特别高。
  • AP - 满足可用性,分区容忍性的系统,通常可能对一致性要求低一些。

NoSQL的优点/缺点

优点:

  • - 高可扩展性
  • - 分布式计算
  • - 低成本
  • - 架构的灵活性,半结构化数据
  • - 没有复杂的关系

缺点:

  • - 没有标准化
  • - 有限的查询功能(到目前为止)
  • - 最终一致是不直观的程序

BASE

BASE是NoSQL数据库通常对可用性及一致性的弱要求原则:

  • Basically Availble --基本可用
  • Soft-state --软状态/柔性事务。 "Soft state" 可以理解为"无连接"的, 而 "Hard state" 是"面向连接"的
  • Eventual Consistency -- 最终一致性, 也是是 ACID 的最终目的。

ACID vs BASE

NoSQL 数据库分类

类型 部分代表

 

特点
列存储

HBase

Cassandra

Hypertable

顾名思义,是按列存储数据的。最大的特点是方便存储结构化和半结构化数据,方便做数据压缩,对针对某一列或者某几列的查询有非常大的io优势。

文档存储

mongoDB

CouchDB

文档存储一般用类似JSON的格式存储,存储的内容是文档型的。这样也就有机会对某些字段建立索引,实现关系数据库的某些功能。

key-value存储

Tokyo Cabinet / Tyrant

Berkeley DB

MemcacheDB

Redis

可以通过key快速查询到其value。一般来说,存储不管value的格式,照单全收。(Redis包含了其他功能)

图存储

Neo4J

FlockDB

图形关系的最佳存储。使用传统关系数据库来解决的话性能低下,而且设计使用不方便。

对象存储

db4o

Versant

通过类似面向对象语言的语法操作数据库,通过对象的方式存取数据。

xml数据库

Berkeley DB XML

BaseX

高效的存储XML数据,并支持XML的内部查询语法,比如XQuery,Xpath。

您可能感兴趣的文档:

--结束END--

本文标题: NOSQL入门

本文链接: https://www.lsjlt.com/news/4994.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • NOSQL入门
    什么是NoSQL NoSQL (Not Only SQL),指的是非关系型的数据库。是对不同于传统的关系型数据库的数据库管理系统的统称。 轻量、开源、不提供SQL功能的关系数据库。 NoSQL用于超大规模数据的存储。数据存储不需要固...
    99+
    2014-05-13
    NOSQL入门
  • Redis入门-什么是NoSQL
    原文:https://www.cnblogs.com/xxhxs-21/p/14630103.html...
    99+
    2021-07-14
    Redis入门-什么是NoSQL 数据库入门 数据库基础教程
  • MongoDB入门培训 | 8周入门NoSQL No.1数据库
    为什么要学好MongoDB ? MongoDB是为满足企业当今的高可用性、可扩展性及满足GDPR法规等需求而设计的新一代文档数据库。凭借灵活的模式和丰富的文档结构,MongoDB能够帮助各种...
    99+
    2022-10-18
  • 大数据入门级学习:SQL与NOSQL数据库
    这几年的大数据热潮带动了一激活了一大批hadoop学习爱好者。有自学hadoop的,有报名培训班学习的。所有接触过hadoop的人都知道,单独搭建hadoop里每个组建都需要运行环境、修改配置文件测试等过程...
    99+
    2022-10-18
  • 【NoSQL】01、NoSQL基础
    一、ACID、分布式、CAP、BASE 理论关系型数据库遵循ACID规则       事务在英文中是transaction,和现实世界中的交易很类似,它有如下四个特性...
    99+
    2022-10-18
  • golang入门难不难?怎么入门?
    从一位刚刚开始学习Golang的小白的角度出发,Golang入门难不难的问题一直让我非常纠结。一方面,Golang作为一门新兴的编程语言,其设计理念和语法都比传统的编程语言有所不同,对于新手来说,学习曲线会相对较陡。另一方面,由于Golan...
    99+
    2023-05-14
  • scrapy入门
    什么是scrapy? scrapy是一个为了爬去网站数据,提取结构性数据而编写的应用框架,我们只需要实现少量的代码,就能够快速的抓取 scrapy使用了 Twisted 异步网络框架,可以加快我们的下载速度 异步和非阻塞的区别 异步:调用...
    99+
    2023-01-30
    入门 scrapy
  • h3c入门
                                                        h3c华三入门    我们都知道路由器和交换机的著名品牌排行cisco  华为 h3c华三  TPlink  锐捷  等,其中比较常用的...
    99+
    2023-01-31
    入门 h3c
  • SpringBoot入门
    springboot入门 一.SpringBoot概述1.1 SpringBoot1.2 Spring缺点1.3 SpringBoot功能 2.SpringBoot快速入门2.1 经典开局Hello World2.1.1 新建项...
    99+
    2023-08-30
    spring boot java 后端
  • <C++> 入门
    在学习完C语言的基础上,继续开始C++的学习。 C++是在C的基础之上,容纳进去了面向对象编程思想,并增加了许多有用的库,以及编程范式等。熟悉C语言之后,对C++学习有一定的帮助。 1. 补充C语言语法的不足,以及C++是如何对C语言设...
    99+
    2023-08-16
    c++
  • Centos7 入门
    Centos7 入门 目录 Centos7 入门1.3.注意事项创建虚拟机系统安装2.3.远程连接2.3.1.安装FinalShell 3.设置IP、网关、DNS、镜像3.1.设...
    99+
    2023-10-24
    linux 服务器 centos
  • Mysql入门
    一、数据库概述 1、为什么要用数据库? 程序中的数据是在内存中,一旦程序关了,数据就没了,没法永久保存。 所以我们需要把数据“持久化”。 我们虽然学过IO流和File类,可以实现数据的持久化,但是用普通的文件保存的话 数据的格式 检索、管...
    99+
    2014-06-01
    Mysql入门
  • 18Oracle入门
    1 Oracle的服务 Oracle的监听服务:OralceOraDB12Home1TNSListener 需要通过程序链接数据库进行开发的时候,此服务必须打开,如果只是在本机使用,此服务可不启动 Oracle 的实例服务:OracleS...
    99+
    2019-02-11
    18Oracle入门
  • 【Redis】入门
    Redis是一个开源的、基于内存的数据结构存储器,可以用作数据库、缓存和消息中间件 Redis最常用的功能 缓存 分布式锁 Redis概述 Redis常用数据结构 Redis删除过期数据策略 Red...
    99+
    2019-10-29
    【Redis】入门
  • 【Mongodb】入门
    MongoDB 是一个基于分布式文件存储的数据库。由 C++ 语言编写。旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。 概述 MongoDB 是一个基于分布式文件存储的数据库。由 C++ 语...
    99+
    2021-08-30
    【Mongodb】入门
  • python 入门
    1、 python 脚本的编写   文件:hello.py   第一步:在第一行添加  #!/usr/bin/env python #!/usr/bin/env python3 print("hello world");    第二步...
    99+
    2023-01-30
    入门 python
  • Python入门
    ---恢复内容开始---   在这章中,我了解到了计算机的概念、Python的发展史以及Python语言的版本之间的区别,并自己安装了Python的编辑器。通过安装Python编辑器,我认识到安装软件也可以在官网上安装。     在第...
    99+
    2023-01-30
    入门 Python
  • Flask入门
    本文参考博客:https://blog.csdn.net/xiaoyuan511t=1 Flask是轻量级的Web开发框架,只具备基本的核心内容-->视图和路由,其他的功能都需要第三方或者自己手写 建立第一个Flask程序 pip...
    99+
    2023-01-31
    入门 Flask
  • Filebeat入门
    简介Beats 是安装在服务器上的数据中转代理。Beats 可以将数据直接传输到 Elasticsearch 或传输到 Logstash 。Beats 有多种类型,可以根据实际应用需要选择合适的类型。常用的类型有:Packetbeat:网络...
    99+
    2023-01-31
    入门 Filebeat
  • python3_00.入门
        了解,建议,资源。继续更新~~~~python之禅Beautiful is better than ugly.             优美胜于丑陋。Explicit is better than implicit.        ...
    99+
    2023-01-31
    入门
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作