Redis数据库

本文涉及的产品
云原生内存数据库 Tair,内存型 2GB
云数据库 Redis 版,社区版 2GB
推荐场景:
搭建游戏排行榜
云数据库 Redis 版,经济版 1GB 1个月
简介: 这段内容介绍了NoSQL数据库的概念和分类,以及Redis的详情和历史发展。NoSQL是一种为解决高并发、高可扩展性和大数据存储问题而设计的非关系型数据库。它主要有四种类型:键值存储(如Redis)、列存储(如HBase)、文档型(如MongoDB)和图形数据库。Redis是一个高性能的键值对数据库,支持多种数据类型,常用于内容缓存。Redis由Salvatore Sanfilippo开发,因其优秀性能获得了广泛使用,后来被VMware赞助并持续发展。练习部分引导读者进行Redis的安装及字符串类型的基本操作,包括存储、修改、删除、查看、追加和获取长度,以及利用其递增特性生成订单号。

Redis

1.1 什么是NoSql

为了解决高并发、高可扩展、高可用、大数据存储问题而产生的数据库解决方案,就是NoSql数据库。

NoSQL,泛指非关系型的数据库,NoSQLNot-Only SQL,它可以作为关系型数据库的良好补充。

1.2 Nosql数据库分类

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

相关产品: Tokyo Cabinet/TyrantRedisVoldemortBerkeley DB

典型应用:内容缓存,主要用于处理大量数据的高访问负载。

数据模型:一系列键值对

优势:快速查询

劣势:存储的数据缺少结构化

n 列存储数据库

相关产品:Cassandra, HBase, Riak

典型应用:分布式的文件系统

数据模型:以列簇式存储,将同一列数据存在一起

优势:查找速度快,可扩展性强,更容易进行分布式扩展

劣势:功能相对局限

n 文档型数据库

相关产品:CouchDBMongoDB

典型应用:Web应用(与Key-Value类似,Value是结构化的)

数据模型:一系列键值对

优势:数据结构要求不严格

劣势:查询性能不高,而且缺乏统一的查询语法

n 图形(Graph)数据库

相关数据库:Neo4JInfoGridInfinite Graph

典型应用:社交网络

数据模型:图结构

优势:利用图结构相关算法。

劣势:需要对整个图做计算才能得出结果,不容易做分布式的集群方案。1.3 什么是Redis

Redis是用C语言开发的一个开源的高性能键值对(key-value)数据库。它通过提供多种键值数据类型

来适应不同场景下的存储需求,

目前为止Redis支持的键值数据类型如下:

字符串类型

散列类型

列表类型

集合类型

有序集合类型

1.4 redis历史发展

2008年,意大利的一家创业公司Merzia推出了一款基于MySQL的网站实时统计系统LLOOGG,然而

没过多久该公司的创始人 Salvatore Sanfilippo便对MySQL的性能感到失望,于是他决定亲自为

LLOOGG量身定做一个数据库,并于2009年开发完成,这个数据库就是Redis。不过Salvatore

Sanfilippo并不满足只将Redis用于LLOOGG这一款产品,而是希望更多的人使用它,于是在同一年

Salvatore SanfilippoRedis开源发布,并开始和Redis的另一名主要的代码贡献者Pieter Noordhuis

起继续着Redis的开发,直到今天。

Salvatore Sanfilippo自己也没有想到,短短的几年时间,Redis就拥有了庞大的用户群体。Hacker

News2012年发布了一份数据库的使用情况调查,结果显示有近12%的公司在使用Redis。国内如新

浪微博、街旁网、知乎网,国外如GitHubStack OverflowFlickr等都是Redis的用户。

VMware公司从2010年开始赞助Redis的开发, Salvatore SanfilippoPieter Noordhuis也分别在3

月和5月加入VMware,全职开发Redis

练习:

1.  安装Redis,并分别测试前端启动和后端启动两种方式

image.png

image.png

2.字符串类型基本操作练习

1)将以下键值对内容存储到redis

键值        

course1      java

course2      big data

course3      cloud computing

course4      php

image.png

(2)修改course4的值为html5

image.png

(3)删除keycourse3的内容

image.png

(4)查看所有值

image.png

(5)course4后追加内容

image.png

(6)获取course1中值的长度

image.png

3.利用string的递增数字特性生成订单号

1)使订单号依次增加1

image.png

2)使订单号依次增加3

image.png

相关实践学习
基于Redis实现在线游戏积分排行榜
本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
云数据库 Redis 版使用教程
云数据库Redis版是兼容Redis协议标准的、提供持久化的内存数据库服务,基于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 产品详情:https://www.aliyun.com/product/kvstore     ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库 ECS 实例和一台目标数据库 RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
相关文章
|
3天前
|
存储 消息中间件 NoSQL
Redis 和 数据库区别
【7月更文挑战第12天】
8 0
|
2月前
|
消息中间件 NoSQL OLAP
doris数据库是否可以替代redis
【4月更文挑战第20天】doris数据库是否可以替代redis
350 0
|
2月前
|
存储 NoSQL 算法
Redis 的数据库和键管理
Redis 是一个键值对(key-value pair)的数据库服务器,其数据保存在 src/server.h/redisDb 中(网上很多帖子说在 redis.h 文件中,但是 redis 6.x版本目录中都没有这个文件。redisDb 结构应该在 server.h文件中)
79 0
Redis 的数据库和键管理
|
2月前
|
存储 NoSQL Redis
Redis数据库
Redis数据库
58 0
|
8月前
|
NoSQL 数据库 Redis
查看redis当前是哪个数据库
查看redis当前是哪个数据库
|
9月前
|
NoSQL 关系型数据库 MySQL
21Redis - 多数据库特性
21Redis - 多数据库特性
29 0
|
存储 NoSQL 测试技术
redis多个数据库
redis多个数据库
231 0
|
存储 消息中间件 缓存
Redis数据库入门
Redis数据库入门
63 0
|
消息中间件 canal 缓存
【Redis与数据库的数据一致性】
【Redis与数据库的数据一致性】
197 0
【Redis与数据库的数据一致性】
|
存储 缓存 NoSQL
Redis数据库持久化
Redis数据库持久化
107 0
Redis数据库持久化