Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Elasticsearch workshop 23_sql

950 views

Published on

第23回 Elasticsearch勉強会の資料です。
タイトル:「Elasticsearch SQLで何ができるか整理してみた」

Published in: Engineering
  • Be the first to comment

  • Be the first to like this

Elasticsearch workshop 23_sql

  1. 1. 1Copyright © Acroquest Technology Co., Ltd. All rights reserved. Elasticsearch SQLで 何ができるか整理して見た Acroquest Technology 樋口 慎
  2. 2. 樋口 慎 (Acroquest Technology) ソフトウェアエンジニア/データアナリスト o 主な業務 • 「データ分析・検索システム」構築支援・開発・コンサル o 発表など • JJUG CCC (2016 spring, 2016 fall, 2017 fall) • Data Analytics Showcase • Elasticテクニカルワークショップ twitter:@shin0higuchi 自己紹介 Copyright © Acroquest Technology Co., Ltd. All rights reserved. 2
  3. 3. 目次 Copyright © Acroquest Technology Co., Ltd. All rights reserved. 3 1. Elasticsearch SQLとは? 2. 実際に使ってみる 3. まとめ
  4. 4. Copyright © Acroquest Technology Co., Ltd. All rights reserved. 4 Elasticsearch SQLとは
  5. 5. Elasticsearch SQLとは Copyright © Acroquest Technology Co., Ltd. All rights reserved. 5 1. Elasticsearchに対してSQL Likeなクエリを発行することができる 2. REST APIのエンドポイント、CLI、JDBCなどが提供される 3. X-Pack機能の1つ (Basicで利用可) ※JDBCはPlatinumライセンスが必要 https://www.elastic.co/guide/en/elasticsearch/reference/6.x/xpack-sql.html 4. SQLをElasticsearchのqueryに変換するtranslate APIも提供される
  6. 6. Elasticsearch SQLとは Copyright © Acroquest Technology Co., Ltd. All rights reserved. 6 提供されるコマンドは下記の通り (https://www.elastic.co/guide/en/elasticsearch/reference/6.3/sql-commands.htmlより抜粋)
  7. 7. Copyright © Acroquest Technology Co., Ltd. All rights reserved. 7 実際に使ってみる
  8. 8. 実際に使ってみる(REST API) Copyright © Acroquest Technology Co., Ltd. All rights reserved. 8 • テーブルの一覧を見る (SHOW TABLES) ① indexやaliasの一覧を表示する (_cat/indices 相当) POST /_xpack/sql?format=txt { "query": "SHOW TABLES" } name | type ---------------+--------------- .kibana | BASE TABLE account | BASE TABLE alias | ALIAS my_index | BASE TABLE my_index2 | BASE TABLE リクエスト例 レスポンス例
  9. 9. 実際に使ってみる(REST API) Copyright © Acroquest Technology Co., Ltd. All rights reserved. 9 • columsの一覧を表示する (SHOW COLUMNS, DESCRIBE) POST /_xpack/sql?format=txt { "query": "DESCRIBE account" } column | type ------------------+--------------- @timestamp |TIMESTAMP birthdate |VARCHAR ・・・略・・・ last_name |VARCHAR リクエスト例 レスポンス例 ※Elasticsearchのデータ型との対応は下記を参照。 https://www.elastic.co/guide/en/elasticsearch/reference/6.x/sql-data-types.html index名
  10. 10. 実際に使ってみる(REST API) Copyright © Acroquest Technology Co., Ltd. All rights reserved. 10 • indexの内容を表示する (SELECT) POST /_xpack/sql?format=txt { "query": "SELECT gender, ROUND(MAX(age)) FROM account2 GROUP BY gender" } リクエスト例 field名 Function も利用可 index名
  11. 11. 実際に使って見る(CLI) Copyright © Acroquest Technology Co., Ltd. All rights reserved. 11 • bin/elasticsearch-sql-cli • コマンドライン上で手軽にSQLが叩ける
  12. 12. Copyright © Acroquest Technology Co., Ltd. All rights reserved. 12 デモ
  13. 13. まとめ Copyright © Acroquest Technology Co., Ltd. All rights reserved. 13 • ElastisearchのSQLで色々と試してみた • コマンドは限られており、JOINなど複雑な処理はできない • Elasticsearchのqueryに不慣れな人には便利 • CLIで手早く検索する時にJSONを(ほぼ)書かずに済む
  14. 14. Copyright © Acroquest Technology Co., Ltd. All rights reserved. 14 ご清聴ありがとうございました。 Infrastructures Evolution

×