Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

こんにちはJapornLady開発者のリヒトです スケーラブルなデータベースが簡単に手に入る時代なのだから、何万人ものユーザを抱える様な大規模なサービスを作って運用してみたいなぁという思いから、熟考した果てのエロサイト ジャポルノレディーズ を作る事を決めました。このページは開発にあたってのTipsとジャポルノレディーズの宣伝です(人気AV女優のフルDVD動画が見れるよ)。 今までに教育向けとか真面目なサービスを作った事もありましたが今いちニーズがあるのか無いのかわからずに細々とやってました。そこで気づいたのはニーズあるなし論争は常に疑心暗鬼になってつらい。 という事でニーズがあるとわかってるエロサイトを作ることに決定 コンテンツも豊富かつスケーラブルでレコメンドエンジンも備えた快適エロサイト(笑)を作ろう!の備考メモ ちなみにコンテンツ収集はクロール手法のため非公開です。 環境 OS :
Elasticsearchでサジェスト機能を使いたいんだけど、英語でのネタしか見つからなかったので、日本語でサジェストするメモ。 例えば「と」と打って「東京都」が出てきてほしいけど、そのままデータ登録しても「東」じゃないと出てこない。 なので、Kuromojiのカタカナ変換機能を使ってやってみた。 インデックス作成 まずインデックスの作成と設定。(例として「suggest_test」というインデックス名) // curl -X PUT 'localhost:9200/suggest_test' -d { "settings": { "analysis":{ "analyzer" : { "katakana_analyzer" : { "tokenizer" : "kuromoji_tokenizer", "filter" : ["katakana_readingform"] } }, "f
まえがき これはElasticsearch Advent Calendar 7日目の記事です。 今回はElasticsearchをコンテンツの検索として利用した際にElasticsearchで検索ログも収集・利用する方法についてです。 私はAdvent Calendar参加が今回初めてになります。 もし分かりにくいところがあったらツッコミお願いします。 はじめに Elasticsearchは主に「コンテンツ検索」と「ログ管理」の二通りの使われ方をしています。 「コンテンツ検索」は、記事やユーザのコメントなどの文章をESで検索する利用方法です。日本語の検索がメインになるので、正規化や形態素解析辞書、同義語辞書の管理などが課題になります。 「ログ管理」は、みんな大好きFluentdとKibanaなどを組み合わせてアクセスログを グラフ化したり、エラーログを検索できるようにする活用方法です。 こ
Elasticsearchでの形態素解析はKuromoji一択だけど、やや辞書が貧弱な部分もある。 例えば東京に「西国分寺駅」という駅があるけど、「西国分寺」で形態素解析すると「西」「国分寺」で分かれる。 読みも「サイコクブンジ」となってしまう。(正しくは「ニシコクブンジ」) なので、ある程度ユーザー辞書で補いたいと思う。 参考になったサイト elasticsearch-analysis-kuromojiでユーザ辞書の利用方法 Elasticsearch 日本語で全文検索 その2 環境 CentOS 6.4 Elasticsearch 1.1.1 kuromoji 2.0.0 辞書ファイルの作成 まず辞書ファイルを作成。 普通のテキストファイルで、文字コードは UTF-8。拡張子は自由。 ここでは例として「my_jisho.dic」とした。 辞書ファイルの置き場所 ファイルの保存先は /e
% aws es create-elasticsearch-domain --domain-name solar { "DomainStatus": { "ElasticsearchClusterConfig": { "DedicatedMasterEnabled": false, "InstanceCount": 1, "ZoneAwarenessEnabled": false, "InstanceType": "m3.medium.elasticsearch" }, "DomainId": "736384702727/solar", "Created": true, "Deleted": false, "EBSOptions": { "EBSEnabled": false }, "Processing": true, "DomainName": "solar", "SnapshotOp
TL;DR elasticsearch公式ブログの手順を試したらできたのでメモ。index aliasesを使うと実現できる。 Elasticsearch.org Changing Mapping With Zero Downtime | Blog | Elasticsearch 背景 最近、elasticsearch v1.4系 + kibana4 をログの可視化用途として本番環境で利用し始めてみたものの、ほとんどデフォルトのままの設定ではkibana上でtermsによるデータのカウントがうまくとれないという問題に行き当たりました。 原因としては、string型として扱われているfieldがデフォルトでanalyzed属性を持っているため、fieldの値がtoknizeされてインデックスされていたためでした。stringのfieldをnot_analyzedにするためには以下の様なind
Greenという転職サイトで、ElasticSearchを導入して遊んでみようと思います。 具体的には今の求人が持っているデータをElasticSearchに入れてみて実際に開発環境で動かす事をGoalとします。 全文検索とは? 全文検索(Full text search)とは、コンピュータにおいて、複数の文書(ファイ ル)から特定の文字列を検索すること。「ファイル名検索」や「単一ファイル 内の文字列検索」と異なり、「複数文書にまたがって、文書に含まれる全文を 対象とした検索」という意味で使用される。 - 引用:Wikipedia インデックスの違い Bツリーインデックスとは? 引用:What Is A B Tree Index RDBのインデックスについて 転置インデックスとは? 引用:thinkit elasticsearchを全文検索サーバとして活用するなら読んでおきたい、6つのブロ
Kibanaとは ElasticSearch社が提供している、ログデータの可視化ツール。Apatchなどのシステムログを用いる例ばっかりWeb上で見つかるが、別に検索のクエリログやWebサイトの行動ログだってちゃんと入れて設定すれば使える。 Kibanaのインストール ElasticSearchのプラグインとしてインストール (現在はkibana3としなくても、Kibana3が標準でインストールされる。package.jsonみたら3.0.0pre-milestone5バージョンがインストールされていた。) とりあえずここまででKibanaを見てみる http://localhost:9200/_plugin/kibana にアクセス 何かバージョンが古いよみたいなこと言われるけど、気にしないで使える。 こうすると、Elasticsearch自身のログを使ってサンプルダッシュボードを表示し
データの可視化手法に興味あり Kibana が "4" となって使ってみたかったので試してみました。 動作させる環境は Mac(osx) です Kibana Kibana は Elasticsearch に投入されたデータを可視化するツールでありログデータの可視化等に主に使用されます。 ログの各データにTimestampが含まれているものに対して時系列データ分析の取り扱が大変強力ですが絶対にそれが必要というわけでもありません。 Elasticsearchは言うまでもなくSolrと並ぶ Lucene 検索エンジンが動作する分散型の全文検索サーバです、 準備 (Download) どちらも最新(2015/6時点)をDownLoadします。 * Kibana4-download - 4.1 Elasticsearch - download - 1.6.0 インストール 解凍するだけです $ ls
(この記事は2013年に書かれたもので、内容については古くなっています。ご注意ください。) いわゆる「逆ジオコーディング」と呼ばれる機能ですが、きっかけはこれら2つの記事です。 PHP - 総務省のデータを使って、緯度経度から市区町村の何丁目までを取り出す PostgreSQL - 国土交通省のデータを使って、緯度経度から市区町村までを取り出す Solr や Elasticsearch でも同じことができるのでは、という事で Elasticsearch でやってみました。 Elasticsearch の導入 は、 Elasticsearch で位置情報を検索する手順 - Experiments Never Fail をご覧ください。 1. 総務省のデータをダウンロードする PHP - 総務省のデータを使って、緯度経度から市区町村の何丁目までを取り出す とほぼ同じですが、「世界測地系緯度経度
注:古いです(es1.0か0.90くらいのときに書いたもの) glossaryの超適当まとめ 死ぬほど初心者です。お気づきの点がございましたらご指摘の程よろしくお願い致します。 analysis 全文をtermに変換する処理 cluster 同一の名前を持つnodeの集合 document elasticsearchに保存されるjsonデータ。RDBにおける行みたいなもん id documentの識別子 field RDBにおけるカラムみたいなもん。ネスト構造も許可 index RDBにおけるデータベースみたいなもん。typeを定義するmappingを複数持てる。論理的な名前空間で、1つ以上のprimary shardにマッピングされ、0個以上のreplica shardを持つことができる mapping RDBにおけるスキーマ定義みたいなもん。全てのindexは、index内のtypeを
{ "@timestamp": "2013-12-17T10:12:40+09:00", "remote_addr": "203.0.113.10", "country_code": "JP", "request_uri": "/index.php", "user_agent": "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; WOW64; Trident/6.0)" } すると、いまアクセスされている国の比率とかを見たければ、country_codeを指定してあげれば次の様なグラフが書けて非常に便利だ。 しかし、user_agentを指定するとつぎのようになったりして、うまくいかないことがある。 これはKibanaが空気を読んで要素解析してしまったせいである。できれば完全一致で見たい。 Mapping Templateを使う El
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く