MongoDB 8.0 は 2024年10月31日にリリースされた最新のメジャーバージョンです。MongoDB の30ヶ月サポートポリシーにより、EOL は 2029年10月31日です。MongoDB 7.0 からの移行先として公式に推奨されており、パフォーマンス・スケーラビリティ・セキュリティの各面で大幅な改善が施されています。本記事では MongoDB 8.0 のサポートスケジュールと MongoDB 7.0 からの移行手順を解説します。
MongoDB 8.0 のサポート期限一覧
| バージョン | リリース日 | EOL日 | ステータス |
|---|---|---|---|
| MongoDB 6.0 | 2022-07-19 | 2025-07-31 | EOL済み |
| MongoDB 7.0 | 2023-08-31 | 2027-08-31 | サポート中 |
| MongoDB 8.0 | 2024-10-31 | 2029-10-31 | サポート中(最新) |
MongoDB のサポートポリシー
MongoDB の GA(Generally Available)リリースは、リリース日から 30ヶ月間サポートされます。MongoDB 8.0 はリリース日が 2024年10月31日のため、EOL は 2029年10月31日となります。
基本情報
- リリース日: 2024年10月31日
- 最新バージョン: 8.0.21
- EOL日: 2029年10月31日
- 後継製品: MongoDB 9.x(未発表)
- 主な新機能: コレクション移動(
moveCollection)・並列インデックスビルドの高速化・Queryable Encryption の拡張・バルク書き込み API の改善・メモリ使用量の最適化
MongoDB 8.0 の主要な改善点
パフォーマンスの向上
MongoDB 8.0 では WiredTiger ストレージエンジンのメモリ管理が改善され、高負荷環境でのスループットが向上しています。特に書き込み集中型ワークロードでの遅延が改善されており、ベンチマークでは MongoDB 7.0 比で最大 30% のパフォーマンス改善が報告されています。
コレクション移動(moveCollection)
シャードクラスター環境で、コレクション全体を別のシャードに移動する moveCollection コマンドが追加されました。データの再分散や障害時の負荷分散を、ダウンタイムなしで実施できるようになりました。
バルク書き込み API の改善
新しい bulkWrite コマンドが追加され、複数コレクションに対するバルク操作を1回のリクエストで実行できるようになりました。従来の collection.bulkWrite() は単一コレクションのみ対象でしたが、MongoDB 8.0 ではクロスコレクション操作が可能です。
MongoDB 7.0 からの移行が必要な理由
MongoDB 7.0 は 2027年8月31日にサポートが終了します。8.0 は現行の推奨バージョンであり、7.0 のサポート終了前に計画的な移行が推奨されます。また、MongoDB Atlas はデフォルトで最新バージョンへの移行を推奨しています。
1. セキュリティパッチの継続
EOL 後の MongoDB 7.0 にはセキュリティパッチが提供されなくなります。MongoDB 8.0 は 2029年10月まで継続的にパッチを受け取ることができます。
2. ドライバーの最新対応
MongoDB の公式ドライバー(PyMongo・Java Driver・Node.js Driver・Go Driver 等)は最新バージョンとの組み合わせで優先的にテスト・最適化されます。EOL バージョン向けの修正は縮小されます。
3. Atlas のサポート制限
MongoDB Atlas はサポートが終了したバージョンのクラスターに対して強制アップグレードを実施します。計画外の強制移行を避けるため、事前に 8.0 への移行を完了させることを推奨します。
MongoDB 7.0 → 8.0 移行時の注意点
FCV(featureCompatibilityVersion)の管理
アップグレード前に FCV が 7.0 に設定されていることを確認してください。アップグレード後、新機能を有効化するタイミングで FCV を 8.0 に更新します。
// 現在の FCV を確認
db.adminCommand({ getParameter: 1, featureCompatibilityVersion: 1 })
// アップグレード後に FCV を 8.0 に設定
db.adminCommand({ setFeatureCompatibilityVersion: "8.0" })
レプリカセットのローリングアップグレード
Secondary ノードを順次アップグレードし、最後に Primary をステップダウンさせてからアップグレードします。各ノードのアップグレード後に rs.status() でレプリカセットの状態が正常であることを確認してください。
バックアップの事前取得
アップグレード前に mongodump または Atlas スナップショットでフルバックアップを取得してください。MongoDB 8.0 で保存されたデータを 7.0 にダウングレードすることはできません。
物理サーバーの更新か、マネージドサービスへの移行か
MongoDB 7.0 の EOL を機に、セルフホストから MongoDB Atlas またはクラウドマネージド DB への移行を検討する企業も増えています。フルマネージドサービスでは、パッチ適用・バックアップ・スケーリングが自動化されます。