教育行业A股IPO第一股(股票代码 003032)

全国咨询/投诉热线:400-618-4000

Java培训:数据存储方式和NoSQL

更新时间:2023年10月24日09时34分 来源:传智教育 浏览次数:

好口碑IT培训

  一、数据存储方式和NoSQL

  1.1 数据存储方式

  互联网时代各种数据存储方式层出不穷,有传统的关系型数据库如:MySQL、Oracle等,;有全文检索框架如:ElasticSearch、Solr;有NoSQL如:Cassandra、Redis

  这些存储方式的特点:

  - 关系型数据库:支持事务,二级索引,SQL语句,支持主从架。

  - 全文检索:分布式,p2p架构,不支持事务,采用倒排索引提供全文检索。

  - NoSQL:一般基于内存,支持分布式,面向列,不支持SQL。

  1.2 NoSQL概述

  NoSQL,泛指非关系型的数据库,NoSQL去掉关系数据库的关系型特性,数据之间无关系,非常容易扩展。

  NoSQL型数据库一般包含一些共同特性:

  - 易扩展

  NoSQL数据库种类繁多,但是一个共同的特点都是去掉关系数据库的关系型特性。数据之间无关系,这样就非常容易扩展,在架构的层面上带来了可扩展的能力。

  - 大数据量,高性能

  NoSQL数据库都具有非常高的读写性能,尤其在大数据量下。一般MySQL使用Query Cache。NoSQL的Cache是记录级的,是一种细粒度的Cache,所以NoSQL在这个层面上来说性能就要高很多。

  - 灵活的数据模型

  NoSQL无须事先为要存储的数据建立字段,随时可以存储自定义的数据格式。而在关系数据库里,增删字段是一件非常麻烦的事情。

  - 高可用

  NoSQL在不太影响性能的情况,就可以方便地实现高可用的架构。比如Cassandra、HBase模型,通过复制模型也能实现高可用。

  1.3 NoSQL的分类

  (1)键值(Key-Value)存储数据库

  这一类数据库主要使用[哈希表],这个表中有一个特定的键和一个指针指向特定的数据。Key/value模型的优势在于简单、易部署。代表为: Redis。

  (2)列存储数据库

  这类数据库通常是用来应对分布式存储的海量数据。键仍然存在,但是它们的特点是指向了多个列。这些列是由列家族来安排的。如:Cassandra, HBase。

  (3)文档型数据库

  文档型数据库和第一种键值存储相类似。该类型的数据模型是版本化的文档,半结构化的文档以特定的格式存储,比如JSON。文档型数据库可以看作是键值数据库的升级版,允许之间嵌套键值,在处理网页等复杂数据时,文档型数据库比传统键值数据库的查询效率更高。如:CouchDB, MongoDb。

  (4)图形(Graph)数据库

  图形结构的数据库同其他行列以及关系型数据库不同,它是使用灵活的图形模型,并且能够扩展到多个服务器上。

0 分享到:
和我们在线交谈!