このトピックでは、ApsaraDB for MongoDBのMongoDB 6.0の新機能と最適化について説明します。
クイックプレビュー
MongoDB 6.0の新機能と最適化の詳細については、「MongoDB 6.0のリリースノート」をご参照ください。
クエリ可能な暗号化
クエリ可能な暗号化は、パブリックプレビューでのみ使用できます。 本番環境では使用しないことを推奨します。 プレビューリリースの詳細については、「MongoDBリリースQueryable Encryption preview」をご参照ください。
MongoDB 6.0はクエリ可能な暗号化を提供します。これにより、ユーザーはクライアント側から機密データを暗号化し、データベースサーバー側で完全にランダム化された暗号化データとしてデータを保存し、暗号化データに対して表現クエリを実行できます。
クエリ可能な暗号化では、クライアントのみが機密データのプレーンテキストを取得できます。 key Management Service (KMS) から取得した暗号化キーを含むクエリがサーバーに送信されると、サーバーはクエリを処理し、暗号文で応答を返します。 そして、クライアントは、暗号鍵を用いてレスポンスを復号し、平文で表示する。
Queryable暗号化は、次の機能を提供します。
クライアント側から機密データを暗号化し、クライアントのみが暗号化キーを取得できるようにします。
データの送信、保存、使用、監査、バックアップなど、データライフサイクル全体でデータを暗号化します。
クライアントは、暗号化されたデータに対して、同等性、範囲、プレフィックス、サフィックス、部分文字列クエリなどの表現クエリを実行できます。
データを保護します。 クライアントへのアクセスが許可されているアプリケーションと、暗号化キーへのアクセス権限を持つユーザーのみが、平文でデータを取得できます。
軽量アプリケーション開発を許可します。 Queryable暗号化は、開発者のデータセキュリティとコンプライアンスに関する懸念を排除する包括的な暗号化ソリューションを提供します。
機密データを保存するAlibaba Cloudユーザーのセキュリティ上の懸念を軽減します。
クエリ可能な暗号化の詳細については、「MongoDBがクエリ可能な暗号化のプレビューをリリース」をご参照ください。
クラスター間同期
MongoDBは、mongoimport、mongoexport、mongodump、mongorestoreなどのツールを使用して、同種 (MongoDBデータベース間) および異種 (他のデータベースとMongoDBデータベース間) の同期をサポートします。 ただし、これらのツールには限界があります。
MongoDB 6.0にmongosyncツールが導入され、ApsaraDB for MongoDBインスタンス間の継続的かつ単方向のデータ同期を提供します。 mongosyncツールを使用すると、同期プロセスをリアルタイムで管理および監視できます。 このプロセスでは、同期タスクを開始、停止、再開、または反転できます。
mongosyncの詳細については、MongoDB Tools Freeページの「MongoDB Cluster-to-Cluster Sync Download」セクションを参照してください。
時系列コレクション
時系列コレクションは、MongoDB 5.0でリリースされた新機能です。 この機能は、主に時系列データ分析を実行するために使用されます。 リリース以来、機能は継続的に更新されています。 次の表に、機能の更新レコードを示します。
Version | 説明 |
MongoDB 5.0 | この機能は初めてリリースされます。 |
MongoDB 5.1 | シャーディングは、データ配信をサポートするために導入されます。 |
MongoDB 5.2 | ストレージ使用量を減らすために、コラム圧縮が導入されます。 |
MongoDB 5.3 | ギャップ充填および高密度化は、時系列データ分析における欠落データポイントを処理するために導入される。 |
MongoDB 6.0 | 時系列コレクションは、インデックス作成、クエリ、およびソートの点で強化されています。
|
ストリームの変更
変更ストリームは、変更データキャプチャ (CDC) をサポートするためにMongoDB 3.6でリリースされたコア機能です。 変更ストリームにより、データベースの変更をリアルタイムで取得して、データ同期ミドルウェアに依存せずにイベント駆動型アプリケーションまたはシステムを作成できます。
次の表に、変更ストリーム機能の更新レコードを示します。
Version | 説明 |
MongoDB 3.6 |
|
MongoDB 4.0 |
|
MongoDB 4.2 |
|
MongoDB 5.1 |
|
MongoDB 5.3 | 孤立したドキュメントの更新は、チャンク移行中にサポートされます。 |
MongoDB 6.0 |
|
集約
集計機能を使用すると、複数のドキュメントを処理して計算結果を返すことができます。 単一の集計パイプラインで複数の演算子を使用して、複雑なデータ処理パイプラインを作成し、データを取得および分析できます。 MongoDB 6.0は、集計機能に次の最適化を提供します。
シャードクラスターインスタンスの
$lookupと$graphLookupをサポートします。結合のための
$lookupのサポートを改善します。グラフトラバーサルのための
$graphLookupのサポートを改善します。$lookupのパフォーマンスを最大100倍改善します。
$lookupと $graphLookupの詳細については、「 $lookup (aggregation) 」と「 $graphLookup (aggregation) 」をご参照ください。
クエリ
$maxN、$topN、$minN、$bottomN、$lastN、$sortArrayなどの演算子が追加されます。 オペレーターを使用すると、コンピューティングにデータベースを使用して、ビジネスアプリケーションの負担を軽減できます。
演算子の詳細については、「集計パイプライン演算子」をご参照ください。
柔軟性
MongoDB 6.0は、弾力性を向上させるための次の新機能と最適化を提供します。
データチャンクのデフォルトサイズを64 MBから128 MBに更新します。 これにより、データ移行の頻度が減り、ネットワークとルーティングのオーバーヘッドが減ります。
次の機能を提供する
configureCollectionBalancingコマンドをサポートします。異なるシャードテーブルに対して異なるチャンクサイズをサポートします。
たとえば、超大規模なシャードテーブルの場合はチャンクサイズを256 MBに設定し、均等なデータ分散を必要とする小規模なシャードテーブルの場合はチャンクサイズを64 MBまたは32 MBに設定できます。
シャードコレクションの自動デフラグをサポートします。
configureCollectionBalancingコマンドを実行して、自動デフラグを設定できます。 設定が完了したら、compactコマンドを実行してディスクフラグメントを管理する必要がなくなります。 これにより、ディスク領域の使用量が削減されます。
説明configureCollectionBalancingコマンドの詳細については、「configureCollectionBalancing」をご参照ください。
セキュリティ
MongoDB 6.0は、クライアント側フィールドレベル暗号化 (CSFLE) 機能を最適化します。 最適化後、CSFLEは、KMIP (Key Management Interoperability Protocol) 準拠のキープロバイダーで利用可能になります。 つまり、MongoDBは、ローカルのKeyfileベースのキー管理サービスに加えて、KMIPを使用してサードパーティのキー管理デバイスもサポートします。 これにより、セキュリティが強化される。
CSFLEは、特にデータ移行シナリオで、機密データの管理に広く使用されています。