Lucene/Solr Revolution 2016 – Day2

Lucene/Solr Revolution 2016の2日目。

■ Breakfast

朝ごはんも美味しかったわ〜。いきなり白髪のオッサンに声かけられて何かと思ったら、以前CloudSearchの開発に携わってた、と。今は検索技術系のコンサルをやっててボストンに住んでるそうで。カンファレンス期間中はずっとCloudSearchのパーカーを着ていたのだけど、こういう場では服装も大切なのだな、と。
2016-10-14 21.51.32

■ Keynote

CTOのGrantさんが仕切り。今日の夜帰る人はシェラトンに滞在してなくてもカバンはシェラトンのコンシェルジュに預けられるよーとか、夕方のキーノートは気合い入れて準備してきたから出てね、とか。
2016-10-14 22.17.46

CommvaultのRajivさん
2016-10-14 22.23.18

エンタープライズバックアップっていう領域では有名な会社なのですね。メールをバックアップしてoutlookのビューでそのまま過去メールを検索して参照できる的なデモとか便利そうでした。
2016-10-14 22.26.55

続いてSalesforceのCathyさん
2016-10-14 22.41.45

私も業務でSFDCをガッツリ使ってますが、そりゃ裏側大変だろうなって感じですよね、、
2016-10-14 22.46.01

いろんなデータあるし、
2016-10-14 22.47.07

この人はアクセス許可するけど、この部門の人はーとかそういうのをエンタープライズ領域ってキッチリやらなきゃいけない。
2016-10-14 22.54.34

元々はLucene使ってスケールアップな戦略で高価なハードウェアでオリャっとやってたのを、Solr使って水平分割してコモディティなハードウェアでっていうアプローチ。
2016-10-14 22.56.15

Phase1。この辺はブースでも少し話きかせてもらったんだけど、自前でSolrの外でゴリゴリやってクラスタ頑張ります的なアプローチ。
2016-10-14 22.57.09

Phase2。Zookeeper自分たちで頑張るよ、と。ブースで聞いた話だと、彼らがこの辺に投資はじめた頃はSolrCloudってまだちょっと、、な感じだった、と。稼働系と諸々変更を加えて行く系に分けて、両方にデータを突っ込む。shadowが稼働系よりイイ感じなクオリティになったら稼働系に。
2016-10-14 22.58.07

そして機械学習の技術を使って検索の質を向上させていくアプローチ(このカンファレンスは本当にこのアプローチな話が多かったと思います)
2016-10-14 23.10.33

そして続きは午後のブレークアウトセッションで〜って言われたら、出なきゃいかんがなって気分になりした。

■ Using a Query Classifier to dynamically boost Solr

TargetのHowardさん。このセッションは個人的に今回のカンファレンスで一番印象に残ったというか、ベストなトークでした。とにかくガチな本番での検索の質の向上度合いが素晴らしい。ただ、こういうアプローチを知らなかったのか?って言われれば、そうでもないような気がするけど、実際にここまでの結果を出せたことがないから憧れるわーっていう、そんなセッション。
2016-10-14 23.41.24

私はHowardでHowじゃないんですけどねーなんていう、割りといちいちウケを取りにいこうするプレゼンスタイル。
2016-10-14 23.42.56

なんで分類しなきゃいけなかったのか、と。Targetって幅広くいろんなものを扱ってる。アーモンドって言っても、チョコレート/家具/ミルク/キャンディ、、っていう感じ。
2016-10-14 23.47.07

例えば、何もしないで”7リングなバインダー”とかって検索すると、バインダーより指輪の方が上に出てきちゃったり、elongatedなトイレのトイレカバー探してるのに、、とか、ゼロ件ヒットになっちゃうクエリとか。
2016-10-14 23.51.14

きちんとカテゴリを引き当てて、精度の高いものを返せるようにしようというアプローチ。そしてDismaxでブーストしてやる。
2016-10-14 23.54.00

つまりこういうことよ、と。
2016-10-14 23.55.29

単純ベイズ分類器ってヤツっすねー。簡単にビルドできてスケーラブル。
2016-10-15 00.00.08

評価はNDCG(Normalized Discounted Cumulative Gain)
2016-10-15 00.08.13

んでもって、ドヤァ!ってヤツですね。
2016-10-15 00.14.33

Alarm Navigationで1件もヒットしなかったヤツは単語をバラして検索して分類してっていうアプローチ。
2016-10-15 00.15.21

辞書は全部シングルワードで定義してて、たった100万語。小さいよね、と。でもって、機械学習のアプローチも取り組んでいるけど、現状は人間がrelevanceを…と。(会場はWowと苦笑いの共存というか…)

こういう話を聞くと、諸々汎用化した形でフルマネージドなアプローチでクラウドサービスで提供できたりしないかなって妄想が膨らんだりします。

■ The Evolution of Lucene & Solr Numerics from Strings to Points

LucidworksのSteveさんの話。内容難しそうだったけど、せっかくボストンまで来たんだし、一個くらいこういうセッション出ておこう、と。
2016-10-15 00.33.47

年表にそって今までの歴史を振り返りつつ、今後の模索。Luceneが始まった頃はModified UTF-8だったけど、Trie numericsでレンジクエリが早くなったとか、DocValuesでOSのキャッシュにスワップアウトしたとか、Auto-prefix termsって知らなかったけど5.2で入って6.2で削除されたのとかあるらしい。
2016-10-15 00.35.17

Dimentional PointsはまだLucene Only。SolrはAWSのTomasがやってる、とのこと。
2016-10-15 00.46.04

こっからはユースケースとかベンチマークの話でした。
2016-10-15 00.49.33

■ Lunch

毎食ホントに素晴らしい。前日のパーティーで仲良くなったAzureでAzure Searchの開発エンジニアをしているSeattle在住で、以前日本にも住んでたことがある韓国人のNateってヤツと仲良くなって色んな情報交換ができました。 #solrjp でも登壇してたMonotaROの久保さんともお話できました。
2016-10-15 01.14.48

■ Customizing Ranking Models in Solr to improve relevance for Enterprise Search

Salesforceでの検索のRelevancyのお話。Joeさん(写真)と、Ammarさん。
2016-10-15 02.25.25

3Tierでこんな風にやってますよ、と。L0:Similarity⇒L1:Attribute(Document/User)⇒L2:Aggregation(ランキングを計算してソート)
2016-10-15 02.29.32

元々は検索エンジンはSimilarity(L0)のみ
2016-10-15 02.33.25

L1まで検索エンジンでやりくりするように
2016-10-15 02.34.55

L0は一般的なTF-IDFとDixmax Query Parser。Solr本とかに載ってそうなヤツ。
2016-10-15 02.36.14

L1はL0でヒットしてきたものを独自のコンポーネントで〜
2016-10-15 02.38.06

SolrのSearchComponentを継承して独自のものを組み込む
2016-10-15 02.39.45

こういうデモみせてもらえると腹落ちするし、
2016-10-15 02.44.59

馴染みのあるSolrのコンソール
2016-10-15 02.46.06

そして詳細をAmmerさんから
2016-10-15 02.48.58

日本にはチーム無いって言ってたけど、1ユーザーとしても今後これからどう成長していくのか楽しみですね〜

■ Reflected Intelligence: Lucene/Solr as a self-learning data system

前日のKeynoteにも出てきたLucidworksのTrey Graingerさん。今後の方向性とか知るためにもこの人の話は聞いておきたかった。題名からしてNext感あるやね、と。
2016-10-15 03.12.58

これからは検索エンジンがSelf-Learningしていく時代だぜ、と。いきなりドーンw
2016-10-15 03.13.31

そこに辿り着くまでの要素技術たち
2016-10-15 03.16.06

こういうサイクルをグルグル回して検索の質をどんどん高めていく。
2016-10-15 03.18.28

DiceのConceptual Searchって初耳だったけどシノニム辞書をホゲホゲしてくれるらしい
2016-10-15 03.27.57

『senior java developer hadoop』って出てきたらどこで区切るか問題。“senior java developer” と “hadoop” なわけですけれども。他にもruby on railsだったら〜とか。
2016-10-15 03.31.55

辞書だけでなくstatisticalな〜っていう
2016-10-15 03.32.44

言葉同士の関連はグラフDBなヤツ
2016-10-15 03.36.01

この辺のスコアリング話は興味深いですなぁ
2016-10-15 03.37.55

ドライバーって言っても、運転手の場合もあるし、Linux用のドライバとか、JDBCドライバとか。
2016-10-15 03.42.11

ログデータからホゲホゲする。こういうのの構築とかエンハンスメントは興味あるなぁ、、
2016-10-15 03.42.37

この人の話はいつもロジカルで語り口調も分かりやすいし、今回も勉強させていただきました
2016-10-15 03.44.53

■ Your Big Data Stack is Too Big

最後のブレイクアウトセッションもCommitter Talkに参加。LucidworksのTimothy Potterさん。
2016-10-15 04.03.10

FusionのTweetしてくれれば本プレゼント!っていう(私は荷物増えるのイヤなので…w)
2016-10-15 04.04.17

Sparkを使ってデータを高速にIngestとかってのも最近いろんなところでよく聞く感じになってきました。
2016-10-15 04.10.22

いろんな頻度でいろんなやり方でのアクセスへの対応が求められる
2016-10-15 04.18.47

Solrの中はTieredな感じになってるよ、と。SQLを解釈して、Workerに渡して、それをData nodeに
2016-10-15 04.20.16

ZeppelinからならJDBCで簡単にアクセスできる
2016-10-15 04.23.52

HiveのクエリでSolrのドキュメントもSQLを使ってHDFSのデータとjoinできちゃうのドヤァ的な
2016-10-15 04.29.29

Fusionが何をどこまでやってくれるのか未だに分かっていませんが、、、
2016-10-15 04.35.14

Grantさんが前日のセッションで言ってたSearchHubの話
2016-10-15 04.37.11

クロールして取り込んだTweetデータから上記の書籍プレゼントな人をSolrのコンソールから検索してww
2016-10-15 04.42.52

■ Closing Keynote

CTO Grantさんおクロージングキーノート
2016-10-15 05.05.38

エモいお話を、、
2016-10-15 05.08.45

たくさんの絵文字を使って。この人の話は力強くていつも楽しみ。今回も日本帰ったら頑張るべかなーって気分にさせてくれるお話でした 🙂
2016-10-15 05.12.15


今回も大変勉強になりました。少しでも雰囲気とか最近のSolr界隈どうなの?って辺りが伝わるとイイなーと思ってブログ書かせていただきましたmm

Solr 5: Troubleshooting and Maintenance
Alexandre Rafalovitch
Oreilly & Associates Inc
売り上げランキング: 346,371

シェアする

  • このエントリーをはてなブックマークに追加

フォローする