MongoDBはMongoDB 8.0の一般提供を発表し、大幅なパフォーマンス向上と新機能を導入した。ハイライトは、組み込みのシャーディング設定サーバー、クエリ可能な暗号化の拡張サポート、シャードキーを必要とせずにシャード間でコレクションを移動する機能などだ。
MongoDBによると、人気のNoSQLデータベースの最新バージョンは、より高速な再シャーディング、最大36%高速な読み込み、最大56%高速な一括挿入を提供するという。MongoDBのCTOであるJim Scharf氏は、チームがどのようにデータレプリケーション時の同時書き込みを高速化し、時系列データの複雑な集計の高速化を達成したかについて説明している。Scharf氏はこう語る。
チームはMongoDB 8.0でアーキテクチャの最適化を行い、メモリ使用量とクエリー時間を大幅に削減し、バッチ処理を以前のバージョンよりも効率化しました。
Scharf氏によると、オープンソースの仕様とプログラムスイートであるYahoo! Cloud Serving Benchmark(YCSB)を使って典型的なウェブアプリケーションのさまざまなベンチマークを実行したところ、MongoDB 8.0では全体として32%の性能向上が見られたという。Scharf氏はこう付け加える。
当社の内部ビルドシステムは、当社のソフトウェア開発者が毎日使っており、MongoDBの上に構築されています。MongoDB 8.0にアップグレードしたところ、クエリーレイテンシが約75%低下しました。
出典:MongoDBブログ
誰もがパフォーマンスの向上に納得しているわけではない。以前のバージョンでのパフォーマンス低下を指摘し、Perconaのリードデータベースエンジニア、Vinicius Malvestio Grippa氏は次のようにコメントしている。
これは良いニュースだが、まだ興奮しすぎないようにしましょう。MongoDB 7.0がスピードの記録を塗り替えたわけではないことを考えると、MongoDB 6.0や5.0(そう、5.0のEOLが目前に迫っていることは知っています)と比べてどうなのか見てみたいです。データベースに関しては一定の傾向があります。新しいバージョンになればなるほど、機能が増え、パフォーマンスは落ちます(MySQLも同じです)。
もうひとつの改良点はセキュリティで、新しい認証オプション、標準化されたセキュリティログ、暗号化されたデータのクエリ機能の強化などだ。Queryable Encryption機能により、開発者はクライアント側でデータを暗号化し、暗号化されたデータとしてMongoDBデータベースに保存し、この暗号化されたデータに対してクエリを実行して処理できる。MongoDBの製品マーケティングリーダーであるScott Amerman氏と、MongoDB製品管理シニアディレクターのCristopher Stauffer氏はこう書いている。
組織は、ネットワーク経由のトランジット、保存されている静止状態、クエリや処理のための使用中など、データのライフサイクル全体を通してデータを保護する必要があります。しかし、照会や処理中にデータを暗号化することは困難であり、悪意のある行為者によってデータが暴露されたり、流出したりする可能性があります。
MongoDBは、より簡単な水平スケーリングとシャーディングの改善により、可用性を高めている。設定やセットアップを減らすことで、シャード間でより高速なデータ分散を可能にしている。新バージョンはコミュニティから好評で、Arab Bankのリードデータベース管理者、Jerwin Roy氏は次のようにコメントしている。
Mongodb8.0がリリースされ、パフォーマンスが顕著に改善されました。ぜひ試してみるべきです。私のお気に入りは、アグリゲーションの改善と、コスト削減のためのコンフィグサーバーの組み込みです。
MongoDBの最新バージョンはSSPLライセンスでリリースされ、MongoDB Atlas、オンプレミス、クラウド環境でデプロイできる。