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 回收進程如何工作的?