nosql 数据库学习笔记
一、Nosql 数据库
Nosql 数据库是非关系型数据库,常用的 NoSQL 数据库包括 redis 和 MongoDB 等。本次学习将以 redis 为例进行详细介绍。所有内容参考自菜鸟教程。
1.1 特点
Nosql 数据库的优势包括快速查询,常用于缓存处理,易扩展,灵活的数据模型和高可用性。其劣势在于存储的数据缺乏结构化。
1.2 分类
Nosql 数据库可以分为以下几类:
- 键值(key-value)存储
- 列存储
- 文档数据库
- 图形数据库
1.3 redis 数据类型
redis 支持以下几种数据类型:
- 字符串类型
- 散列类型
- 列表类型
- 有序集合类型
1.4 redis 应用场景
redis 的应用场景包括但不限于:
- 缓存
- 任务队列
- 网站访问统计
- 数据过期处理
- 应用排行榜
- 分布式集群架构中的 session 分离
二、使用 redis
安装参考:安装 redis
2.1 安装 redis (windows 环境下)
下载 redis 时,建议根据实际情况选择合适的版本。下载链接可以复制到迅雷中进行加速下载。
解压文件并保存到 C 盘。
使用命令提示符进入该目录,使用临时服务安装命令 redis-server.exe redis.windows.conf 启动 redis 服务器,启动成功后会显示相应信息。
请注意,启动 redis 服务器后需保持窗口打开,并在新窗口中进入相同目录,输入 redis-cli 命令连接到 redis 服务器。
2.2 Linux 环境下使用 redis (待更新)
该部分内容待补充。
三、redis 的简单使用
3.1 设置键值对
3.2 查看属性配置
查看所有配置信息可以使用命令 CONFIG GET *。
3.3 redis 常用命令
初次使用时,这些命令已足够使用,更多命令可以参考 redis 详细文档:http://doc.redisfans.com/
3.4 jedis 使用
3.4.1 jedis 下载
使用 Java 连接 redis 时,需要下载两个 jedis jar 包。以下是下载链接:
3.4.2 使用 java 连接 redis
这里使用单元测试来实现连接:
package com.imooc.jedis; import org.junit.Test; import redis.clients.jedis.Jedis; import redis.clients.jedis.JedisPool; import redis.clients.jedis.JedisPoolConfig; <p>/**</p><ul><li><p>jedis 测试</p></li><li><p>@author Gorit */ public class JedisDemo1 { @Test /**</p><ul><li>单实例测试 */ public void demo1() { // 1. 设置 id 和端口号 Jedis jedis = new Jedis("127.0.0.1", 6379); // 2. 保存数据 jedis.set("name", "imooc"); // 3. 获取数据 System.out.println(jedis.get("name")); jedis.close(); }</li></ul><p>/**</p><ul><li>类似 jdbc 连接池操作 */ @Test public void demo2() { // 获取连接池的配置对象 JedisPoolConfig config = new JedisPoolConfig(); // 设置最大连接数 config.setMaxTotal(10); // 设置最大空闲连接数 config.setMaxIdle(10); // 获得连接池 JedisPool jdp = new JedisPool(config, "127.0.0.1", 6379); // 获取核心对象 Jedis jedis = null; try { // 通过连接池获得连接 jedis = jdp.getResource(); // 设置数据 jedis.set("name", "张三"); // 获得数据 jedis.get("name"); } catch (Exception e) { // TODO: handle exception e.printStackTrace(); } finally { // 释放资源 if (jedis != null) { jedis.close(); } if (jdp != null) { jdp.close(); } } } }
以上就是NoSQL 数据库学习 (redis)的详细内容,更多请关注知识资源分享宝库其它相关文章!
发表评论:
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。