NoSQL 入门和概述
in SQL with 0 comment, Views is 68

NoSQL 入门和概述

in SQL with 0 comment, Views is 68

入门概述

是什么

NoSQL = Not Only SQL,意为“不仅仅是SQL”,泛指 非关系型数据库

随着互联网 WEB2.0 网站的兴起,传统的关系型数据库在应付 WEB2.0 网站,特别是超大规模和高并发的 SNS 类型的 WEB2.0 纯动态网站已经显得力不从心,暴露了很多难以克服的问题,而非关系型的数据库则由于其本身的特点得到了非常迅速的发展

NoSQL 数据库的产生就是为了解决大规模数据集合、多重数据种类带来的挑战,尤其是大数据应用难题,包括超大规模数据的存储

这些类型的数据存储不需要固定的模式,无需多余操作就可以横向扩展

能干嘛

易扩展

NoSQL 数据库种类繁多,但是一个共同的特点就是去掉了关系型数据库的关系型特性

数据之间无关系,这样就非常容易扩展。也无形之中,在架构的层面上带来了可扩展的能力

大数据量高性能

NoSQL 数据库都具有非常高的读写性能,尤其在大数据量下,同样表现优秀

这得益于它的无关系性,数据库的结构简单

一般 MySQL 使用 Query Cache,每次表的更新 Cache 就失效,是一种大粒度的 Cache

在针对 WEB2.0 的交互频繁的应用,Cache 性能不高,甚至可能造成数据库负担

而 NoSQL 的 Cache 是记录级的,是一种细粒度的 Cache,所以 NoSQL 在这个层面上来说就要性能高很多了

多样灵活的数据模型

NoSQL 无需事先为要存储的数据建立字段,随时可以存储自定义的数据格式

而在关系型数据库里,增删字段是一件非常麻烦的事情。如果是非常大数据量的表,增加字段简直就是噩梦

传统 RDBMS VS NoSQL

RDBMS:关系数据库管理系统

NoSQL:非关系数据库

去哪下

Redis

《Redis 安装》

Memcache

《Linux Memcached 安装》

《Windows 下安装 Memcached》

MongoDB

《Windows 平台安装 MongoDB》

《Linux 平台安装 MongoDB》

《Mac OSX 平台安装 MongoDB》

怎么玩

key + value(键值对)
cache(缓存)
persistence(持久化)

3V + 3高

大数据时代的 3V

互联网需求的 3高

当下的 NoSQL 经典应用

当下的应用基本是 SQL 和 NoSQL 一起使用

阿里巴巴中文站

架构发展历程

1、演变过程

1.png

2、第四代网站架构

但到了 2010 年底,阿里巴巴却不得不开始实施第五代网站架构改造

3、第五代网站架构使命

多数据源多数据类型的存储问题

2.png

商品基本信息

名称、价格、出厂日期、生产厂商等

利用关系型数据库,MySQL/Oracle(淘宝内部用的 MySQL 是经过内核修改的)

淘宝在去 IOE 化(即拿掉 Oracle),为什么去 IOE ?

2008年,王坚加盟阿里巴巴成为集团首席架构师,即现在的首席技术官。这位前微软亚洲研究院常务副院长被马云定位为:将帮助阿里巴巴集团建立世界级的技术团队,并负责集团技术架构以及基础技术平台搭建。
在加入阿里后,带着技术基因和学者风范的王坚就在阿里巴巴集团提出了被称为 “去IOE”(在 IT 建设过程中,去除 IBM小型机、Oracle 数据库及 EMC 存储设备)的想法,并开始把云计算的本质,植入阿里 IT 基因。
王坚这样概括 “去IOE” 运动和阿里云之间的关系: “去IOE” 彻底改变了阿里集团 IT 架构的基础,是阿里拥抱云计算,产出计算服务的基础。 “去IOE” 的本质是分布化,让随处可以买到的 Commodity PC 架构成为可能,使云计算能够落地的首要条件。

商品描述、详情、评价信息(多文字类)

多文字信息描述类,会造成 IO 读写性能变差,采用文档数据库 MongoDB

商品的图片

商品图片展示类,采用分布式的文件系统

1、淘宝自己的 TFS
2、Google 的 GFS
3、Hadoop 的 HDFS

商品的关键字

搜索引擎 ISearch,淘宝内用

商品的波段性的热点高频信息

采用内存数据库,Tair、Redis、Memcached

商品交易、价格计算、积分累计

采用外部系统、第三方支付接口,支付宝

总结

总结大型互联网应用(大数据、高并发、多样数据类型)的难点和解决方案

难点

解决办法

EAI 和统一数据平台服务层 UDSL

是什么

什么样

3.png

映射

4.png

API

5.png

热点缓存

6.png

下一篇:《NoSQL 数据库简介》

Responses
选择表情