Cmdlets for Elasticsearch

Build 20.0.7654

高度な設定

NoSQL テーブルへのアクセス

本製品 は、高度に設定可能な自動スキーマ検出 を実装しています。次のセクションでは、本製品 のデフォルトと、さらにカスタマイズする方法について説明します。

ネスト化されたJSON のフラット化

デフォルトでは、本製品 はオブジェクトのプロパティに基づいてカラムを投影します。これにはオブジェクトにネストされたオブジェクトも含みます。配列はデフォルトでJSON 文字列として返されます。次のプロパティを使って、配列にネストされたオブジェクトを含む配列のエレメントにアクセスできます。

  • FlattenArrays:このプロパティを、カラム値として返す配列エレメントの数に設定します。このプロパティをFlattenObjects とともに使用して、配列にネストされたオブジェクトのプロパティを抽出することもできます。
  • FlattenObjects:デフォルトではtrue です。つまり、オブジェクトおよびネストされたオブジェクトのプロパティはカラムとして返されます。FlattenArrays を設定すると、指定した配列エレメントにネストされたオブジェクトもフラット化され、カラムとして返されます。

ネスト化されたオブジェクトにアクセスするその他のメカニズムの詳細は、SQL での検索 を参照してください。

複数のインデックスのクエリ

Multiple indices can be queried by executing a query using one of the following formats:

  • Query all indices via the _all view:SELECT * FROM [_all]

  • Query a list of indices:SELECT * FROM [index1,index2,index3]

  • Query indices matching a wildcard pattern:SELECT * FROM [index*]

Note, index lists can contain wildcards and indices can be excluded by prefixing an index with '-'.For example:SELECT * FROM [index*,-index3]

データアクセスのファインチューニング

次のプロパティを使って、Elasticsearch API 機能および本製品 のストラテジーをさらに制御できます。

  • GenerateSchemaFiles:このプロパティを使用すると、例えばテーブルメタデータを、カスタマイズしやすい静的スキーマファイルに永続化したり、カラムのデータ型の変更を永続化したりできます。このプロパティを"OnStart" に設定すると、接続時にデータベース内のすべてのテーブルのスキーマファイルを生成できます。生成されるスキーマは、自動スキーマ検出 の設定に使用する接続プロパティに基づいています。

    あるいは、"OnUse" に設定すると、クエリに基づいてスキーマを生成できます。

    生成されたスキーマファイルを使用するには、Location プロパティをスキーマを有するフォルダに設定します。

  • QueryPassthrough:このプロパティを使用すると、SQL の代わりにElasticsearch のSearch DSL 言語を使用できます。
  • RowScanDepth:このプロパティは、テーブルメタデータを生成する際にカラムのデータ型を検出するためにスキャンされる行数を指定します。このプロパティは、自動スキーマ検出 から生成された動的スキーマを使用している場合、またはQueryPassthrough を使用している場合に適用されます。

パフォーマンスのファインチューニング

  • PageSize:このプロパティを使用すると、リソースのプロビジョニングに基づいてパフォーマンスを最適化できます。Paging has an impact on sorting performance in a distributed system, as each shard must first sort results before submitting them to the coordinating server.

    By default, the 本製品 requests a page size of 10,000.This is the default index.max_result_window setting in Elasticsearch.

  • MaxResults:This property sets a limit on the results for queries at connection time, without requiring that you specify a LIMIT clause.By default, this is the same value as the index.max_result_window setting in Elasticsearch.

    If you are using the Scroll API, set ScrollDuration instead.

  • ScrollDuration:This property specifies how long the server should keep the search context alive.Setting this property to a nonzero value and time unit enables the Scroll API.

Firewall またはProxy 経由の接続

Windows システムプロキシを介して接続するには、認証および接続に必要な接続プロパティのみ設定します。他のプロキシに接続するには、ProxyAutoDetect をfalse に設定し、次を設定します。

HPPC プロキシへの認証には、ProxyServerProxyPort に加えてProxyAuthSchemeProxyUser、およびProxyPassword を設定します。

他のプロキシに接続するには、FirewallTypeFirewallServer、およびFirewallPort を設定します。接続をトンネルするには、FirewallType をTUNNEL に設定します。 SOCKS プロキシへの認証には、FirewallType をSOCKS5 に設定します。さらに、FirewallUser およびFirewallPassword を指定します。

カスタムURL

If a custom URL is required, using the form [Server]:[Port]/[URLPathPrefix], the 'URLPathPrefix' value can be specified via the Other property.For example:URLPathPrefix=myprefix

The 本製品 will use the specified path prefix to build the URL required for connecting to the Elasticsearch API endpoints.

接続のトラブルシューティング

クエリ実行からHTTP 呼び出しまでの本製品 アクティビティを表示するには、Logfile およびVerbosity を使用します。以下の一般的な接続エラーの例は、これらのプロパティを使ってより多くのコンテキストを取得する方法を示します。エラーの原因の追跡やパフォーマンス問題を回避する方法については、弊社サポートチームまでお問い合わせください。

  • 認証エラー:通常、認証エラーの詳細を取得するには、LogfileVerbosity 4 で記録する必要があります。
  • クエリのタイムアウト:応答に時間がかかり過ぎるサーバーでは、本製品 のクライアント側のタイムアウトを超えます。大抵の場合、Timeout プロパティをより高い値に設定すると、接続エラーを回避することができます。他のオプションとして、このプロパティを0 に設定してタイムアウトを無効にする方法があります。Verbosity を2 に設定すると、どこに時間がかかっているかを見ることができます。

Copyright (c) 2020 CData Software, Inc. - All rights reserved.
Build 20.0.7654