Elasticlover

Elasticlover

Elastic Stackに関する1週間分のネット情報をまとめるブログです。

今週のElastic News (2018/07/22~2018/07/28)

今週、Elasticについて新たにWEBで観測した情報をまとめます。

なお、様々なバックグラウンドの方が読まれることを考慮して、各記事に試験的に難易度を記載することにしました。完全に独断と偏見に基づく難易度を設定しますので、参考程度にどうぞ。

  • 難易度について
    • ☆☆☆:技術的な内容を含まないニュースなど
    • ★☆☆:Elastic Stack初心者向けの解説、チュートリアルなど
    • ★★☆:Elastic Stackを既に使用している方向け、新機能紹介など
    • ★★★:応用的な内容でElastic Stack以外の特定の領域に対する知識を必要とするもの
      • なお、★★★については、何の理解が必要なのかを補足するようにします
      • その領域について知識があれば、特段難しくないことが多いです

また、各記事における()内は筆者意見です。

今週の注目情報

今週はElasticsearchに関連する勉強会が2つ開催されました。その際の発表資料を紹介します。

第23回Elasticsearch勉強会

What's new in Elastic Stack 6.3

第23回Elasticsarch勉強会で発表した6.3の新機能の紹介スライドです。 Webinarの録画ビデオではデモもありますので、参考にしていただければと。 https://www.elastic.co/jp/webinars/elastic-stack-6-3

  • 難易度:★★☆
  • Elasticさんの大谷さんによるスライドです
    • Elastic Stack6.3の新機能紹介をされています
    • デモはElasticの大輪さんが担当し、KibanaのElastic Map Serviceで日本の都道府県区域に応じたリージョンマップなどを可視化されていました
    • また、今後の勉強会の開催についてはユースケース別かつ毎月開催する可能性があることを仄めかしていました



Elasticsearch workshop 23_sql

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




第23回 Elasticsearch勉強会の発表資料です。 勉強会の詳細はこちら https://www.meetup.com/ja-JP/Tokyo-Elastic-Fantastics/events/252456268/

  • 難易度:☆☆☆
  • NTTテクノクロスの山下 城司さんによるスライドです
    • RSSフィードTwitter検索、Googleアラートの情報をIFTTT経由でDiscordに通知し、Elasticsearchに関する最新情報を一か所に集約する方法を紹介しています
    • そして、その情報をブログにまとめて毎週更新していると…うん、何処かで聞いたような……



【京都開催】Elasticsearch勉強会 #elasticsearchjp

2018年8月2日(木) 19:00: 「京都」で開催します。東京ではないのでご注意ください19時になるとビルの正面入り口のシャッターが下ります。向かって左手の通りにある通用口からお入りください。通用口が閉まっている場合にはインターホンから「801」を呼びだしてください。スピーカー募集中です。興味のある方は、メンバーページの「オーガナイザーへコンタクトする」より連絡か、https://twitte

ちなみに今週には、はてなさんのオフィスをお借りして「Elasticsearch勉強会@京都」を開催されるそうです…が、まだまだ席に余裕がありそうです!

私が京都に居たらぜひ参加したかったのですが…このブログを閲覧されている方で京都近辺在住の方がいらっしゃいましたら、ぜひ参加検討のほど、してみてはいかがでしょうか。




JJUGナイトセミナー「Elasticsearch特集」

Elastic Stackで始めるJavaアプリのパフォーマンス監視 / Intro Elastic Stack and Elastic APM Java

2018/07/25のJJUG ナイトセミナーで使用したスライドになります。 サンプルアプリ、Beats系の設定は以下のGitHubリポジトリで公開してます。 https://github.com/johtani/apm-beats-kubernetes-demo/

  • 難易度:★★☆
  • Elasticの大谷さんによるスライドです
    • Elastic APMJavaエージェントを使用し、k8s上にデプロイしたSpring Bootアプリのパフォーマンス情報を取得する方法を紹介しています
    • また、前半ではJJUGに来られたElastic Stackをまだ知らない方に向けて各種プロダクトの簡易説明を記載しています
    • なお、補足記事「JJUGナイトセミナーで話しました」も書かれているので、こちらも参照ください



はじめてのElasticsearchクラスタ

The First Elasticsearch Cluster 2018-07-25 JJUG ナイトセミナー「Elasticsearch特集」

  • 難易度:★★★
    • Elasticsearchの内部動作に対する理解
  • Acroquest Technologyの束野 仁政さんによるスライドです
    • 前半でElasticsearchのクラスタリングの仕組みを簡単に説明し、後半で「本番運用前にやっておくべきこと」と題して、本番運用での代表的なトラブル事例とその解決策を紹介しています
      • (私は「まさにこんな実践に則した内容が聞きたかった!」と膝を打ちましたが、会場に居たElasticsearchをご存知ない方には、かなりDeep Diveに見えた気がしますw)
    • また、「JJUGナイトセミナーで「はじめてのElasticsearchクラスタ」を発表しました」という記事で発表報告も書かれています






公式ブログ

NEWS

Elastic{ON} Tour 2018: We're Taking the Elasticsearch User Conference on the Road

Join us in one of 30 cities around the world for an Elastic{ON} event tailored to your Elasticsearch journey. Find an event near you. It has been truly humbling to spend time with everyone who has had the chance to attend Elastic{ON}, the Elasticsearch user conference, in San Francisco over the last four years.

  • 難易度:☆☆☆
  • ElasticのCEO、Shay Banonさんによる記事です
    • 今後のElastic{ON}について「年に1回、サンフランシスコでの大きなカンファレンスを開催する代わりに、より多くの(30以上の)国でElastic{ON}Tourを直接開催していく」方針に変更することを公表しています



Welcome Insight.io to the Elastic Team

A note from Shay Banon Today, we welcome another fantastic team to the Elastic family. We are joining forces with Insight.io, creators of a modern source code search platform used by thousands of developers around the world.

  • 難易度:☆☆☆
  • Shay Banon • Chongzhe Li • Fuyao Zhao • Mengwei Dingさんらによる記事です
    • ソースコード検索プラットフォームであるinsight.ioがElasticファミリーにジョインすることを公表しました
      • insight.ioはIDEに搭載されているような(コードジャンプ機能や重複定義の指摘などの)コードインテリジェンス機能をクラウド上のソースコードに対して実行可能なサービスです



ENGINEERING

Elastic Stack 6.3.0 and 6.3.1 May Disable Security for Trial Licenses

If you are currently using a trial license with Elastic Stack 6.2.x or earlier, your X-Pack security functionality may be disabled when upgrading to 6.3.0 or 6.3.1. Previous to version 6.3.0, X-Pack could be downloaded and installed to extend the functionality of the Elastic Stack.

  • 難易度:★★☆
  • Josh Bressersさんによる記事です
    • Elastic Stack 6.2.x以前でX-Packの試用版ライセンスを使用している場合、6.3.0または6.3.1にアップグレードした際、X-Packのセキュリティ機能が無効になるバグがあることを注意喚起しています
    • 回避策
      • バグ対処された6.3.2を使用する
      • その際、elasticsearch.ymlxpack.security.enabled: trueを明示的に記載する必要がある



How to Build Application Search with Ruby on Rails (Sample Code)

When people interact with their computer or phone, often times it looks like this: activate the screen, open the browser, type cryptic strings into an empty search bar, scan the results for a moment, then click on a top result. Search has given tremendous power to Internet users.

  • 難易度:★★★
    • Elastic App Search Serviceに対する理解
    • Ruby on Railsに対する理解
  • Kellen Person • James Ruckerさんらによる記事です
    • Elastic App Search Service(Swiftype App Search)を活用して、Ruby gemを検索するrailsアプリを作成する方法を紹介しています
    • こちらからデモアプリにアクセスできます



RELEASES




Elastic Stack Updates

This Week in Elasticsearch and Apache Lucene - 2018-07-27

Ingest Processors We have recently undertaken an effort to add significant functionality to the ingest node feature of Elasticsearch.

ウェビナー

Prepare and Protect GDPR Data using Elastic Stack

Sabyasachi Gupta, aka Sabby, has been working in the software industry for his entire career. Sabby has performed multiple roles - starting as a Software Engineer and then managing projects to architecting startup products and leading and managing high-performance agile product teams. He has experience in multiple business domains like healthcare, media, airline, financial, and more.




Optimizing your Machine Learning Jobs in Elasticsearch | Elastic

Joining the Elastic team from the Prelert acquisition, Rich has over 20 years experience as a Solutions Architect / Pre-Sales Systems Engineer for software, hardware, and service-based solutions. Rich's technical specialties include: Big data analytics, Machine learning, Anomaly detection, Threat detection, Security Operations, Application Performance Management, Web Applications, and Contact Center Technologies.

  • ElasticのThomas GrabowskiさんとRich Collierさんによるウェビナーです
    • X-Pack Machine Learningの使用方法をNYタクシー乗降データを対象として学ぶ内容になっています
    • (その他、上記では学べない内容として今回のウェビナーでは以下が紹介されています)
      • Saved Searchに対するMachine Learningを実行する(19:27~)
        • 異常値などを取り除いたSaved Searchを作成しておくことで、ETLの面倒さが緩和される
      • 6.2.0から追加されたCalendar Management機能を使って祝日などを設定する(27:12~)
        • これにより、祝日に乗降数が減少する事象を異常ではなくす
      • Time Series Visual Builderのannotationで異常な箇所を表示する(43:10~)



Qiita

Logstashを用いてMS SQL ServerのデータをElasticsearchに登録するための設定方法 - Qiita

目標 Windows環境でSQLServerのデータをkibanaで見えるようにするための環境を構築すること ※kibanaの使い方等は含みません。単純にデータが登録された所までの記事になります。 ## 環境+使用ツール - ...

  • 難易度:★☆☆
  • @yukiqさんによる記事です
    • Windows環境でMS SQL ServerのデータをLogstash経由でElasticsearchに投入する方法を紹介しています



Elasticsearch + KibanaをDocker Composeで動かす - Qiita

Docker Compose`を利用して、`Elasticsearch`を3ノード1クラスタ構成で起動させた - `Kibana`も立ち上げて、`Elasticsearch`と連携させた - `Docker Compose`の設...

  • 難易度:★☆☆
  • @sugikeitterさんによる記事です
    • kuromoji入りのElasticsearchクラスタ3台とKibanaを立ち上げるdocker-composeでデプロイする方法を紹介しています



その他ブログ記事など

日本語

ELKで始めるElasticStack6入門 (Elasticsearch, Kibana, Logstash)

ELKで始めるElasticStack6入門 (Elasticsearch, Kibana, Logstash)

  • 難易度:★☆☆
  • Wedding Parkの菅原さんによる記事です
    • Elasticsearch / Logstash / Kibanaについて入門者向けに基本的なコンセプトと使い方を紹介しています



DockerでElasticSearchを試す1 | ハックノート

DockerでElasticSearchを使って見ます。

  • 難易度:★☆☆
  • ハックノートのtakayasuさんによる記事です
    • Elastic公式ドキュメントに則ってElasticsearchのDockerコンテナを起動する方法を紹介しています



docker-composeでのRails環境にElasticsearchを組み込む - ウェブエンジニア珍道中

dockerを用いたRailsの開発環境に新たにElasticsearhを組み込んだのでまとめます。

  • 難易度:★☆☆
  • id:te-nuさんによる記事です
    • docker-composeでRails環境をデプロイしている場合に、どのようにすればElasticsearch+Kibanaを追加できるか紹介しています



elasticsearch-railsからElasticsearchの設定を変更する方法 - patorashのブログ

Elasticsaerchのインポートを速くしたいと思って現在試行錯誤しているのだけれど、全然速くならなかったので一旦コードを元に戻そうかと思っている。しかし、設定を変更するための仕方を調べるの結構手間取ったので、とりあえずそれだけ残しておく。 Foo.__elasticsearch__.client.indices.put_settings( index: Foo.index_name ...

  • 難易度:★☆☆
  • id:patorashさんによる記事です
    • elasticsearch-railsからElasticsearchのindex設定を変更する方法を紹介しています



英語

Learn How to Perform Load Testing in Elasticsearch - DZone Performance

In this article, we will learn to create and run a load test on Elasticsearch with Apache JMeter™. We will create a search request and monitor the results, the relevance of results and the errors if there are any. We will also mention the most common problems that can be identified by means of stress testing.

  • 難易度:★★★
  • Roman Aladevさんによる記事です
    • JMeterを使用してElasticsearchに負荷リクエストをかける方法を紹介しています



Apache Solr / Elasticsearch: How to Manage Multi-term Concepts out of the Box?

This flash blog post will address a very specific and common problem : how to manage entities/concepts composed by multiple terms in a vanilla Apache Solr/Elasticsearch instance ( no plugins or extensions to install). An Elasticsearch or Apache Solr infrastructure where you cannot install third-party components (e.g. plugins, filters, query parsers).

  • 難易度:★★★
    • Multi-word Synonymsに対する理解
  • ANDREA GAZZARINIさんによる記事です
    • USAやUnited States of Americaなど表記揺れを吸収する仕組みとしてMulti-Word Synonymsを使用する方法を紹介しています
    • (この記事だけでは理解が難しかったので、Definitive GuideのMultiword Synonyms and Phrase Queriesを読むと良いです)



Squeezing performance out of Elasticsearch

Lately my colleague Michał described how he tracked a Java memory leak. Although that problem was completely solved, new complications suddenly appeared on the horizon. As it usually happens, everything started with an alert from our monitoring system which woke me up in the middle of the night.

  • 難易度:★★☆
  • Dorian Sarnowskiさんによる記事です
    • MongoDBからデータを取得し、Elasticsearchへインデクシングするシステムで、ある日からインデクシングに20分かかるようになった、その原因を探求していく内容になっています
      • 数カ月前、インデクシングにかかる時間は2分であり、ドキュメントの数も3~4倍程度にしか増加していないため、20分もかかることはないはずである
      • また、データをストリーミングしていたため、プロセスのどの部分が処理を遅くしているか分からなかった
        • メトリックを見ても、原因は分からない
      • 様々な観点から設定を変更してみたが、最終的に発覚した問題は深いネストを持つインデックス構造にあった
        • 試しに、そのフィールドを登録しないようにしたところ4.5分で登録が完了した
        • 現在は、ネストを削除し、すべてフラットな構造に変更している
    • (物語調で非常に読みやすいです)



A Guide to Deploy Elasticsearch Cluster on Google Kubernetes Engine

This is a simple guide that helps you to deploy Elasticsearch cluster on Google Kubernetes Engine. This guide should be relevant on any Kubernetes cluster with a simple tweak on the persistent volume part. The overall step-by-step is like the following: Enable the persistent volume via Storage Classes.

  • 難易度:★★★
    • k8sに対する理解
    • ただ実行するだけなら★☆☆
  • Bayu Aldi Yansyahさんによる記事です



Deprecation of Compose for Elasticsearch 2.4.6 - IBM Cloud Blog

IBM Cloud Compose will be ending support and hosting of Elasticsearch 2.4.6 and earlier versions over the coming months.

  • 難易度:☆☆☆
  • DJ Walker-Morganさんによる記事です
    • IBMクラウドで提供されるElasticsearchについて2.4.6より以前のバージョン提供を終了するとのことです
      • 2018/07/31:この日以降、2.4.6以前のバージョンのElasticsearchインスタンスを新規作成できなくなる
      • 2018/10/31:この日までに全てのインスタンスを5.x以降にアップグレードする必要あり



Deduplicating documents in Elasticsearch

Overview In this blog post we cover how to detect and remove duplicate documents from Elasticsearch by using either Logstash or alternatively by using custom code written in Python. Example document structure For the purposes of this blog post, we assume that the documents in the Elasticsearch cluster have the following structure.

  • 難易度:★★☆
  • Alexander Marquardtさんによる記事です
    • Logstashのfingerprint filterを使用して既存のインデックス内の重複ドキュメントを取り除く方法を紹介しています
    • また、よりメモリ効率の良い方法としてPythonスクリプトで実現する方法も紹介しています



Remote Query Elasticsearch on Kubernetes

Developing on our local workstations has always been a conceptual challenge for my team when it comes to remote data access. Local workstation-based development of services that intend to connect to a wide range of remote services that may have no options for external connections poses a challenge.

  • 難易度:★☆☆
  • Craig Johnstonさんによる記事です
    • localhostのポートとk8sのポートを繋げる方法を解説しています



Elasticsearch Essential Queries

The following is an overview for querying Elasticsearch. Over the years I have tried to assemble developer notes for myself and my team on a variety of platforms, languages and frameworks, a type of cheat-sheet but with context, not a comprehensive how-to, but a decent 15-minute overview of the features we are most likely to implement in a given iteration.

  • 難易度:★☆☆
  • 引き続き、Craig Johnstonさんによる記事です
    • Elasticsearchの各種REST APIに対する操作方法を紹介しています
      • インデックスの削除/作成/更新
      • 検索
        • Range / Filter
      • Aggregation
        • count / average / max / min / percentile / percentile rank / histgram



Creating An Elasticsearch Cluster | Elasticsearch Deep Dive | Linux Academy

Wanting to dive deep into Elasticsearch? Check out our in-depth, hands-on course on Elasticsearch Deep Dive at: https://linuxacademy.com/devops/training/course/name/elastic-certified-engineer =============== The Elasticsearch Deep Dive course will give you an understanding on the core functionality of Elasticsearch. Get hands-on experience with installing, indexing and querying through 12 hands-on labs.




nGram filtering for Elasticsearch in Drupal 8

A powerful content search can be built in Drupal 8 using the Search API and Elasticsearch Connector modules. Out of the box, you get the ability to select which entities, fields, and properties are indexed into an Elasticsearch index. You also have the ability to tailor the filters and analyzers for each field from the admin interface under the "Processors" tab.

  • 難易度:★★★
  • BLUEOAKINTERACTIVEさんによる記事です
    • Drupal 8とElasticsearchを連携させる際にn-gram filterを設定する方法を紹介しています



Install ELK as Centralized Logfile Management Server on CentOS 7

This tutorial explains how to setup a centralized logfile management server using ELK stack on CentOS 7. As anyone who not already know, ELK is the combination of 3 services: ElasticSearch, Logstash, and Kibana. To build a complete centralized log management server using this concept, it would require to have each of this package as it's serve a different purpose and related to each other.

  • 難易度:★☆☆
  • shahril bin kamaruzzamanさんによる記事です
    • CentOS 7にElasticsearch / Logstash / Kibanaをインストールする方法を紹介しています



日本語、英語以外の言語

Searching Images in Elasticsearch using Luminoth




今週は以上です。

"No matter where you go, everybody's elastic."