Redis面试题
此文章来自Redis中文官网,非本人原创
更多详情请去官网
1)什么是Redis?
Redis是一个开源的高级键值数据存储和缓存。它也被称为数据结构服务器,其键不仅包含字符串,还包含哈希,集合,列表和有序集。
2)Redis是什么意思?
Redis代表REmote DIctionary Server。
3)Redis与其他数据库有何不同?
Redis是一个NoSQL,Opensource,内存数据结构存储。它遵循键值存储的原则。
它非常快速,持久,可移植,支持多种语言,如C,C ++,C#,Clojure,Common Lisp,D,Dart,Erlang,Go,Haskell,Haxe,Io,Java,JavaScript(Node.js),Julia, Lua,Objective-C,Perl,PHP,纯数据,Python,R,球拍,Ruby,Rust,Scala,Smalltalk和Tcl。
Redis与其他Key-Value存储
键值存储是一种特殊类型的数据库存储系统,其中数据以键和值对的形式存储。
与其他键值存储相比,Redis与以下内容不同:
Redis是键值数据库中不同的演化路径,其中值可以包含更复杂的数据类型,并在这些数据类型上定义原子操作。
Redis数据类型与基本数据结构密切相关,并且无需额外的抽象层即可向程序员公开。
Redis是一个内存但持久的磁盘数据库,因此它代表了一种不同的折衷方案,其中通过不能大于内存的数据集的限制实现了非常高的写入和读取速度。
内存数据库的另一个优点是,与磁盘上的相同数据结构相比,复杂数据结构的内存表示更易于操作,因此Redis可以做很多事情,内部复杂性很小。
同时,两种磁盘存储格式(RDB和AOF)不需要适合随机访问,因此它们非常紧凑,并且始终以仅附加方式生成
4)Redis用哪种语言编写?
Redis是用ANSI C编写的,主要用于缓存解决方案和会话管理。它为商店值创建唯一键。
5)Redis的用途是什么?
Redis是一个特殊的键值存储数据库,可以用作NoSQL数据库或内存缓存存储,以在提供存储在系统内存中的数据时提高性能。
6)如何与Redis互动?
安装服务器后,您可以运行redis安装提供的Redis客户端,也可以打开命令提示符并使用以下命令:
redis-cli
通过使用其中任何一个,您可以与Redis交互。
7)哪些是最受欢迎的Redis公司?
Twitter,Github,Stackoverflow等是使用Redis的最受欢迎的公司。
8)Redis的主要特点是什么?
以下是Redis的主要功能:
Redis安装和管理非常简单。
Redis非常快。它每秒可以执行100000个查询。
Redis速度很快,因为数据在内存中持久存储并存储在磁盘上。
Redis非常快,因为它将整个数据集加载到主存储器中。
处理不同数据类型的Redis操作是原子操作,因此可以安全地完成这些操作,即设置或增加密钥,添加或删除集合中的元素或增加计数器。
它支持各种类型的数据结构,如字符串,散列,集合,列表,排序集等。
Redis支持多种语言,如C,C ++,C#,Ruby,Python,Twisted Python,PHP,Erlang,Tcl,Perl,Lua,Java,Scala等。
如果您不喜欢您喜欢的语言,您可以编写自己的客户端库,因为协议非常简单。
Redis支持简单的主从复制。
Redis是便携式的。
有关更多信息:请单击此处
9)解释Redis的复制功能?
复制对于在大数据系统中存档高级别可用性非常重要。需要在n个地方复制数据。这遵循主从方法,其中主副本由主从维护并且复制到n个其他节点。
10)使用Redis有什么好处?
以下列出了Redis的一些重要优势:
Redis非常快。
它支持服务器端锁定。
它有一个丰富的客户端库。
这是一个很好的反击。
它支持原子操作。
11)使用Redis有哪些缺点/限制?
以下是Redis的缺点/限制:
它是单线程的。
它对一致哈希的客户端支持有限。
它具有很大的持久性开销。
它没有广泛部署。
12)Redis和RDBMS有什么区别?
Redis和RDBMS之间存在很多差异:
Redis是NoSQL数据库,而RDBMS是SQL数据库。
Redis遵循键值结构,而RDBMS遵循表结构。
Redis非常快,而RDBMS相对较慢。
Redis将所有数据集存储在主存储器中,而RDBMS将其数据集存储在辅助存储器中。
Redis通常用于存储小型和常用文件,而RDBMS用于存储大文件。
Redis仅为Linux,BSD,Mac OS X,Solaris提供官方支持。它目前没有为Windows提供官方支持,而RDBMS提供对两者的支持。