FAQ: MongoDB Connector for BI
項目一覧
- BI Connector のクラウドホスト型バージョンはありますか。
- BI Connectorでの認証方法を教えてください。
- MongoDB をアップグレードする際、BI Connector についてどのような考慮事項を考慮する必要がありますか。
- BI Connector はデータを保存しますか。
- クエリはどのように処理されるか?
- DRDL 型の定義と互換性のないデータをスキップするにはどうすればよいですか。
- BI Connector で MongoDB ビューを使用できますか。
- DDL 用の構文検証ツールはありますか。
- BI Connector は日付をどのように処理しますか。
- BI Connector で TLS/SSL を使用するにはどうすればよいですか?
- SQL
EXPLAIN
関数は使用できますか。
BI Connector のクラウドホスト型バージョンはありますか。
では 用のMongoDBConnector business intelligenceMongoDB Atlasをホストできます。Atlas がホストする BI Connector を有効にして接続する方法については、「 BI Connector for Atlas 経由で接続 」を参照してください。
BI Connectorでの認証方法を教えてください。
バージョン 2.0 で変更 : バージョン 2.0より前では、BI Connector は独自の認証情報セットを保存していました。
MongoDB Connector for BI の古いリリースを使用している場合は、 BI Connector をオンプレミスにインストールする の手順に従って、 2.0にアップグレードする必要があります。
認証を使用して MongoDB 配置に接続する場合、その配置に構成されているユーザーとロールとして認証できます。
認証ソースとメカニズムを指定する方法の詳細については、「認証」を参照してください。
MongoDB をアップグレードする際、BI Connector についてどのような考慮事項を考慮する必要がありますか。
MongoDB 配置をアップグレードする前に、 --mongo-versionCompatibility
オプションを MongoDB の現在インストールされているメジャーリリース シリーズに設定します(例: 3.4
。 アップグレードが完了したら、 オプションを使用せずに再起動するか、新しく更新されたメジャー リリースmongosqld
--mongo-versionCompatibility
シリーズに設定します。
注意
DRDL スキーマ ファイルを使用して BI Connector を起動する場合に新しく導入されたBSON Type を使用し始める場合は、アップグレード後にスキーマ ファイルを更新する必要があります。
MongoDB 3.4では10 進数の BSON 型が導入されています。 MongoDB 3.2から MongoDB 3.4にアップグレードし、スキーマ ファイルにfloat64
値(MongoDB のdouble
型にマップされる)が含まれている場合は、新しいdecimal
の使用を開始した後、DRDL ファイルを更新する必要があります型。
BI Connector はデータを保存しますか。
BI Connector インスタンスは、SQL クエリのみを MongoDB クエリに変換します。 自体はデータを保存しません。
クエリはどのように処理されるか?
BI Connector は集計式 を構築します。
mongosqld
では常に集計allowDiskUse
オプションが有効になります。
BI Connector は、サポートされている一部の SQL 構造を同等の集計にマップすることはできません。 この場合、BI Connector はそれらの構築をメモリ内で実行します。
DRDL 型の定義と互換性のないデータをスキップするにはどうすればよいですか。
MongoDB ビューの使用
MongoDB 3.4では、互換性のないデータをフィルタリングするために使用できる読み取り専用ビューが導入されています。
たとえば、 test
データベースに、 grades
コレクションのgrade
フィールドに数値を含むドキュメントのみを含むビューを作成できます。
db.runCommand( { create: "numericGrades", viewOn: "grades", pipeline: [ { "$match": { "grade": { "$type": "number" } } } ] } )
次に、 mongodrdl
を使用して、コレクションと同様にこのビューからスキーマを生成できます。
mongodrdl -d test -c numericGrades
CRDL フィルターの使用
コレクション内のドキュメントにフィールドの異なるデータ型が含まれている場合は、特定のデータ型をフィルタリングできます。 これを実現するには、$match
DRDL テーブル定義のパイプラインの先頭に ステージを含めることができます。
たとえば、 grade
フィールドに数値を含むドキュメントのみを検索するには、次のパイプライン ステージを使用します。
"$match": { "grade": { "$type": "number" } }
unwinding
さまざまなデータ型を含む配列フィールドが である場合、特定のデータ型の配列をフィルタリングするには、 の後に$match
$unwind
ステージを配置します。
BI Connector で MongoDB ビューを使用できますか。
はい。 BI Connector は、ビューを他のコレクションと同様に扱います。 BI Connector でビューを使用する方法の詳細については、「 MongoDB ビューを使用したスキーマの管理 」を参照してください。
DDL 用の構文検証ツールはありますか。
DDL ファイルは YAML を使用します 構文を使用します。https://YAML-online-parser.appspod.com/ などの任意の YAML バリデーターは、DRDL ファイルをチェックするのに役立ちます。
BI Connector は日付をどのように処理しますか。
BI Connector は、 BSON 日付データをSQL datetime
型にマッピングして正しく処理します。 例:
db.data.save({ date: new Date() })
日付データを string として保存すると、BI Connector はそれを日付としてではなく string として扱います。 たとえば、BI Connector は次の内容を string として扱います。
db.data.save({ date: '32-FEB-2015' })
BI Connector で TLS/SSL を使用するにはどうすればよいですか?
mongosqld
と MongoDB 配置間の接続には、SQL クライアントとmongosqld
間の接続とは別に構成された TLS/SSL があります。
MongoDB へのmongosqld
の接続
接続している MongoDB インスタンスがTLS/SSLを使用する場合は、mongosqld
に--mongo-ssl
オプションを指定します
以下に例を挙げます。
mongosqld --schema=schema.drdl --mongo-ssl
TLS/SSL CA ルート証明書を指定するには、 --mongo-sslCAFile
オプションを使用します。 クライアント証明書を指定するには、 --mongo-sslPEMKeyFile
オプションを使用します。 例:
mongosqld --schema=schema.drdl \ --mongo-ssl \ --mongo-sslCAFile=/certs/ca.pem \ --mongo-sslPEMKeyFile=/certs/mongodb_client.pem
クライアントを に接続 mongosqld
TLS/SSL CA ルート証明書を指定するには、 --sslCAFile
オプションを使用します。 クライアント証明書を指定するには、 --sslPEMKeyFile
オプションを使用します。 例:
mongosqld --schema=schema.drdl \ --sslCAFile=/certs/ca.pem \ --sslPEMKeyFile=/certs/mongosql_server.pem
SQLEXPLAIN
関数は使用できますか。
MySQL shell など、SQL ステートメントを直接発行できる SQL クライアントを使用している場合は、クエリの前にEXPLAIN
を付けて、クエリの実行方法に関する情報を取得できます。 EXPLAIN
は、クエリを実行したり結果を返したりせずに、BI Connector が MongoDB に送信する完全な集計操作を返します。 EXPLAIN
は、特定の SQL クエリが MongoDB クエリ言語にどのように変換されるかを正確に知りたい場合に役立ちます。