Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Elasticsearch5.0.0で再インデクシングの高速化を探究した話
Search
mwatanabe
September 15, 2016
Technology
930
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Elasticsearch5.0.0で再インデクシングの高速化を探究した話
第17回Elasticsearch勉強会の発表資料
mwatanabe
September 15, 2016
More Decks by mwatanabe
See All by mwatanabe
cybozu.comの認証 / cybozu.com authentication
mwatanabe
0
1.5k
Other Decks in Technology
See All in Technology
FinTech 1-2 : Overview of FinTech
ks91
PRO
0
140
大阪オフィスに Unitree Go2 がやってきたので Physical AI やってみた
dafujii
0
270
カンファレンスに参加した後の浮遊感とセルフケア
pauli
0
310
IoTデバイスを繋げるプロトコルMatterをAndroidで使用する方法
harutiro
0
110
ビジネスを止めない技術的負債の返済のための戦略とその手法 - 技術的負債と向き合う / Complexity and Simplicity
soudai
PRO
3
510
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
16
120k
おそらく日本で唯一のDevRelインターン生として
husengs7
0
160
ai_cording_with_k8s_knowledge.pdf
mochizuki875
1
150
MCPゲートウェイを作って運用してわかったこと — Agent時代の権限管理の現在地
mtpooh
10
3k
覗いてみよう 関数型ビジュアル言語×2Dグラフィックスの世界
yohyamasaki
0
170
HolmesGPTで始めるSREエージェント入門!プラットフォームの障害調査はAIにお任せ 〜
leveragestech
PRO
0
140
AI駆動開発、viviONの1年 ── うまくいったこと・いかなかったこと
vivion
0
150
Featured
See All Featured
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
910
Statistics for Hackers
jakevdp
799
230k
Mind Mapping
helmedeiros
1
390
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.7k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
18k
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
440
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
520
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
74
42k
The Art of Programming - Codeland 2020
erikaheidi
57
14k
VelocityConf: Rendering Performance Case Studies
addyosmani
331
25k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
Transcript
&MBTUJDTFBSDIͰ ࠶ΠϯσΫγϯάͷߴԽΛ ୳ڀͨ͠ ݄ୈճ&MBTUJDTFBSDIษڧձ αΠϘζɹล
ࣗݾհ ໊લɿลٛ ॴଐɿαΠϘζגࣜձࣾ ɹɹɹΞϓϦέʔγϣϯج൫νʔϜ ࠓͷؾ࣋ͪɿۓுׂ̔ɺؾׂɺૣޱʹؾΛ͚ͭΔׂ +BWBͷνϡʔχϯά͔Β$44·ͰجຊతʹԿͰΔνʔϜ DZCP[VDPNͷϓϩμΫτڞ௨ػೳͷ։ൃ ΞʔΩςΫνϟ৽ϓϩδΣΫτͰ&MBTUJDTFBSDIͷௐࠪͳͲ
αΠϘζ w ใڞ༗8FCΞϓϦέʔγϣϯ άϧʔϓΣΞ ͷ։ൃ w DZCP[VDPNͱ͍͏ΫϥυαʔϏεΛఏڙ w ݕࡧγεςϜओʹશจݕࡧͱͯ͠ར༻ w
ҰͭͷϓϩμΫτͷଉ͕͍ w ݕࡧγεςϜͷόʔδϣϯΞοϓτʔΫφΠβมߋͰ ࠶ΠϯσΫγϯάʹ͕͔͔࣌ؒΔͷ͕ͭΒ͔ͬͨ
&MBTUJDTFBSDIͱͷؔΘΓ w ΞʔΩςΫνϟ৽ϓϩδΣΫτͷҰͰௐࠪ w ࣍ظݕࡧج൫ͱͯ͠طଘͷΛղফͰ͖Δ͔ w Γ͑ํ๏Λݕ౼ͨ͠Γϓϩτ࣮ͯ͠Δஈ֊ w ࣮ӡ༻·͍ͩͯ͠ͳ͍
࠷ۙϒϩάॻ͖·ͨ͠ w &MBTUJDTFBSDIͷ*OHFTU/PEF༻ϓϥάΠϯ Λॻ͍ͨ w &MBTUJDTFBSDIͰ࠶ΠϯσΫγϯάͷߴԽ Λ୳ٻ͢Δ
࠷ۙϒϩάॻ͖·ͨ͠ w &MBTUJDTFBSDIͷ*OHFTU/PEF༻ϓϥάΠϯ Λॻ͍ͨ w &MBTUJDTFBSDIͰ࠶ΠϯσΫγϯάͷߴԽ Λ୳ٻ͢Δ ࠓͬͪ͜ͷΛ͠·͢
͜ͷεϥΠυͷత ࠶ΠϯσΫγϯάͷߴԽʹ͑Δ ز͔ͭͷUJQTΛ͑Δ͜ͱ
࠶ΠϯσΫγϯά w ࠶ΠϯσοΫεͱ͔3FJOEFYͱ͔ݺͼํ͍Ζ͍Ζ w ͋ΔΠϯσοΫεͷυΩϡϝϯτΛผͷΠϯσοΫ εʹΠϯσΫγϯά͢͜͠ͱ w ͔Β3FJOEFY"1*͕Ͱ͖͓ͯखܰʹ࣮ࢪՄೳ w Ϛοϐϯάͷมߋ-VDFOFͷόʔδϣϯΞοϓͳ
ͲͰඞཁ
ࠓճͷߴԽͷର w @TPVSDFΛͬͯɺ͋ΔΠϯσοΫε TSDJOEFY ͷ υΩϡϝϯτΛผͷΠϯσοΫε EFTUJOEFY ʹ ΠϯσΫγϯά͢Δ w
ൈ͖ग़ͨ͠υΩϡϝϯτͷՃ͠ͳ͍ w ΞφϥΠβͷมߋγϟʔυͷมߋͳͲΛఆ
Ξϓϩʔν w 3FJOEFY"1*ͱಉ༷ͷॲཧΛ͢Δ3FJOEFY5PPMΛ࡞ ͯ͠ࢼߦࡨޡ͢Δʢ4DSPMM"1*ͱ#VML"1*Λར༻ʣ w &MBTUJDTFBSDIͷػೳ࠶ΠϯσΫγϯά༻ͷπʔ ϧͷ࣮ߦͷฒྻΛߴΊͯɺΫϥελͷϦιʔεΛ ͍͖ΕΔΑ͏ʹ͢Δ w &MBTUJDTFBSDIͷઃఆύϥϝʔλͷνϡʔχϯάʹ
ݴٴ͠·ͤΜ
3FJOEFY5PPM
4DSPMM"1* w ݕࡧ݁ՌͷεφοϓγϣοτΛͱΓɺͦͷઌ಄͔ΒυΩϡ ϝϯτΛ4DSPMM4J[Fຖʹஞ࣍తʹऔಘ͢ΔखஈΛఏڙ͢Δ ʢ3%#ͷΧʔιϧͷΑ͏ͳͷʣ w ૯υΩϡϝϯτɺ4DSPMM4J[Fͷ߹
#VML"1* w υΩϡϝϯτͷߋ৽আΛϦΫΤετͰෳ࣮ߦՄೳ w BDUJPO@BOE@NFUB@EBUBͷߦͱPQUJPOBM@TPVSDFͷߦΛ࿈ ଓͯ͠ॻ͘ w ࠓճෳߋ৽ͳͷͰɺJOEFYBDUJPOͱTPVSDFΛଓ͚Δ $
curl -XPOST ‘es-watanabe-1:9200/_bulk’ -d ' { "index" : { "_index" : "test", "_type" : "type1", "_id" : "1" } } { "field1" : "value1" } { "index" : { "_index" : "test", "_type" : "type1", "_id" : "2" } } { "field1" : "value2" } { "index" : { "_index" : "test", "_type" : "type1", "_id" : "3" } } { "field1" : "value3" } '
Ϋϥελߏ w ҎԼͷεϖοΫͷϚγϯͷΫϥελ w &MBTUJDTFBSDIͷόʔδϣϯBMQIB ཁૉ ੑೳ උߟ $16
()[ DPSF UISFBET .FNPSZ (# &MBTUJDTFBSDIͷYNY(# )%%TFRXSJUF .#T EEͰ؆қܭଌ )%%TFRSFBE .#T IEQBSNͰ؆қܭଌ /FUXPSL (CQT JQFSGͰܭଌ 04 6CVOUV ˞)%%TFRXSJUF3"*%ͷޮՌͰߴʹಈ࡞͍ͯ͠ΔΑ͏ʹݟ͑·͕͢ɺ ࣮ࡍϥϯμϜϥΠτͩͬͨΓͰ͜ΜͳࣈͰͳ͍ͷͰɺࢀߟఔʹߟ͍͑ͯͩ͘͞ɻ
࣮ݧσʔλ w ຊޠXJLJQFEJBهࣄͷΞʔΧΠϒ w TUSFBNFTͰYNMΛΠϯϙʔτ w υΩϡϝϯτɿສ݅ w σʔλαΠζɿ(#
NBQQJOHTTFUUJOHT w @BMMEJTBCMF w ϨϓϦΧ w γϟʔυ w SFGSFTI@JOUFSWBM w
JOEFYNFSHFTDIFEVMFSNBY@UISFBE@DPVOU DGIUUQTXXXFMBTUJDDPHVJEFFOFMBTUJDTFBSDIHVJEFDVSSFOUJOEFYJOHQFSGPSNBODFIUNM
NBQQJOHTTFUUJOHT { "settings": { "number_of_replicas": 0, "number_of_shards": 16, "index.refresh_interval":
"-1", "index.merge.scheduler.max_thread_count" : 1 }, "mappings": { "_default_": { "_all": {"enabled": false } } } }
ଌఆํ๏ w ࠶ΠϯσΫγϯά։͔࢝Βྃ·Ͱͷ࣌ؒΛܭଌ w ETUBUͷग़ྗΛࢹͯ͠ϘτϧωοΫΛ୳Δ w DBUUISFBE@QPPM"1*ͷ݁ՌΛඵִؒͰݟͯɺ &MBTUJDTFBSDIͷฒྻॲཧͷঢ়ଶΛ֬ೝ
ETUBUUDMNESO
DBUUISFBE@QPPM"1* w ϊʔυͷUISFBE@QPPMͷTUBUTΛ֬ೝ͢Δ"1* w UISFBE@QPPMͷछྨΛࢦఆͰ͖Δ CVML JOEFY TFBSDI SFGSFTI FUDʜ
w UISFBE@QPPMͷঢ়ଶΛ֬ೝͰ͖Δ BDUJWF RVFVF TJ[F SFKFDUFE
DBUUISFBE@QPPM"1* $ curl 'es-watanabe-1:9200/_cat/thread_pool? v&h=id,host,bt,ba,bq,bs,bc,st,sa,sq,ss,sc' id host bt ba bq
bs bc st sa sq ss sc vM4E es-watanabe-1 fixed 0 0 24 288 fixed 0 0 37 584 btge es-watanabe-2 fixed 0 0 24 13524 fixed 0 0 37 24143 zPof es-watanabe-3 fixed 0 0 24 13497 fixed 0 0 37 24115 3y0A es-watanabe-4 fixed 0 0 24 13609 fixed 0 0 37 24226 IyM- es-watanabe-5 fixed 0 0 24 12979 fixed 0 0 37 24616 iXmJ es-watanabe-6 fixed 0 0 24 13538 fixed 0 0 37 25176 iBLd es-watanabe-7 fixed 0 0 24 13388 fixed 0 0 37 25029 cKjt es-watanabe-8 fixed 0 0 24 13539 fixed 0 0 37 25173 CUCVMLUZQF CBCVMLBDUJWF CRCVMLRVFVF CTCVMLTJ[F CDCVMLDPNQMFUFE TUTFBSDIUZQF TBTFBSDIBDUJWF TRTFBSDIRVFVF TTTFBSDITJ[F TDTFBSDIDPNQMFUFE
DBUUISFBE@QPPM"1* $ curl 'es-watanabe-1:9200/_cat/thread_pool? v&h=id,host,bt,ba,bq,bs,bc,st,sa,sq,ss,sc' id host bt ba bq
bs bc st sa sq ss sc vM4E es-watanabe-1 fixed 0 0 24 288 fixed 0 0 37 584 btge es-watanabe-2 fixed 0 0 24 13524 fixed 0 0 37 24143 zPof es-watanabe-3 fixed 0 0 24 13497 fixed 0 0 37 24115 3y0A es-watanabe-4 fixed 0 0 24 13609 fixed 0 0 37 24226 IyM- es-watanabe-5 fixed 0 0 24 12979 fixed 0 0 37 24616 iXmJ es-watanabe-6 fixed 0 0 24 13538 fixed 0 0 37 25176 iBLd es-watanabe-7 fixed 0 0 24 13388 fixed 0 0 37 25029 cKjt es-watanabe-8 fixed 0 0 24 13539 fixed 0 0 37 25173 CUCVMLUZQF CBCVMLBDUJWF CRCVMLRVFVF CTCVMLTJ[F CDCVMLDPNQMFUFE TUTFBSDIUZQF TBTFBSDIBDUJWF TRTFBSDIRVFVF TTTFBSDITJ[F TDTFBSDIDPNQMFUFE CVML༻ͷεϨου࠷େͰ·Ͱಉ࣮࣌ߦՄೳ
୳ڀͷྲྀΕ w 3FJOEFY"1* w 4DSPMM"1*ͱ#VML"1*ΛผεϨουԽ w #VML"1*ͷฒྻԽ w 4DSPMM"1*ͷฒྻԽ w
3FJOEFY5PPMͷࢄ࣮ߦ w 44%Λ͏
3FJOEFY"1* w 4DSPMM4J[FΛม࣮͑ͯߦΛൺֱ w ҎԼͷίϚϯυΛΫϥελ֎ͷϚγϯ্Ͱ࣮ߦ $ curl -X POST
'es-watanabe-1:9200/_reindex' -d '{ "source":{"index":"src", "size": 1000}, "dest" :{"index":"dest"} }'
3FJOEFY"1* w ࠷Ͱඵ w $166TBHFˋ w σΟεΫॻ͖ࠐΈ.# w DBUUISFBE@QPPMͷCVMLBDUJWF ɺఔ
w ෦Ͱ4DSPMM"1*ͱ#VML"1*Λ ஞ࣍తʹ࣮ߦ 4DSPMM4J[F ࣮ߦ࣌ؒ ඵ ඵ ඵ ඵ ඵ
3FJOEFY"1* w ࠷Ͱඵ w $166TBHFˋ w σΟεΫॻ͖ࠐΈ.# w DBUUISFBE@QPPMͷCVMLBDUJWF ɺఔ
w ෦Ͱ4DSPMM"1*ͱ#VML"1*Λ ஞ࣍తʹ࣮ߦ 4DSPMM4J[F ࣮ߦ࣌ؒ ඵ ඵ ඵ ඵ ඵ Ϧιʔεͬͱ͍ͤΔͣ
4DSPMM"1*ͱ#VML"1*ͷผεϨουԽ w 3FJOEFY"1*4DSPMM"1*ͱ#VML"1*Λஞ࣮࣍ߦ w 3FJOEFY5PPMΛ࡞ͯ͠ɺͦΕΒΛผεϨουͰ ಈ͔ͨ͠Βͦ͏
4DSPMM"1*ͱ#VML"1*ͷผεϨουԽ w υΩϡϝϯτͷΩϡʔΛಋೖ w 4DSPMM"1*εϨουͻͨ͢Β ΩϡʔʹυΩϡϝϯτΛੵΉ w #VML"1*εϨουΩϡʔ͔ ΒυΩϡϝϯτΛऔΓग़ͯ͠Π ϯσΫγϯά͢Δ
4DSPMM"1*ͱ#VML"1*ͷผεϨουԽ w ͘ͳͬͨʂ w ࠷Ͱඵ w Ϧιʔε༻ྔ3FJOEFY"1*ͱେࠩແ͠ w πʔϧಋೖʹΑΔෛՙ͕ฒྻԽͷϝϦο τΛେ෯ʹ্ճΔ
w ·ͩ߄ͯΔ࣌ؒͰͳ͍ 4DSPMM4J[F ࣮ߦ࣌ؒ ඵ ඵ ඵ ඵ
4DSPMM"1*ͱ#VML"1*ͷผεϨουԽ w ͘ͳͬͨʂ w ࠷Ͱඵ w Ϧιʔε༻ྔ3FJOEFY"1*ͱେࠩແ͠ w πʔϧಋೖʹΑΔෛՙ͕ฒྻԽͷϝϦο τΛେ෯ʹ্ճΔ
w ·ͩ߄ͯΔ࣌ؒͰͳ͍ 4DSPMM4J[F ࣮ߦ࣌ؒ ඵ ඵ ඵ ඵ &MBTUJDTFBSDI͔Βͨ͜͠ͱͰ "1*ͷฒྻ࣮ߦͳͲ͘͢͠ͳͬͨ
#VML"1*ͷฒྻԽ w UISFBE@QPPMͰCVMLBDUJWF͕."9 w ࣮ࡍʹ ఔ͔͍͑ͯ͠ͳ͍ w #VML"1*ΑΓ4DSPMM"1*ͷํ͕ॲཧ͕ૣ͍ɻ ͭ·ΓɺΩϡʔʹະॲཧͷυΩϡϝϯτ͕ཷ·Δ w
#VML"1*ͷϦΫΤετͰCVMLBDUJWFͷεϨουɺϊʔυͷ γϟʔυ·Ͱ૿͑ΔՄೳੑ͕͋Δ w TIBSEOPEFͳͷͰɺBDUJWFUISFBETCVMLBQJSFRVFTU w CVMLBDUJWF͕."9ͳͷͰɺഒฒྻʹ࣮ߦͯ͠ྑͦ͞͏
#VML"1*ͷฒྻԽ w #VML"1*Λฒྻ࣮ߦΛࢦఆՄೳ ʢ#VMLฒྻʣ w ΩϡʔʹੵΉυΩϡϝϯταΠζ ΛࢦఆՄೳʢ#VML4J[Fʣ w #VMLฒྻ #VML4J[F
4DSPMM4J[F ΛมԽͤͯ͞ܭଌ
#VML"1*ͷฒྻԽ w ࠷Ͱඵʢ3FJOEFY"1*ͷഒʣ w 4DSPMM"1*ͱ#VML"1*Λड͚͚ΔϊʔυͰఔͷ$16༻ w ͦΕҎ֎ͷϊʔυఔͷ$16༻ w σΟεΫॻ͖ࠐΈʙ.#T w
UISFBEQPPMͷCVMLBDUJWFʹಧ͔ͳ͍ఔ #VMLฒྻ #VML4J[F 4DSPMM4J[F ࣮ߦ࣌ؒ ඵ ඵ ඵ ඵ ඵ ඵ
#VML"1*ͷฒྻԽ w ࠷Ͱඵʢ3FJOEFY"1*ͷഒʣ w 4DSPMM"1*ͱ#VML"1*Λड͚͚ΔϊʔυͰఔͷ$16༻ w ͦΕҎ֎ͷϊʔυఔͷ$16༻ w σΟεΫॻ͖ࠐΈʙ.#T w
UISFBEQPPMͷCVMLBDUJWFʹಧ͔ͳ͍ఔ #VMLฒྻ #VML4J[F 4DSPMM4J[F ࣮ߦ࣌ؒ ඵ ඵ ඵ ඵ ඵ ඵ Ϧιʔεతʹ ·ͩ·͍͚ͩͦ͏
4DSPMM"1*ͷฒྻԽ w #VML"1*ΛฒྻԽͨ͠ͳΒ4DSPMM"1*ฒྻԽ͍ͨ͠ w ௨ৗɺ4DSPMM"1*ஞ࣍తʹΧʔιϧΛճ͢ඞཁ͕͋Δͷ ͰɺฒྻԽͰ͖ͳ͍ w ͔Β4DSPMM"1*Λฒྻʹ࣮ߦ͢ΔͨΊͷ4MJDFE 4DSPMMͱ͍͏ػೳ͕͋Δ
4MJDFE4DSPMM w εφοϓγϣοτΛࢦఆͨ͠ͷ4MJDFʹׂ w ݸʑͷ4MJDFΛผʑͷ4DSPMMͱͯ͠ར༻Ͱ͖Δ w 4MJDFΛͱͨ͠߹ɺͭͷ4DSPMMʹׂ͞ΕɺͦΕͧΕʹ ͱ͍͏ࣝผࢠ͕༩͑ΒΔ
4MJDFE4DSPMM w εφοϓγϣοτऔಘ࣌ʹTMJDFͷJEΛࢦఆ͢Δ w TMJDFNBYύϥϝʔλͰࢦఆ͢Δ w TMJDF͕ͷ߹ɺTMJDFͱTMJDFΛผεϨουͰѻ͏͜ͱͰฒྻԽՄೳ # Thread1
curl -XGET 'localhost:9200/src/_search?scroll=1m' -d '{ "slice": { "id": 0, "max": 2 } }' # Thread2 curl -XGET 'localhost:9200/src/_search?scroll=1m' -d '{ "slice": { "id": 1, "max": 2 } }'
4DSPMM"1*ͷฒྻԽ w 4MJDFE4DSPMMʹΑΓɺ4DSPMM"1* Λฒྻʹ࣮ߦՄೳ w 4MJDF #VMLฒྻͱ ͯ͠ #VML4J[F 4DSPMM4J[FΛมԽ
ͤͯ͞ܭଌ w 4MJDFTIBSEΑΓ૿͢ͱ ͘ͳΔͱ͍͏ϦϑΝϨϯεʹै͍ɺ TIBSEͷಉͷͰݻఆ
4DSPMM"1*ͷฒྻԽ w ࠷Ͱඵʢ3FJOEFY"1*ͷഒʣ w 4DSPMM"1*ͱ#VML"1*Λड͚͚ΔϊʔυͰఔͷ$16༻ w ͦΕҎ֎ͷϊʔυఔͷ$16༻ w σΟεΫॻ͖ࠐΈʙ.#T w
UISFBEQPPMͷCVMLBDUJWFʹಧ͔ͳ͍ఔ #VMLฒྻ #VML4J[F 4MJDF 4DSPMM4J[F ࣮ߦ࣌ؒ ඵ ඵ ඵ ඵ
4DSPMM"1*ͷฒྻԽ w ࠷Ͱඵʢ3FJOEFY"1*ͷഒʣ w 4DSPMM"1*ͱ#VML"1*Λड͚͚ΔϊʔυͰఔͷ$16༻ w ͦΕҎ֎ͷϊʔυఔͷ$16༻ w σΟεΫॻ͖ࠐΈʙ.#T w
UISFBEQPPMͷCVMLBDUJWFʹಧ͔ͳ͍ఔ #VMLฒྻ #VML4J[F 4MJDF 4DSPMM4J[F ࣮ߦ࣌ؒ ඵ ඵ ඵ ඵ ͘ͳ͕ͬͨ Ϧιʔεతʹେࠩͳ͠
3FJOEFY5PPMͷࢄ࣮ߦ w "1*ͷฒྻԽ͏͓ෲ͍ͬͺ͍ w Γ͍ͨ͜ͱTSDΛEFTUʹΠϯσΫγϯά͢Δ͚ͩ w TSDͱEFTUͷTIBSEJEΛϊʔυͰἧ͑ͯɺϊʔυͷϩʔΧ ϧTIBSEͷσʔλΛ࠶ΠϯσΫγϯά͢Εྑ͍ͷͰʁ
3FJOEFY5PPMͷࢄ࣮ߦ w TIBSEJE$MVTUFS3FSPVUF"1*Λͬͯἧ͑Δ w ֤ϊʔυ͕อ࣋͢ΔTIBSEJE4FBSDI4IBSE"1*Ͱऔಘ w औಘͨ͠TIBSEJEΛ4FBSDI"1*ͷQSFGFSFODFύϥϝʔλʹࢦ ఆ͢ΔͱɺϩʔΧϧTIBSEͷυΩϡϝϯτͷΈΛऔಘͰ͖Δ curl
-XGET ‘localhost:9200/src/_search?scroll=1m&preference=_shards:1,2'
3FJOEFY5PPMͷࢄ࣮ߦ w 3FJOEFY5PPMΛϊʔυ্ͰϩʔΧϧʹ࣮ߦ w 4MJDF #VMLฒྻͱͯ͠ #VML4J[F 4DSPMM4J[FΛมԽͤͯ͞ܭଌ
3FJOEFY5PPMͷࢄ࣮ߦ w ࠷Ͱඵʢ3FJOEFY"1*ͷഒʣ w ʙఔͷ$16༻ w σΟεΫॻ͖ࠐΈʙ.#T w UISFBEQPPMͷCVMLBDUJWF΄΅Λࣔ͢
#VMLฒྻ #VML4J[F 4MJDF 4DSPMM4J[F ࣮ߦ࣌ؒ ඵ ඵ ඵ
3FJOEFY5PPMͷࢄ࣮ߦ w ࠷Ͱඵʢ3FJOEFY"1*ͷഒʣ w ʙఔͷ$16༻ w σΟεΫॻ͖ࠐΈʙ.#T w UISFBEQPPMͷCVMLBDUJWF΄΅Λࣔ͢
#VMLฒྻ #VML4J[F 4MJDF 4DSPMM4J[F ࣮ߦ࣌ؒ ඵ ඵ ඵ ͘ͳͬͨ͠ Ϧιʔε͍ͤͯΔʂ
TIBSEJEΛἧ͑ͳ͍߹ w TIBSEΛมߋ͢ΔϢʔεέʔεΛఆ w 3FJOEFY5PPM֤ϊʔυ্Ͱ࣮ߦ͢ΔͷͰॲཧͷࢄ͞ΕΔ w ϩʔΧϧͰͷ࠶ΠϯσΫγϯάͰͳ͍ͷͰ௨৴ൃੜ͢Δ w 4MJDF #VMLฒྻͱͯ͠
#VML4J[F 4DSPMM4J[FΛ มԽͤͯ͞ܭଌ
TIBSEJEΛἧ͑ͳ͍߹ w ࠷Ͱඵ w एׯ͍ͷͷϩʔΧϧͷ߹ͱେࠩͳ͠ w Ϧιʔεফඅେࠩͳ͠ w QSFGFSFODFࢦఆʹΑΔπʔϧͷࢄͷޮՌ͕େ͖͘ɺϩʔΧϧͰ ͋Δ͜ͱͦΕ΄ͲॏཁͰͳ͍πʔϧͷ࣮͕؆୯ʹͳΔ
#VMLฒྻ #VML4J[F 4MJDF 4DSPMM4J[F ࣮ߦ࣌ؒ ඵ ඵ ඵ
44%Λ͏ w /7.F44%ΛੵΜͩϚγϯ͕͋ͬͨͷͰܭଌͯ͠ Έͨɻػࡐͷ߹্$16εέʔϧΞοϓ w ߏ࠷ͷ3FJOEFY5PPMͷࢄ࣮ߦͱಉҰ w $16ͱσΟεΫͷεϖοΫͪ͜Β ཁૉ
ੑೳ උߟ $16 ()[ DPSF UISFBET 44%TFRXSJUF (#T EEͰ؆қܭଌ 44%TFRSFBE .#T IEQBSNͰ؆қܭଌ
44%Λ͏ w ࠷Ͱඵ w ͘ͳ͚ͬͨͲेඵͰऴΘͬͯ͠·͏ͷͰɺπʔϧͷ্ཱͪ͛ ॲཧʢεϨουىಈͳͲʣͷ࣌ؒൺ͕ߴͦ͏ w ࠶ΠϯσΫγϯάͷ͕࣌ؒਖ਼͘͠ܭଌͰ͖͍ͯΔ͔ո͍͠ #VMLฒྻ
#VML4J[F 4MJDF 4DSPMM4J[F ࣮ߦ࣌ؒ ඵ ඵ ඵ ඵ
υΩϡϝϯτΛഒʹෳ w υΩϡϝϯτΛ૿ͤ࠶ΠϯσΫγϯάࣗମͷॲཧ࣌ؒͷൺ Λ্͛ΒΕͦ͏ w υΩϡϝϯτΛഒʹෳͯ͠ܭଌͨ͠ w ສυΩϡϝϯτɺ(# w Ϛγϯ͕εέʔϧΞοϓͯ͠ΔͷͰγϟʔυมߋͯ͠Έͨ
υΩϡϝϯτΛഒʹෳ w ࠷Ͱඵ w .#TʢສઍEPDTTʣఔͷ w (#Tݟ͖͑ͯͯເ͕͕Δ w )%%ͰͷϚγϯͰͷສυΩϡϝϯτͷ࣮ߦ࣌ؒඵͩͬ ͨͷͰɺ44%ԽͰഒ͙Β͍͘ͳͬͨ
γϟʔυ #VMLฒྻ #VML4J[F 4MJDF 4DSPMM4J[F ࣮ߦ࣌ؒ ඵ ඵ ඵ ඵ
࣮ߦ࣌ؒൺֱ ߏ ࣮ߦ ഒ 3FJOEFY"1* ඵ 4DSPMM"1*ͱ#VML"1*ΛผεϨουԽ ඵ
#VML"1*ΛฒྻԽ ඵ 4DSPMM"1*ΛฒྻԽ ඵ 3FJOEFY5PPMͷࢄ࣮ߦ ඵ 44%Λ͏ ඵ w #VML"1*ͷฒྻԽɺ3FJOEFY5PPMͷࢄ࣮ߦͷޮՌ͕ߴ͍ w ϊʔυ૿ͤεέʔϧ͢Δ3FJOEFY5PPMͷࢄ࣮ߦ͕͓͢͢Ί w #VML"1*ͷฒྻԽ͕Ͱ͖Ε4DSPMM"1*ͷฒྻԽେͨ͠खؒͰ ͳ͍ͷͰɺ࠷ޙͷ٧ΊʹͲ͏ͧ ˞্͔ΒॱʹྦྷੵͰվળΛద༻͍ͯ͠·͢
ҙࣄ߲ w Ϣʔβʔૢ࡞ͷݕࡧϦΫΤετΛःஅͰ͖ͳ͍Α͏ ͳঢ়گͰɺϦιʔεΛ͍Βͳ͍Α͏ʹ͢Δ w #VMLฒྻΛ্͛͗͢Δͱɺ#VML"1*λεΫͷΩϡʔ ͕ᷓΕͯSFKFDU͕ൃੜ͢Δɻ݁ՌɺͦͷλεΫ͕ࣺ ͯΒΕͯυΩϡϝϯτͷίϐʔ͕ෆશʹͳΔ w અͷ͋ΔϦιʔεར༻Λ৺͕͚·͠ΐ͏
·ͱΊ w ಛఆϢʔεέʔεʹ͓͚Δ࠶ΠϯσΫγϯάͷߴ ԽΛ୳ٻͨ͠ w 4DSPMM"1*ͱ#VML"1*Λ͍͢͜ͱͰɺ 3FJOEFY"1*ͱൺֱͯ͠ഒҎ্ߴʹͳͬͨ w ૣ͘ͷBMQIB͕ͱΕΔͱ͍͍ͳɻนʛТŋ ŧŽŕ
8FBSFIJSJOH w ΞϓϦέʔγϣϯج൫νʔϜʢେମͳΜͰΔͭΒʣ w ϓϩμΫτ։ൃνʔϜ w 43&νʔϜ w ੜ࢈ੑ্νʔϜ w
ଞʹ৭ʑνʔϜ͋Γ·͢ w ΨπΨπͯ͠ͳ͍͚Ͳಇ͖͍͢ͱࢥ͏ʢࢲݟʣ w ͝ڵຯ͋Ε࠾༻ϖʔδݟͯΈ͍ͯͩ͘͞ IUUQDZCP[VDPKQDPNQBOZKPCSFDSVJUNFOUMJTU
͓͠·͍ ͝੩ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ɻ