【Redis刨析】知识图谱的构建与实现

2023-12-27 15:36

本文主要是介绍【Redis刨析】知识图谱的构建与实现,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

前言

在这里插入图片描述
「作者主页」:雪碧有白泡泡
「个人网站」:雪碧的个人网站
请添加图片描述

ChatGPT体验地址

请添加图片描述

文章目录

  • 前言
  • 引用
  • 构建过程
  • Redis的知识图谱构建过程
    • Redis介绍
    • 快的原因
    • 持久化

引用

对于编程的学习,过了初级阶段,我认为应该减少对视频的依赖,学习编程,遇到错误,检查搜索错误,然后验证方案,最后解决错误,将每一个错误,每一个丢失在脑袋中的知识点,去形成一个属于自己的知识结构。

对于知识图谱的构建,我相信大家都能够第一时间想到思维导图吧,在这里推荐一个免费的在线工具库:tool 。解决了实操场地,那我们一起来聊聊对于构建过程你是否有体系的方法
在这里插入图片描述

构建过程

我认为在整个从接触到精通过程中,我往往把构建过程分为四步
第一步,构图。也就是说我们拿到一个知识点,我们学了一遍之后呢,我们这一个知识点包括了123条内容,就比我刚学java,需要知道java的定义,Java的关键字,符号,语法,面向对象等等,而面向对象里面又有好多内容,比如说特性就有封装,继承,多态,当我们逐渐积累,成长,我们会对一个或一块内容,进行查漏补缺,我把它称为第二步,补图。第三步我把它称为拆图,逐渐灵活掌握,我们不会把知识的运用局限于某一块内容,通常会形成一个思维定势,我把这个思维定势称为自我高度片面化总结,其实从这里开始,你会发现书本上的知识进入大脑中,都是干货。但是往往发现,你会有总结不完的内容。最后一步,我把它称为挖图,你自己高度片面化总结的知识,进行底层逻辑的深挖,也就是从广度到深度的过程。

相信有很多正在学习的在校生,或者准备面试的应届生,亦或是刚刚步入职场的伙伴。我们这些都在成长路上有共同目标的人,我觉得我们都可以在以上的第三步,互相分享共同进步。

创建了一个分享平台:聚友堂
在这里你可以找到共同进步的伙伴,进行聊天,创建房间,发布帖子,一起来分享吧

Redis的知识图谱构建过程

Redis介绍

我们首先肯定要了解redis的内容是什么
在这里插入图片描述
redis是一个基于键值对的NoSQL数据库,你知道NoSQL是什么吗?非关系型数据库说的通俗一点:不是表结构的,而是用数据模型.那这个数据模型支持哪些数据结构呢?字符串,哈希,列表,集合,有序集合(比集合多一个权重). 那既然有这么多种数据结构,具体的作用有:首先是常用的缓存功能,还有计数器,点赞浏览量什么的.还有排行榜,消息队列,分布式等等.

快的原因

我们经常使用redis做缓存是因为它快,那么快的原因是什么呢?
在这里插入图片描述
redis的速度十分之快,是mysql的几十倍,首先因为他的对库操作都是完全基于内存操作,其次的话redis在底层使用的数据结构都是优化过的数据结构,可以达到很高的性能,而且使用单线程处理客户端请求,避免了多线程的开销.使用的是IO多路复用.同时监控多个IO流的状态以及处理可读或可写的事件.其实在这个单线程来说,redis的6.0版本处理读写和协议解析使用了多线程,之前的单线程似乎是历史问题,但是执行命令还是单线程.这样的目的肯定是为了进一步提高性能,redis的性能瓶颈在于网络IO,并非CPU,所以使用多线程能提升IO读写的效率.

持久化

我们对于redis已经有了基础的了解,我们来详细了解一下持久化的内容
在这里插入图片描述

首先是redis持久化的方法,主要有两种,RDB和AOF.首先RDB就是关系型数据库的存储方法,就是表结构.而AOF是一种以写入命令日志的方式记录数据库的持久化方法,并且提供了可读性和数据恢复.具体的流程为:将所有写入命令追加到缓冲区,缓冲区根据策略同步到硬盘。AOF文件会随着操作越来越大,需要进行重写和压缩。当重新启动Redis时,可以加载AOF文件来恢复数据.至于两个的选择和优缺点来说,RDB适用于资源有限、性能要求高、可接受一定数据丢失的环境,而AOF适用于对数据安全性和完整性要求较高的环境。为了达到MySQL相同安全性可以两者结合使用.前者说到使用AOF进行数据恢复.我们知道redis的启动过程是先加载AOF如何再加载RDB,然后成功启动,那么恢复的过程只需要RDB或者AOF拷贝到数据目录即可恢复,如果是AOF恢复,需要开启AOF然后启动即可.最后,在持久化的选择我们说过可以同时使用,在redis4.0中,结合了两者优点提出了混合持久化机制,总结就是加载RDB内容并重放增量AOF日志

还有很多内容可以私信获取,比如说redis高可用,缓存设计,无底洞问题,运维还有场景问题,在redis知识图谱的过程中,我们从大范围高度片面化总结为一句话或者一段话内容,为我们后续的深挖过程奠定了踏实的基础,
具体的内容可以看下面这本热销书籍
购买链接为:地址

在这里插入图片描述

  • 🎁本次送书1~3本【取决于阅读量,阅读量越多,送的越多】👈
  • ⌛️活动时间:截止到2023-12月31号
  • ✳️参与方式:关注博主+三连(点赞、收藏、评论)

在这里插入图片描述

这篇关于【Redis刨析】知识图谱的构建与实现的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/543597

相关文章

Redis分片集群的实现

《Redis分片集群的实现》Redis分片集群是一种将Redis数据库分散到多个节点上的方式,以提供更高的性能和可伸缩性,本文主要介绍了Redis分片集群的实现,具有一定的参考价值,感兴趣的可以了解一... 目录1. Redis Cluster的核心概念哈希槽(Hash Slots)主从复制与故障转移2.

springboot+dubbo实现时间轮算法

《springboot+dubbo实现时间轮算法》时间轮是一种高效利用线程资源进行批量化调度的算法,本文主要介绍了springboot+dubbo实现时间轮算法,文中通过示例代码介绍的非常详细,对大家... 目录前言一、参数说明二、具体实现1、HashedwheelTimer2、createWheel3、n

使用Python实现一键隐藏屏幕并锁定输入

《使用Python实现一键隐藏屏幕并锁定输入》本文主要介绍了使用Python编写一个一键隐藏屏幕并锁定输入的黑科技程序,能够在指定热键触发后立即遮挡屏幕,并禁止一切键盘鼠标输入,这样就再也不用担心自己... 目录1. 概述2. 功能亮点3.代码实现4.使用方法5. 展示效果6. 代码优化与拓展7. 总结1.

Mybatis 传参与排序模糊查询功能实现

《Mybatis传参与排序模糊查询功能实现》:本文主要介绍Mybatis传参与排序模糊查询功能实现,本文通过实例代码给大家介绍的非常详细,感兴趣的朋友跟随小编一起看看吧... 目录一、#{ }和${ }传参的区别二、排序三、like查询四、数据库连接池五、mysql 开发企业规范一、#{ }和${ }传参的

Docker镜像修改hosts及dockerfile修改hosts文件的实现方式

《Docker镜像修改hosts及dockerfile修改hosts文件的实现方式》:本文主要介绍Docker镜像修改hosts及dockerfile修改hosts文件的实现方式,具有很好的参考价... 目录docker镜像修改hosts及dockerfile修改hosts文件准备 dockerfile 文

基于SpringBoot+Mybatis实现Mysql分表

《基于SpringBoot+Mybatis实现Mysql分表》这篇文章主要为大家详细介绍了基于SpringBoot+Mybatis实现Mysql分表的相关知识,文中的示例代码讲解详细,感兴趣的小伙伴可... 目录基本思路定义注解创建ThreadLocal创建拦截器业务处理基本思路1.根据创建时间字段按年进

SpringBoot3实现Gzip压缩优化的技术指南

《SpringBoot3实现Gzip压缩优化的技术指南》随着Web应用的用户量和数据量增加,网络带宽和页面加载速度逐渐成为瓶颈,为了减少数据传输量,提高用户体验,我们可以使用Gzip压缩HTTP响应,... 目录1、简述2、配置2.1 添加依赖2.2 配置 Gzip 压缩3、服务端应用4、前端应用4.1 N

SpringBoot实现数据库读写分离的3种方法小结

《SpringBoot实现数据库读写分离的3种方法小结》为了提高系统的读写性能和可用性,读写分离是一种经典的数据库架构模式,在SpringBoot应用中,有多种方式可以实现数据库读写分离,本文将介绍三... 目录一、数据库读写分离概述二、方案一:基于AbstractRoutingDataSource实现动态

Python FastAPI+Celery+RabbitMQ实现分布式图片水印处理系统

《PythonFastAPI+Celery+RabbitMQ实现分布式图片水印处理系统》这篇文章主要为大家详细介绍了PythonFastAPI如何结合Celery以及RabbitMQ实现简单的分布式... 实现思路FastAPI 服务器Celery 任务队列RabbitMQ 作为消息代理定时任务处理完整

Java枚举类实现Key-Value映射的多种实现方式

《Java枚举类实现Key-Value映射的多种实现方式》在Java开发中,枚举(Enum)是一种特殊的类,本文将详细介绍Java枚举类实现key-value映射的多种方式,有需要的小伙伴可以根据需要... 目录前言一、基础实现方式1.1 为枚举添加属性和构造方法二、http://www.cppcns.co