Data Domain:DD BoostFS 附掛程式應用程式驗證和 MongoDB 的最佳實務:Mongodump
Summary: 本知識文章提供 Data Domain DD Boost 檔案系統附掛程式 (BoostFS) 應用程式的最佳實務和組態準則。 此外,本文還包含有關如何配置應用程式以最大限度地發揮 BoostFS 所有優勢的見解和提示。
Instructions
MongoDB 提供 mongodump 將整個資料庫轉儲到所需位置的實用工具。
將資料庫轉儲到掛載在 MongoDB 所在的伺服器上的 BoostFS 檔案系統 mongod 資料庫進程運行。mongodump 備份資料庫,該資料庫可以包含多個集合。
設定 BoostFS
在要備份的 MongoDB 伺服器上安裝 BoostFS。
若要執行備份:
# mongodump --db testdb --numParallelCollections 5 --out /backup/
# mongodump --db <database_name> --numParallelCollections <no_parallel_collection_to_export> --out <path_to_boostfs_drive> --host <mongo_instance_hostname>
使用 numParallelCollections 選項 mongodump 啟用並行 n 個集合備份。如果 mongodb 資料庫,它們一次備份 N 個集合。
這將建立 testdb 目錄下 /backup 並存儲所有集合。
可使用 numParallelCollections 允許對 Data Domain 系統使用多個寫入串流 (每個集合一個)。
提高性能取決於此選項以及是否可以使用,具體取決於收集資料庫。
如果使用此選項,但性能仍然很差,那是因為資料庫收集。
範例:如果有更大大小的集合, mongodump 為此集合運行單個備份作業,並且僅建立一個連接。
如何執行還原:使用 mongorestore 將資料庫轉儲還原到正在運行的 Mongod 實例。
還原備份到 boostfs 掛載點的資料庫資料 /mnt/mongo-bkp 使用 mongodump,使用 mongorestore 命令,如下所示。這會將檔案還原至 demo-restore 資料庫。
# mongorestore --db demo-restore /mnt/mongo-bkp/data/ 2016-08-24T12:58:08.675-0400 building a list of collections to restore from /mnt/mongo-bkp/datadir 2016-08-24T12:58:08.680-0400 reading metadata for demo-restore.cc from /mnt/mongo-bkp/data/cc.metadata.json 2016-08-24T12:58:08.757-0400 restoring demo-restore.cc from /mnt/mongo-bkp/data/cc.bson 2016-08-24T12:58:11.397-0400 restoring indexes for collection demo-restore.cc from metadata 2016-08-24T12:58:11.397-0400 finished restoring demo-restore.cc (75000 documents) 2016-08-24T12:58:11.398-0400 done
還原也可以使用多個流並行完成。 mongorestore 首先打開元數據檔,使其保持打開狀態,開始讀取數據檔,並關閉每個集合的兩個檔。
效能:下圖顯示使用 BoostFS 的應用程式與 NFS 上相同工作負載相比的寫入和讀取效能。
百分比表示在此用例的實驗室中測量的增量性能量。寫入數字是以多個資料庫備份 (0-3) 為基礎,變更率為 10%。
|
串流數量 |
單曲 |
多個 |
|
寫入 %>NFS |
30% |
50% |
在復原方面,測試顯示 BoostFS 的還原效能與 NFS 大致相同。
最佳實務 - Mongodump
- Mongodump 會使用 Wired Tiger 或 MMAPV1 儲存引擎,以未壓縮的格式將備份檔案寫入 Data Domain 系統。
- 使用 Mongodump 的 MongoDB 備份總是會傾印整個資料庫,即完整備份。
- 每個 MongoDB 伺服器一個 Mongodump 串流
- 每個 BoostFS 外掛程式最多 63 個串流
更多命令選項 boostfs mount 來自《為 Windows 和 Linux 配置和使用 BoostFS 指南》:
|
選項 |
說明 |
|
|
允許掛接 BoostFS 以外的用戶端系統上的使用者。 預設值:Fals 擁有者 |