2017-02-22 21 views
1

現在、私はJDBCとlogstashを使用してSQLデータベースをElasticsearchにインポートしています。私は3つのテーブルを持っています。私は同じインデックスの下に置いていて、テーブルごとに異なるタイプを使用しています。Kibana - 視覚化で複数のタイプのデータに結合する

ユーザー::{ 'ユーザーID'、 'ユーザー名'}

アカウント:{ 'アカウントID'、 'アカウント名'}

AccountUsers:{説明を簡単にするために、種類とフィールドは、次のようになり'AccountID'、 'UserID'}

アカウントは複数のユーザーを持つことができ、ユーザーは複数のアカウントに所属することができます。木場で何をしようとしているのかは、棒グラフとタイプ 'AccountUsers'(x軸:AccountID、y軸:UserIDの一意のカウント)を使用して、各アカウントに属するユーザーの数を視覚化します。これはうまくいきますが、私はx軸のラベルを 'AccountID'ではなく 'AccountName'にすることをお勧めします。私はいくつかの調査を行っており、これらの 'AccountID'を使用して別のドキュメントタイプ(実際は 'Account')の実際のアカウント名を検索し、その代わりに表示する機能はないようです。誰も私がこれを達成する方法を提案することはできますか?

答えて

1

logstash用のelasticsearchプラグインがあります。これにより、elasticsearchの検索が可能になり、設定ファイルを編集することで 'join'を作成することができます。

0

2つの方法があります。 1.インデックス作成中は、logstashスクリプトで結合クエリを作成し、データを弾性検索にインデックス付けします。

2.Kibiツールは、キバナに似ているSIREnソリューションから使用できます。そこでは、elasticsearchで結合を実行できます。

+0

私はKibiツールを使用しますが、annoyinglyそれは2.4.xまでのElasticsearchしかサポートしません。また、私はlogstashの文書に参加することが私のケースで実行可能な解決策であるとは確信していませんが、私はそれを調べます。 – reno

+0

UPDATE:最初のメソッドを正常に使用できました。 Logstashでは、私はElasticsearchの既存の他の文書のフィールドを組み合わせて新しい文書を作成することができました。これは役に立ちました:https://www.elastic.co/guide/en/logstash/current/plugins-filters-elasticsearch.html#plugins-filters-elasticsearch-fields。 – reno

関連する問題