タグ

elasticsearchに関するji_kuのブックマーク (40)

  • Elasticsearchを用いた日本語検索システムの理論と設定

    連載は、対話インターフェースを利用して新しい形の検索システムを体験してもらうことを目的としています。今回は日語検索システムでよく用いられるElasticsearchを紹介します。Elasticsearchは大規模なデータに対しても適用可能な検索機能を提供している全文検索エンジンです。特徴としてスケーラブル、検索速度の速さ、検索結果の分析のしやすさ、開発者にとって使いやすいRESTfulなAPIが挙げられます。今回の記事はElasticsearchを用いた日語検索システムの仕組みから設定の部分までを記述し、次回の記事で実際に動作させてもらいます。 連載の内容 連載で紹介予定の内容は次のとおりです。 Step1:Elasticsearchを用いた日語検索システム 対話型の検索システムを作成するためのStep1として、Elasticsearchを用いた日語検索システムの構築方法を紹

    Elasticsearchを用いた日本語検索システムの理論と設定
  • 知識ゼロからElasticsearchを実践で使えるようになろう! - $shibayu36->blog;

    以前少しだけElasticsearchを触った時に、自分流Elasticsearch入門 - $shibayu36->blog; というElasticsearchに入門した時のメモをまとめていた。しかし、その頃はElasticsearchを使って完全に一人で一つの機能を作るというところまではいけなかった。 最近になってまたElasticsearchを一から導入する仕事をすることになった。この時以前自分がまとめた記事を読みながらやっていたのだが、実践で一から導入するためにはこの記事だけでは知識が足りなかった。 そこで、前の記事の知識をベースに、一から導入するために少しずつ学んでいき、自分のブログにまとめるなどのことをしてきたので、今回はその締めくくりとして、知識ゼロからElasticsearchを使えるようになるために学習したことについて書いておきたいと思う。 今回書くこと・書かないこと 今

    知識ゼロからElasticsearchを実践で使えるようになろう! - $shibayu36->blog;
  • ElasticsearchのAnalyzerを理解するため全文検索の仕組みをシンプルに考える - $shibayu36->blog;

    Elasticsearchを使おうとしているとAnalyzerという概念が出てくるが、このAnalyzerという概念は最初理解することが難しかった。全文検索の仕組みを理解すれば分かるだろうと思い、https://speakerdeck.com/johtani/elasticsearchru-men?slide=5 やhttp://www.atmarkit.co.jp/ait/articles/1111/18/news148.html の記事などを読んで勉強してみたものの、こちらもいろんな言葉が出てきて非常に混乱した。例えば転置インデックス、tf-idf、トークナイズ、ストップワード、N-Gram、正規化などといった言葉が出てくる。 いろいろ調べてみて整理すると、全文検索の技術には、なぜ検索ができるかの話以外に、類似度の話、検索を高速に行うための話、あいまいな検索に対応する話など、いろんな話

    ElasticsearchのAnalyzerを理解するため全文検索の仕組みをシンプルに考える - $shibayu36->blog;
  • Amazon Elasticsearch ServiceでElasticsearch 2.3が利用可能になりました | DevelopersIO

    こんにちは、藤です。 7/27にAmazon Elasticsearch Serviceにバージョン2.3が追加されました。 Amazon Elasticsearch Service now supports Elasticsearch 2.3 Elasticsearch 1.5 ⇛ 2.3 上記サイトにも記載されているように1.5系から2.3系により数多くの機能追加、パフォーマンス改善が含まれています。今回は上記サイトに記載されている3つを簡単にご紹介します。詳細は各バージョンのリリースノートをご確認ください。 パイプラインアグリゲーションの追加 Elasticブログ:Out of this world aggregations Elasticsearch 2.0からアグリゲーションにパイプラインアグリゲーションが追加されました。 Bucketing Metric Pipeline *

    Amazon Elasticsearch ServiceでElasticsearch 2.3が利用可能になりました | DevelopersIO
  • 物理サーバを選定する際のポイント – Eureka Engineering – Medium

    Eureka EngineeringLearn about Eureka’s engineering efforts, product developments and more.

    物理サーバを選定する際のポイント – Eureka Engineering – Medium
  • LINE DEVELOPER DAY 2016 開催のお知らせ « LINE Engineers' Blog

    LINE株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。 LINEヤフー Tech Blog saegusa2017-04-16Yoshihiro was a network engineer at LINE, responsible for all levels of LINE's infrastructure. Since being named Infra Platform Department manager, he is finding ways to apply LINE's technology and business goals to the platform. こんにちは。LINEでネットワークやデータセンターを担当している三枝です。2017年1月にJANOG39で登壇する機会を頂きましたので、今回

    LINE DEVELOPER DAY 2016 開催のお知らせ « LINE Engineers' Blog
  • Amazon Elasticsearch Serviceを使ったログ収集基盤の構成を考えてみた

    みなさんこんにちは。@ryuzeeです。 6月10日にAmazon Web Services企業導入ガイドブックが発売になっていますのでよろしくお願いします。 さて今回はAWS上でログ収集と分析をする際に、Amazon Elasticsearch Serviceを使う前提とした場合だとどのような構成案がありそうかいくつか考えてみたのでご紹介します。 なお、検討の材料にしている全体の構成としては、複数のVPC(またはAWSアカウント)があって、さらにオンプレ側とDirect ConnectやInternet VPNで接続しているような、よくあるそれなりの規模の構成になります。 各VPCの中には複数のサブネットがあり、そのうちのいくつかはプライベートサブネットに分かれているものとします(個人的にはインターネットゲートウェイの有無しか違いがないので、プライベートサブネットあまり作りたくない)。

    Amazon Elasticsearch Serviceを使ったログ収集基盤の構成を考えてみた
  • 『ElasticSearch(0.19)で無理やりデータ復旧させた話』

    こんにちは。Amebaの基幹系インフラ担当している鳥垣です。 ユーザーのサービス用途でElasticSearch(0.19.10)を使用しているのですが、先日ElasticSearchの障害で一部のShardが読めなくなってしまいまして、それを力技で無理やり読めるように復旧させたのでその時の奮闘記を記載したいと思います。 運用情報台数:30台CPU:24コアHeap:8GBインデックス数:3総データ容量:約300GBShard数:128レプリカ数:2バージョン:0.19.10※OpenStackの仮想サーバ ホスト障害発生OpenStackのホストサーバがダウンし、ElasticSearchのノードが1台ダウン。Shardの再配置処理が走り、ダウンしたノードが持っていたShardは他ノードに分散される。この時点ではElasticSearchのクラスタステータスはグリーンだった(Headプラ

    『ElasticSearch(0.19)で無理やりデータ復旧させた話』
  • JMeterの実行結果CSVデータをローカルMacにたてたElasticsearchとKibanaで可視化する | DevelopersIO

    「JMeterの結果CSV、216万行か〜。これくらいだったらJMeterの「グラフ表示」で読み込んで見られるかな〜」 CPU「ブオオオオオオオオン!」 はじめに システムの負荷試験において、Apache JMeterのようなツールを使って試験を実施・結果を出力するケースもあると思います。結果ファイルのサイズがそれほど大きくない場合は、全データを計算する(JMeterでいう「統計レポート」)で問題ありませんが、例えば、長時間負荷をかけたので時系列でデータをグラフ化したい、といったことになると事情が変わってきます。JMeterの結果CSVは手元にあるので、なんとかこれを活用したいところではありますが、数百万行レベルのデータになると、とたんにExcelなどでは辛くなります(というか最大行数的に無理な気がします)。 そこで、ちょうど、弊社木戸がElasticsearchシリーズを連載しているとこ

    JMeterの実行結果CSVデータをローカルMacにたてたElasticsearchとKibanaで可視化する | DevelopersIO
  • いろいろあって Elastic Cloud がオススメな件 - なんたらノート第三期ベータ

    MySQLのインデックスの代わりにElasticsearchを使おうと思い立っていろいろやってみた結果、Elastic社のホスティングけっこうオススメなんじゃないかってなった話です。これです: www.elastic.co 経緯としては、AWSにのっけたサービス、とりあえずMySQLとRedisだけでやってきた仕組みが、そろそろノーキャッシュ新規クエリ単発で1秒以上かかる場合が出てきたというのがあります。 アプリケーションで決まったパターンの問い合わせだけやってるぶんには、問い合わせのパターン数だけ複合インデックを作ればいいし、負荷分散したければリードレプリカが簡単、ということでほとんどの場合MySQLでいいのですが... MySQLは個別のインデックス勝手に組み合わせてくれない、全パターン定義しないといけない 管理者が使う検索機能のよっては、想定したインデックスにうまくヒットしない条件に

    いろいろあって Elastic Cloud がオススメな件 - なんたらノート第三期ベータ
  • Fluentd + Kinesis + Elasticsearch + Kibana / Grafanaでのリアルタイムログ解析基盤 | Tech Blog - リクルート住まいカンパニー

    こんにちは、SUUMOスマホサイトの開発チームに所属しているエンジニアの上野です。 今回は、リアルタイムログ解析基盤を紹介します。 背景 皆様はwebサーバログ監視(アクセスログ・エラーログなど)をどのように行われているでしょうか? スーモスマホサイトでは、アクセス数増加に伴いサーバ台数が増え、csshX地こんにちは、SUUMOスマホサイトの開発チームに所属しているエンジニアの上野です。 今回は、リアルタイムログ解析基盤を紹介します。 背景 皆様はwebサーバログ監視(アクセスログ・エラーログなど)をどのように行われているでしょうか? スーモスマホサイトでは、アクセス数増加に伴いサーバ台数が増え、 csshX 地獄に陥りました。(以下の図のような状態のことです。) ログの確認が必要になった際に、この csshX を使用して秘伝のワンライナーで確認したい部分をtailして抽出していましたが

  • リクルート流Elasticsearchの使い方

    タイトル: 『認証の課題とID連携の実装 �〜ハンズオン〜』 概要: FIDO、ID連携(OAuth・OpenID Connect)をはじめとした最近の技術をご紹介します。FIDOは端末とサーバー間でユーザー認証を安全に連携するための仕組みです。OpenID Connectはユーザーの認証と認可を連携するためのID連携の仕組みで、OAuth 2.0を拡張した仕様であり、HTTP通信やJSONなど基礎的なWeb技術によって構成されています。FIDOとID連携の技術を学んだ後、実習ではGolangを用いてWebアプリケーション上にOpenID Connectを実装します。実装の注意点とそのリスク、仕様に施されているセキュリティー対策についてハンズオンを行いながら解説します。 セキュリティ・キャンプ全国大会2019 専門講義 選択コース B4 認証の課題とID連携の実装 〜ハンズオン〜 Aug

    リクルート流Elasticsearchの使い方
  • GitHub - ankane/searchkick: Intelligent search made easy

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    GitHub - ankane/searchkick: Intelligent search made easy
  • Elasticsearch マッピング

    Elasticsearch におけるマッピングとは、リレーショナルDBでいうところのテーブル定義に相当します。しかし、単にデータを格納する為のフィールドを用意して型を設定するだけではありません。Elasticsearch では、フィールドの型の他に言語解析処理などのドキュメントを検索可能にする為の各種設定が可能です。 スキーマーレスが一つの特徴の Elasticsearch では、ドキュメントをインデックスすると自動的に各フィールド毎にフィールドタイプなどのマッピングが自動で設定されインデックスが作成されます。また、事前にマッピングを設定可能な仕組みとなっています。 自動マッピングまずは以下の内容で、インデックスを作成し自動マッピングについて見て行きます。 ブログ記事毎に1つのドキュメントをインデックス各ドキュメントはドキュメントタイプ story にインデックスドキュメントタイプ sto

    Elasticsearch マッピング
  • ElasticSearch入門

  • Qiitaがquery-stringっぽい構文を自前実装した理由 - Qiita

    これは Elasticsearch Advent Calendar 2014 15日目の記事です。 今秋、Qiitaの検索システムが刷新されました。 Qiita/Qiita:Teamの検索システムがパワーアップしました - Qiita Blog ブログ記事の中でも簡単に紹介していますが、例えば title:"elasticsearch 入門" と検索すると、タイトルに "elasticsearch" と "入門" を単語を含んだ記事を検索できたり、他にも OR が使えたり、マイナス検索ができたりします。 一見すると query string query でも使ってるみたいですが実際はそんなことはなく、泥臭く検索文字列をその都度解析し、生成したクエリをElasticsearchに投げています。この記事では、なぜ query string query を使わずに自分で書いたのかという話と、公開

    Qiitaがquery-stringっぽい構文を自前実装した理由 - Qiita
  • Elasticsearch の配列へのマッピングはどうすれば良いのだろう?と悩んでいた - 雑文発散(2015-06-05)

    ▼ [Elasticsearch] Elasticsearch の配列へのマッピングはどうすれば良いのだろう?と悩んでいた 例えばこんなふうに日語のタグを配列で入れるとする。 { "tags": ["あとで読む", "これはひどい", "プログラミング"] } この配列の中身が分かち書きされてしまうのを避けたいときに、mappings の設定をどうすれば良いのか分からなかった。あ、日語の検索用に kuromoji を入れている状態ね。 配列だから type は array かな?と思って書いてみてもダメだった。array なんてねーよ、と Elasticsearch から怒られてしまう。 { "properties": { "tags": { "type": "array", "index": "not_analyzed" } } } どうやら正解は(配列の中身が文字列だから?)typ

    Elasticsearch の配列へのマッピングはどうすれば良いのだろう?と悩んでいた - 雑文発散(2015-06-05)
  • Elasticsearch Nested Type vs Array Objects

    Elasticsearchには、辞書形式のデータの配列(複数のプロパティを持つオブジェクトの配列)をインデックスする際に、Nested と言うフィールドタイプが用意されています。 インデックスする際にJSONデータの内容は同じでもNested型でマッピング定義されているのか?単にオブジェクトの配列としてマッピング定義されているのかで、検索やソートなどで動作が異なるので注意が必要です。と言うか検索要件によって使い分ける必要が有ります。 デフォルトのダイナミックテンプレートでは、単純にオブジェクトの配列としてマッピング定義されます。 Array Objects最初に、通常のオブジェクトの配列についての説明です。 BtoB向けのECサイトを例に、商品は顧客ごとに販売価格が異なる仕様だとします。 { "product_id": "A000001", "prices": [ { "customer_

    Elasticsearch Nested Type vs Array Objects
  • RailsでElasticsearch: アグリゲーション(ファセット)と Post Filter - Rails Webook

    RailsでElasticsearchを使って簡単な全文検索 ページネーション・1ページあたりの表示件数 ソート機能 とRailsでElasticsearchを使って検索機能を実装してきました。 今回は、「アグリゲーション(ファセット)と Post Filter」について説明します。 「アグリゲーション」は、SQLでいうGROUP BYのようなもので、最小値、最大値、平均値などを求めたり、カテゴリ毎の数を数えたりなどドキュメントを集約させるものです。Elasticsearchでは、従来あった集約機能の「ファセット」では複雑な集約を処理できなかったので、新しくアグリゲーションを作ったぽいです。 具体的には、下記画像の左側のサイドバーで検索結果を絞り込めるようにします。 目次 アグリゲーションのためのElasticsearch カテゴリのアグリゲーションの実装 複数カテゴリの検索に対応 都道府

    RailsでElasticsearch: アグリゲーション(ファセット)と Post Filter - Rails Webook
  • http://blog.inouetakuya.info/entry/2014/11/03/191059

    http://blog.inouetakuya.info/entry/2014/11/03/191059