手撕面试官系列(四 ):MongoDB+Redis 面试专题
程序员文章站
2022-06-05 20:23:39
假如 Redis 里面有 1 亿个 key ,其中有 10w 个 个 key 是以某个固定的已知的前缀开头的,如果将它们全部找出来? ......
mongodb
(面试题+答案领取方式见侧边栏)
- 你说的 nosql 数据库是什么意思?nosql 与 rdbms 直接有什么区别?为什么要使用和不使用nosql 数据库?说一说 nosql 数据库的几个优点?
- nosql 数据库有哪些类型?
- mysql 与 mongodb 之间最基本的差别是什么?
- 你怎么比较 mongodb、couchdb 及 couchbase?
- mongodb 成为最好 nosql 数据库的原因是什么?
- 32 位系统上有什么细微差别?
- journal 回放在条目(entry)不完整时(比如恰巧有一个中途故障了)会遇到问题吗?
- 分析器在 mongodb 中的作用是什么?
- 名字空间(namespace)是什么?
- 如果用户移除对象的属性,该属性是否从存储层中删除?
- 能否使用日志特征进行安全备份?
- 允许空值 null 吗?
- 更新操作立刻 fsync 到磁盘?
- 如何执行事务/加锁?
- 为什么我的数据文件如此庞大?
- 启用备份故障恢复需要多久?
- 什么是 master 或 primary?
- 什么是 secondary 或 slave?
- 我必须调用 getlasterror 来确保写操作生效了么?
- 我应该启动一个集群分片(sharded)还是一个非集群分片的 mongodb 环境?
- 分片(sharding)和复制(replication)是怎样工作的?
- 数据在什么时候才会扩展到多个分片(shard)里?
- 当我试图更新一个正在被迁移的块(chunk)上的文档时会发生什么?
- 如果在一个分片(shard)停止或者很慢的时候,我发起一个查询会怎样?
- 我可以把 movechunk 目录里的旧文件删除吗?
- 我怎么查看 mongo 正在使用的链接?
- 如果块移动操作(movechunk)失败了,我需要手动清除部分转移的文档吗?
- 如果我在使用复制技术(replication),可以一部分使用日志(journaling)而其他部分则不使用吗?
- 当更新一个正在被迁移的块(chunk)上的文档时会发生什么?
- mongodb 在 a:{b,c}上建立索引,查询 a:{b,c}和 a:{c,b}都会使用索引吗?
- 如果一个分片(shard)停止或很慢的时候,发起一个查询会怎样?
- mongodb 支持存储过程吗?如果支持的话,怎么用?
- 如何理解 mongodb 中的 gridfs 机制,mongodb 为何使用 gridfs 来存储文件?
redis (一)
- redis 和 和 memcached 什么区别?为什么高并发下有时单线程的 redis 比多线程的memcached 效率要高?
- redis 主从复制如何实现的?redis 的集群模式如何实现?redis 的 的 key 是如何寻址的?
- 使用 redis 如何设计分布式锁?说一下实现思路?使用 zk 可以吗?如何实现?这两种有什么区别?
- 知道 redis 的持久化吗?底层如何实现的?有什么优点缺点?
- redis 过期策略都有哪些?lru 算法知道吗?写一下 java 代码实现?
- 缓存穿透、缓存击穿、缓存雪崩解决方案?
- 在选择缓存时,什么时候选择 redis ,什么时候选择
- 缓存与数据库不一致怎么办
- 主从数据库不一致如何解决
- redis 常见的性能问题和解决方案
- redis 的数据淘汰策略有哪些
- redis 当中有哪些数据结构
- 假如 redis 里面有 1 亿个 key ,其中有 10w 个 个 key 是以某个固定的已知的前缀开头的,如果将它们全部找出来?
- 使用 redis 做过异步队列吗,是如何实现的
- redis 如何实现延时队列
redis (二)
- 什么是 redis?简述它的优缺点?
- redis 相比 memcached 有哪些优势?
- redis 支持哪几种数据类型?
- redis 主要消耗什么物理资源?
- redis 的全称是什么?
- redis 有哪几种数据淘汰策略?
- redis 官方为什么不提供 windows 版本?
- 一个字符串类型的值能存储最大容量是多少?
- 为什么 redis 需要把所有数据放到内存中?
- redis 集群方案应该怎么做?都有哪些方案?
- redis 集群方案什么情况下会导致整个集群不可用?
- mysql 里有 2000w 数据,redis 中只存 20w 的数据,如何保证 redis
- redis 有哪些适合的场景?
- redis 支持的 java 客户端都有哪些?官方推荐用哪个?
- redis 和 redisson 有什么关系?
- jedis 与 redisson 对比有什么优缺点?
- redis 如何设置密码及验证密码?
- 说说 redis 哈希槽的概念?
- redis 集群的主从复制模型是怎样的?
- redis 集群会有写操作丢失吗?为什么?
- redis 集群之间是如何复制的?
- redis 集群最大节点个数是多少?
- redis 集群如何选择数据库?
- 怎么测试 redis 的连通性?
- redis 中的管道有什么用?
- 怎么理解 redis 事务?
- redis 事务相关的命令有哪几个?
- redis key 的过期时间和永久有效分别怎么设置?
- redis 如何做内存优化?
- redis 回收进程如何工作的?