1、redis与Nosql

本文介绍了NoSQL数据库的原理和优势,包括其无关系性、高性能、灵活数据模型和高可用性,同时也指出了其劣势,如缺乏SQL支持和事务处理。接着详细讲述了Redis作为一款Key-Value数据库的特点,包括其数据类型、开源背景和开发者信息。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.1什么是 NoSQL

NoSQL = Not Only SQL(不仅仅是 SQL) ,也解释为 non-relational(非关系型数据库)。在
NoSQL 数据库中数据之间是无联系的,无关系的。数据的结构是松散的,可变的。

1.2为什么使用 NoSQL

关系型数据库的瓶颈:

1)无法应对每秒上万次的读写请求,无法处理大量集中的高并发操作。关系型数据的是 IO 密集的应用。硬盘 IO 也变为性能瓶颈
2)无法简单地通过增加硬件、服务节点来提高系统性能。数据整个存储在一个数据库中 的。多个服务器没有很好的解决办法,来复制这些数据。
3)关系型数据库大多是收费的,对硬件的要求较高。软件和硬件的成本花费比重较大。

1.3NoSQL 的优势

(1) 大数据量,高性能

NoSQL 数据库都具有非常高的读写性能,尤其在大数据量下,同样表现优秀。这得益 于它的无关系性,数据库的结构简单。关系型数据库(例如MySQL)使用查询缓存。这 种查询缓存在更新数据后,缓存就是失效了。在频繁的数据读写交互应用中。缓存的性能 不高。NoSQL的缓存性能要高的多。

(2) 灵活的数据模型

NoSQL 无需事先为要存储的数据建立字段,随时可以存储自定义的数据格式。而在关
系数据库里,增删字段是一件非常麻烦的事情。如果是非常大数据量的表,增加字段简直
就是一个噩梦。尤其在快速变化的市场环境中,用户的需求总是在不断变化的。

(3) 高可用

NoSQL 在不太影响性能的情况,就可以方便的实现高可用的架
构。 NoSQL 能很好的解决关系型数据库扩展性差的问题。弥补了关系数据(比如MySQL) 在某些方面的不足,在某些方面能极大的节省开发成本和维护成本。

MySQL 和 NoSQL 都有各自的特点和使用的应用场景,两者结合使用。让关系数据库 关注在关系上,NoSQL 关注在存储上。

(4) 低成本

这是大多数分布式数据库共有的特点,因为主要都是开源软件,没有昂贵的 License 成本

1.4NoSQL 的劣势

(1) 不支持标准的 SQL,没有公认的 NoSQL 标准
(2) 没有关系型数据库的约束,大多数也没有索引的概念
(3) 没有事务,不能依靠事务实现 ACID.
(4) 没有丰富的数据类型(数值,日期,字符,二进制,大文本等)

1.5Redis 介绍

Remote Dictionary Server(Redis)是一个开源的使用 C 语言编写、支持网络、可基于内存
亦可持久化的 Key-Value 数据库. Key 字符类型,其值(value)可以是字符串(String), 哈希(Map),
列表(list), 集合(sets) 和有序集合(sorted sets)等类型,每种数据类型有自己的专属命令。所
以它通常也被称为数据结构服务器。
Redis 的作者是 Antirez,来自意大利的西西里岛,现在居住在卡塔尼亚。目前供职于
Pivotal 公司(Pivotal 是 Spring 框架的开发团队),Antirez 被称为 Redis 之父。
Redis的代码托管在GitHub上https://github.com/antirez/redis,开发十分活跃,代码量只
有3万多行。
官网:https://redis.io/
中文:http://www.redis.cn/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值