データモデル
CData ODBC Driver for Elasticsearch は、Elasticsearch エンティティをリレーショナルテーブル、ビュー、およびストアドプロシージャにモデル化します。
テーブル
テーブル定義は動的に取得されます。接続すると、本製品 はElasticsearch に接続し、スキーマ、テーブルのリストおよびテーブルのメタデータをElasticsearch REST サーバーをクエリすることで取得します。SQL での検索 では、テーブルが動的に取得される方法を詳細に説明します。
ビュー
Views are created from Elasticsearch aliases and the definitions are dynamically retrieved. When you connect, the 本製品 connects to Elasticsearch and retrieves the list of views and the metadata for the views by querying the Elasticsearch REST server.Views are treated in a similar manner to Tables and thus exhibit similar behavior. There are some differences in the background though which are a direct result of how aliases work within Elasticsearch. (Note: In the following description, 'alias', 'index', 'type', and 'field' are referring to the Elasticsearch objects and not directly to anything within the 本製品).
Views (aliases) are tied to an index and thus span all the types within an index. Additionally aliases can span multiple indices. Therefore you may see an alias (view) listed multiple times under different schemas (index). When querying the view, regardless of the schema specified, data will be retrieved and returned for all indices and types associated with the corresponding alias. Thus the generated metadata will contain a column for each field within each type of each index associated with the alias.
SQL での検索 では、ビューが動的に取得される方法を詳細に説明します。
The ModifyIndexAliases stored procedure can be used to create index aliases within Elasticsearch.
In addition to the Elasticsearch aliases, an '_all' view is returned which enables querying the _all endpoint to retrieve data for all indices in a single query. Given how many indices and documents the _all view could cover, certain queries agains the '_all' view could be very expensive. Additionally, for scanning for table metadata, as governed by RowScanDepth, will be less accurate for '_all' views that cover very large or very heterogenous indices. See 自動スキーマ検出 for more information about this.