Suche senden
Hochladen
検索のダウンタイム0でバックアップからindexをリストアする方法
•
Als PPTX, PDF herunterladen
•
7 gefällt mir
•
13,552 views
K
kbigwheel
Folgen
第6回Elasticsearch勉強会 資料
Weniger lesen
Mehr lesen
Ingenieurwesen
Melden
Teilen
Melden
Teilen
1 von 12
Jetzt herunterladen
Empfohlen
Spiderストレージエンジンの使い方と利用事例 他ストレージエンジンの紹介
Spiderストレージエンジンの使い方と利用事例 他ストレージエンジンの紹介
Kentoku
elasticsearchプラグイン入門
elasticsearchプラグイン入門
Shinsuke Sugaya
hs_spider_hs_something_20110906
hs_spider_hs_something_20110906
Kentoku
Spiderストレージエンジンのご紹介
Spiderストレージエンジンのご紹介
Kentoku
MariaDB 10.3から利用できるSpider関連の性能向上機能・便利機能ほか
MariaDB 10.3から利用できるSpider関連の性能向上機能・便利機能ほか
Kentoku
Meets IT and AED ハンズオン 20150516
Meets IT and AED ハンズオン 20150516
Akira Hatsune
Elasticsearch Authプラグインでアクセスコントロール
Elasticsearch Authプラグインでアクセスコントロール
Shinsuke Sugaya
Spider storage engine (dec212016)
Spider storage engine (dec212016)
Kentoku
Empfohlen
Spiderストレージエンジンの使い方と利用事例 他ストレージエンジンの紹介
Spiderストレージエンジンの使い方と利用事例 他ストレージエンジンの紹介
Kentoku
elasticsearchプラグイン入門
elasticsearchプラグイン入門
Shinsuke Sugaya
hs_spider_hs_something_20110906
hs_spider_hs_something_20110906
Kentoku
Spiderストレージエンジンのご紹介
Spiderストレージエンジンのご紹介
Kentoku
MariaDB 10.3から利用できるSpider関連の性能向上機能・便利機能ほか
MariaDB 10.3から利用できるSpider関連の性能向上機能・便利機能ほか
Kentoku
Meets IT and AED ハンズオン 20150516
Meets IT and AED ハンズオン 20150516
Akira Hatsune
Elasticsearch Authプラグインでアクセスコントロール
Elasticsearch Authプラグインでアクセスコントロール
Shinsuke Sugaya
Spider storage engine (dec212016)
Spider storage engine (dec212016)
Kentoku
Asakusa fwはじめの一歩・改
Asakusa fwはじめの一歩・改
鉄平 土佐
ASTERFalseColorImage1
ASTERFalseColorImage1
NakamuraShinsaku
DBFluteを用いて開発されている全文検索システムFess
DBFluteを用いて開発されている全文検索システムFess
Shinsuke Sugaya
ASTERFalseColorImage2
ASTERFalseColorImage2
NakamuraShinsaku
全文検索サーバ Fess 〜 全文検索システム構築時の悩みどころ
全文検索サーバ Fess 〜 全文検索システム構築時の悩みどころ
Shinsuke Sugaya
SolrとElasticsearchを比べてみよう
SolrとElasticsearchを比べてみよう
Shinsuke Sugaya
Elasticsearchプラグインの作り方
Elasticsearchプラグインの作り方
Shinsuke Sugaya
Asakusa FrameworkとScalaの密かな関係
Asakusa FrameworkとScalaの密かな関係
hishidama
polidog に elasticsearch を教える
polidog に elasticsearch を教える
ftnk
5分で作るMySQL Cluster環境
5分で作るMySQL Cluster環境
yoyamasaki
Zabbix Conference Japan 2018 LT Configure by Ansible
Zabbix Conference Japan 2018 LT Configure by Ansible
Yukiya Hayashi
ActiveStorage::Analyzer
ActiveStorage::Analyzer
Nozomu KURASAWA
traceur-compilerで未来のJavaScriptを体験
traceur-compilerで未来のJavaScriptを体験
Toshio Ehara
Open Stack Day - Ansibleによる環境構築の自動化
Open Stack Day - Ansibleによる環境構築の自動化
shirou wakayama
Solrベースの全文検索サーバ Fess
Solrベースの全文検索サーバ Fess
Shinsuke Sugaya
MySQLと組み合わせて始める全文検索プロダクト"elasticsearch"
MySQLと組み合わせて始める全文検索プロダクト"elasticsearch"
Kentaro Yoshida
オフィスに1台!全文検索Fess
オフィスに1台!全文検索Fess
Shinsuke Sugaya
solr勉強会資料
solr勉強会資料
Atsushi Takayasu
インターンシップの学生にお届けしようとしたScalaの文法(初級編)
インターンシップの学生にお届けしようとしたScalaの文法(初級編)
Kentaro Masuda
ElasticsearchとTasteプラグインで作るレコメンドシステム
ElasticsearchとTasteプラグインで作るレコメンドシステム
Shinsuke Sugaya
ElasticSearch勉強会 第6回
ElasticSearch勉強会 第6回
Naoyuki Yamada
elasticsearchソースコードを読みはじめてみた
elasticsearchソースコードを読みはじめてみた
furandon_pig
Weitere ähnliche Inhalte
Was ist angesagt?
Asakusa fwはじめの一歩・改
Asakusa fwはじめの一歩・改
鉄平 土佐
ASTERFalseColorImage1
ASTERFalseColorImage1
NakamuraShinsaku
DBFluteを用いて開発されている全文検索システムFess
DBFluteを用いて開発されている全文検索システムFess
Shinsuke Sugaya
ASTERFalseColorImage2
ASTERFalseColorImage2
NakamuraShinsaku
全文検索サーバ Fess 〜 全文検索システム構築時の悩みどころ
全文検索サーバ Fess 〜 全文検索システム構築時の悩みどころ
Shinsuke Sugaya
SolrとElasticsearchを比べてみよう
SolrとElasticsearchを比べてみよう
Shinsuke Sugaya
Elasticsearchプラグインの作り方
Elasticsearchプラグインの作り方
Shinsuke Sugaya
Asakusa FrameworkとScalaの密かな関係
Asakusa FrameworkとScalaの密かな関係
hishidama
polidog に elasticsearch を教える
polidog に elasticsearch を教える
ftnk
5分で作るMySQL Cluster環境
5分で作るMySQL Cluster環境
yoyamasaki
Zabbix Conference Japan 2018 LT Configure by Ansible
Zabbix Conference Japan 2018 LT Configure by Ansible
Yukiya Hayashi
ActiveStorage::Analyzer
ActiveStorage::Analyzer
Nozomu KURASAWA
traceur-compilerで未来のJavaScriptを体験
traceur-compilerで未来のJavaScriptを体験
Toshio Ehara
Open Stack Day - Ansibleによる環境構築の自動化
Open Stack Day - Ansibleによる環境構築の自動化
shirou wakayama
Solrベースの全文検索サーバ Fess
Solrベースの全文検索サーバ Fess
Shinsuke Sugaya
MySQLと組み合わせて始める全文検索プロダクト"elasticsearch"
MySQLと組み合わせて始める全文検索プロダクト"elasticsearch"
Kentaro Yoshida
オフィスに1台!全文検索Fess
オフィスに1台!全文検索Fess
Shinsuke Sugaya
solr勉強会資料
solr勉強会資料
Atsushi Takayasu
インターンシップの学生にお届けしようとしたScalaの文法(初級編)
インターンシップの学生にお届けしようとしたScalaの文法(初級編)
Kentaro Masuda
ElasticsearchとTasteプラグインで作るレコメンドシステム
ElasticsearchとTasteプラグインで作るレコメンドシステム
Shinsuke Sugaya
Was ist angesagt?
(20)
Asakusa fwはじめの一歩・改
Asakusa fwはじめの一歩・改
ASTERFalseColorImage1
ASTERFalseColorImage1
DBFluteを用いて開発されている全文検索システムFess
DBFluteを用いて開発されている全文検索システムFess
ASTERFalseColorImage2
ASTERFalseColorImage2
全文検索サーバ Fess 〜 全文検索システム構築時の悩みどころ
全文検索サーバ Fess 〜 全文検索システム構築時の悩みどころ
SolrとElasticsearchを比べてみよう
SolrとElasticsearchを比べてみよう
Elasticsearchプラグインの作り方
Elasticsearchプラグインの作り方
Asakusa FrameworkとScalaの密かな関係
Asakusa FrameworkとScalaの密かな関係
polidog に elasticsearch を教える
polidog に elasticsearch を教える
5分で作るMySQL Cluster環境
5分で作るMySQL Cluster環境
Zabbix Conference Japan 2018 LT Configure by Ansible
Zabbix Conference Japan 2018 LT Configure by Ansible
ActiveStorage::Analyzer
ActiveStorage::Analyzer
traceur-compilerで未来のJavaScriptを体験
traceur-compilerで未来のJavaScriptを体験
Open Stack Day - Ansibleによる環境構築の自動化
Open Stack Day - Ansibleによる環境構築の自動化
Solrベースの全文検索サーバ Fess
Solrベースの全文検索サーバ Fess
MySQLと組み合わせて始める全文検索プロダクト"elasticsearch"
MySQLと組み合わせて始める全文検索プロダクト"elasticsearch"
オフィスに1台!全文検索Fess
オフィスに1台!全文検索Fess
solr勉強会資料
solr勉強会資料
インターンシップの学生にお届けしようとしたScalaの文法(初級編)
インターンシップの学生にお届けしようとしたScalaの文法(初級編)
ElasticsearchとTasteプラグインで作るレコメンドシステム
ElasticsearchとTasteプラグインで作るレコメンドシステム
Andere mochten auch
ElasticSearch勉強会 第6回
ElasticSearch勉強会 第6回
Naoyuki Yamada
elasticsearchソースコードを読みはじめてみた
elasticsearchソースコードを読みはじめてみた
furandon_pig
Elasticsearch 5.2とJava Clientで戯れる #elasticsearchjp
Elasticsearch 5.2とJava Clientで戯れる #elasticsearchjp
Yahoo!デベロッパーネットワーク
Elasticsearchを用いたはてなブックマークのトピック生成
Elasticsearchを用いたはてなブックマークのトピック生成
Shunsuke Kozawa
ElasticSearchでいろいろやってる話
ElasticSearchでいろいろやってる話
Shinya Takara
はてなブックマークのトピックページの裏側 in YAPC::Asia Tokyo 2015
はてなブックマークのトピックページの裏側 in YAPC::Asia Tokyo 2015
Shunsuke Kozawa
はてなブックマークに基づく関連記事レコメンドエンジンの開発
はてなブックマークに基づく関連記事レコメンドエンジンの開発
Shunsuke Kozawa
Elasticsearchと科学技術ビッグデータが切り拓く日本の知の俯瞰と発見 前半(15分): SPIAS のご紹介と主な課題
Elasticsearchと科学技術ビッグデータが切り拓く日本の知の俯瞰と発見 前半(15分): SPIAS のご紹介と主な課題
Yasushi Hara
Andere mochten auch
(8)
ElasticSearch勉強会 第6回
ElasticSearch勉強会 第6回
elasticsearchソースコードを読みはじめてみた
elasticsearchソースコードを読みはじめてみた
Elasticsearch 5.2とJava Clientで戯れる #elasticsearchjp
Elasticsearch 5.2とJava Clientで戯れる #elasticsearchjp
Elasticsearchを用いたはてなブックマークのトピック生成
Elasticsearchを用いたはてなブックマークのトピック生成
ElasticSearchでいろいろやってる話
ElasticSearchでいろいろやってる話
はてなブックマークのトピックページの裏側 in YAPC::Asia Tokyo 2015
はてなブックマークのトピックページの裏側 in YAPC::Asia Tokyo 2015
はてなブックマークに基づく関連記事レコメンドエンジンの開発
はてなブックマークに基づく関連記事レコメンドエンジンの開発
Elasticsearchと科学技術ビッグデータが切り拓く日本の知の俯瞰と発見 前半(15分): SPIAS のご紹介と主な課題
Elasticsearchと科学技術ビッグデータが切り拓く日本の知の俯瞰と発見 前半(15分): SPIAS のご紹介と主な課題
Ähnlich wie 検索のダウンタイム0でバックアップからindexをリストアする方法
Alfresco勉強会#33 alfresco 5.1でコンテンツ自動削除を実装してみた
Alfresco勉強会#33 alfresco 5.1でコンテンツ自動削除を実装してみた
Tasuku Otani
blogサービスの全文検索の話 - #groonga を囲む夕べ
blogサービスの全文検索の話 - #groonga を囲む夕べ
Masahiro Nagano
CleanArchitecture with AssemblyDefinition in unity
CleanArchitecture with AssemblyDefinition in unity
NakanoYosuke1
Searchable Snapshot でコスト削減
Searchable Snapshot でコスト削減
shinhiguchi
[OSC 2017 Tokyo/Fall] OSSコンソーシアム DB部会 MySQL 8.0
[OSC 2017 Tokyo/Fall] OSSコンソーシアム DB部会 MySQL 8.0
Ryusuke Kajiyama
OpenStackをさらに”使う”技術 概要と基礎操作
OpenStackをさらに”使う”技術 概要と基礎操作
irix_jp
Handlersocket 20110517
Handlersocket 20110517
akirahiguchi
おれおれブログシステムにServiceWorkerを導入してみた #serviceworker
おれおれブログシステムにServiceWorkerを導入してみた #serviceworker
Toshiaki Maki
ISUCONの勝ち方 YAPC::Asia Tokyo 2015
ISUCONの勝ち方 YAPC::Asia Tokyo 2015
Masahiro Nagano
20160929_InnoDBの全文検索を使ってみた by 株式会社インサイトテクノロジー 中村範夫
20160929_InnoDBの全文検索を使ってみた by 株式会社インサイトテクノロジー 中村範夫
Insight Technology, Inc.
はじめてのElasticsearchクラスタ
はじめてのElasticsearchクラスタ
Satoyuki Tsukano
Web App for Containers + MySQLでコンテナ対応したRailsアプリを作ろう!
Web App for Containers + MySQLでコンテナ対応したRailsアプリを作ろう!
Yoichi Kawasaki
activerecord-oracle_enhanced-adapterのご紹介
activerecord-oracle_enhanced-adapterのご紹介
Kevin Toyoda
インメモリーで超高速処理を実現する場合のカギ
インメモリーで超高速処理を実現する場合のカギ
Masaki Yamakawa
LIFULL HOME'S「かざして検索」リリースの裏側
LIFULL HOME'S「かざして検索」リリースの裏側
Takuro Hanawa
React Native GUIDE
React Native GUIDE
dcubeio
20120317 IT系勉強会 in 神戸
20120317 IT系勉強会 in 神戸
Takahiro Iwase
いろいろ考えると日本語の全文検索もMySQLがいいね!
いろいろ考えると日本語の全文検索もMySQLがいいね!
Kouhei Sutou
20120721_ishkawa
20120721_ishkawa
Yosuke Ishikawa
Ähnlich wie 検索のダウンタイム0でバックアップからindexをリストアする方法
(19)
Alfresco勉強会#33 alfresco 5.1でコンテンツ自動削除を実装してみた
Alfresco勉強会#33 alfresco 5.1でコンテンツ自動削除を実装してみた
blogサービスの全文検索の話 - #groonga を囲む夕べ
blogサービスの全文検索の話 - #groonga を囲む夕べ
CleanArchitecture with AssemblyDefinition in unity
CleanArchitecture with AssemblyDefinition in unity
Searchable Snapshot でコスト削減
Searchable Snapshot でコスト削減
[OSC 2017 Tokyo/Fall] OSSコンソーシアム DB部会 MySQL 8.0
[OSC 2017 Tokyo/Fall] OSSコンソーシアム DB部会 MySQL 8.0
OpenStackをさらに”使う”技術 概要と基礎操作
OpenStackをさらに”使う”技術 概要と基礎操作
Handlersocket 20110517
Handlersocket 20110517
おれおれブログシステムにServiceWorkerを導入してみた #serviceworker
おれおれブログシステムにServiceWorkerを導入してみた #serviceworker
ISUCONの勝ち方 YAPC::Asia Tokyo 2015
ISUCONの勝ち方 YAPC::Asia Tokyo 2015
20160929_InnoDBの全文検索を使ってみた by 株式会社インサイトテクノロジー 中村範夫
20160929_InnoDBの全文検索を使ってみた by 株式会社インサイトテクノロジー 中村範夫
はじめてのElasticsearchクラスタ
はじめてのElasticsearchクラスタ
Web App for Containers + MySQLでコンテナ対応したRailsアプリを作ろう!
Web App for Containers + MySQLでコンテナ対応したRailsアプリを作ろう!
activerecord-oracle_enhanced-adapterのご紹介
activerecord-oracle_enhanced-adapterのご紹介
インメモリーで超高速処理を実現する場合のカギ
インメモリーで超高速処理を実現する場合のカギ
LIFULL HOME'S「かざして検索」リリースの裏側
LIFULL HOME'S「かざして検索」リリースの裏側
React Native GUIDE
React Native GUIDE
20120317 IT系勉強会 in 神戸
20120317 IT系勉強会 in 神戸
いろいろ考えると日本語の全文検索もMySQLがいいね!
いろいろ考えると日本語の全文検索もMySQLがいいね!
20120721_ishkawa
20120721_ishkawa
検索のダウンタイム0でバックアップからindexをリストアする方法
1.
株式会社ドワンゴモバイル 西田和史@kbigwheel
2.
前置き 撮影・情報共有自由
後日スライドはネット上で共有します
3.
Snapshot & Restore
API Elasticsearch 1.0.0で追加された機能 バージョン1.0.0未満 ○ Indexをバックアップするためには クラスタの停止が必要 バージョン1.0.0以降 ○ Indexのバックアップが無停止で可能!
4.
しかし、 バックアップからリストアするためには
対象のIndexを一旦削除もしくはcloseする 必要あり 普通に実行すると無停止でリストアするこ とはできない! そこで本LTでは無停止でリストアするテクニッ クを紹介
5.
典型的シナリオ 1. 音楽サイトAでの検索結果が何かおかしい…
「嵐」で検索してジャニーズのグループがでな い!やばい! 2. Indexを今朝の状態に戻したいが、 普通にRestore APIを叩こうとすると 対象のIndexを一度closeする必要がある 一時的にまったく検索できなくなる なるべく避けたい
6.
なんとか今の検索は動作させつつ、 バックグラウンドで リストア作業を行いたい!
7.
Index Aliases機能とリストア時のリネー ムを組み合わせて無停止で復元しよう!
次の2つを組み合わせる 1. Index aliases - Indexへ別名を与える機能 ○ 例: インデックス“artist20140716” に対して エイリアス“artist” を付与 http://localhost:9200/artist20140716/artist/1234 http://localhost:9200/artist/artist/1234 1. リストアするindexをリネーム可能 全く等価 になる! このようにprefixや suffixをつけることが 可能!
8.
事前準備 1. indexは日付、versionなどのサフィックス
をつけて作成 artist_20140716, product_v5 2. 各indexにサフィックスを削除した文字列で aliasを付与 artist_20140716 → artist, product_v5 → product 3. 検索は必ずalias名を通して実行 http://{{domain}}/artist_20140716/artist/_search?q=水樹奈々 http://{{domain}}/artist/artist/_search?q=水樹奈々
9.
障害時の対応手順(1/2) 1. リストアAPIでスナップショットを復元
$ curl -XPOST "localhost:9200/_snapshot/my_backup/full_20140716/_restore?pretty" -d '{ > "indices": “artist_20140716", > "ignore_unavailable": "true", > "include_global_state": false, > "rename_pattern": "artist_20140716", > "rename_replacement": “artist_20140716_restored“ > }‘ && curl -XPOST "localhost:9200/_aliases" -d '{ > "actions" : [ > { "remove" : { "index" : "artist_20140716_restored", "alias" : “artist" } } > ] > }' Indexをリネーム ポイント:リストアAPIはエイリアスも復 元してしまうので、即座に復元中のIndex に付いているエイリアスは削除する (これを忘れるとそのエイリアス経由で の検索がすべて500エラーになる) 2. Elasticsearch-Headなどで リストアしたIndexがGreenに なるまで待機
10.
障害時の対応手順(2/2) 3. リストア完了後、壊れたIndexと
リストアしたIndexをスイッチする $ curl -XPOST "localhost:9200/_aliases" -d ' > { > "actions" : [ > { "remove" : { "index" : “artist_20140716", "alias" : “artist" } }, > { "add" : { "index" : "artist_20140716_restored", "alias" : “artist" } } > ] > }' 4. 動作確認後、不要であれば壊れたIndex を削除
11.
補足情報 バージョン1.3.0からaliasなしでの
restoreが可能になった少しだけ手順が 楽になる $ curl -XPOST "localhost:9200/_snapshot/my_backup/full_20140716/_restore?pretty" -d '{ > "indices": “artist_20140716", > "ignore_unavailable": "true", > "include_global_state": false, > "rename_pattern": "artist_20140716", > "rename_replacement": “artist_20140716_restored“ > }‘ && curl -XPOST "localhost:9200/_aliases" -d '{ > "actions" : [ > { "remove" : { "index" : "artist_20140716_restored", "alias" : “artist" } } > ] > }' $ curl -XPOST "localhost:9200/_snapshot/my_backup/full_20140716/_restore?pretty" -d '{ > "indices": “artist_20140716", > "ignore_unavailable": "true", > "include_global_state": false, > "rename_pattern": "artist_20140716", > "rename_replacement": “artist_20140716_restored“, > “include_aliases": false > }‘
Jetzt herunterladen