JSONデータ型の個々のフィールドに対してクエリできますか?
{"user_id": 123} のようにフィールドに直接アクセスするには、ドット記法を使用できます。
{"address": { "city": "San Francisco", "state": "CA" }} のようなネストされたオブジェクト内のフィールドに直接アクセスするには、^ 演算子を使用します:
CAST 関数または :: 構文を使って、フィールドを適切な型に変換します。
ClickHouse でネストされた MongoDB ドキュメントをフラット化するにはどうすればよいですか?
- 通常のビュー: 通常のビューを使用して、フラット化ロジックをカプセル化します。
- materialized view: 小規模なデータセットでは、
FINALmodifier を使用するリフレッシュ可能な materialized view を使って、定期的にデータをフラット化し、重複を排除できます。大規模なデータセットでは、FINALを使わないインクリメンタルmaterialized view を使用してデータをリアルタイムでフラット化し、その後クエリ時に重複排除することを推奨します。 - クエリ時アクセス: フラット化する代わりに、ドット記法を使用してクエリ内でネストされたフィールドに直接アクセスします。
パブリックIPを持たない、またはプライベートネットワーク内にあるMongoDBデータベースに接続できますか?
MongoDB データベースからデータベース/テーブルを削除するとどうなりますか?
MongoDB CDC コネクタはトランザクションをどのように処理しますか?
resume of change stream was not possible, as the resume point may no longer be in the oplog. エラーはどのように対処すればよいですか?
レプリケーションはどのように管理されますか?
どの read preference を使用すべきですか?
secondaryPreferred を使用することを推奨します。インジェストのレイテンシを最適化したい場合は、primaryPreferred を使用することを推奨します。詳しくは、MongoDB のドキュメントを参照してください。
MongoDB ClickPipe は Sharded Cluster に対応していますか?
MongoDB ClickPipe は Amazon DocumentDB をサポートしていますか?
MongoDB ClickPipe は PrivateLink をサポートしていますか?
ReadPreference に従うために、レプリカセットの検出が正常に完了している必要があります。そのため、MongoDB クライアントがレプリカセット接続を正常に確立し、接続先ノードがダウンした場合に別のノードへ切り替えられるよう、クラスター内のすべてのノードに対して PrivateLink を設定する必要があります。
クラスター内の単一ノードに接続したい場合は、ClickPipes の設定時に接続文字列に /?directConnection=true を指定することで、レプリカセットの検出をスキップできます。この場合の PrivateLink の設定は、単一ノードのリレーショナルデータベースの場合と同様で、PrivateLink を利用する最も簡単な方法です。
レプリカセット接続の場合、MongoDB 向け PrivateLink は VPC リソース または VPC エンドポイントサービス のいずれかで設定できます。VPC リソースを使用する場合は、GROUP リソース構成に加えて、クラスター内の各ノードごとに CHILD リソース構成を作成する必要があります。VPC エンドポイントサービスを使用する場合は、クラスター内の各ノードごとに個別の Endpoint Service (および個別の NLB) を作成する必要があります。
詳細については、ClickPipes 向け AWS PrivateLink のドキュメントを参照してください。サポートが必要な場合は、ClickHouse Support までお問い合わせください。