Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
GREEにおける全文検索の歴史
Search
Nobutoshi Ogata
March 26, 2013
Technology
0
130
GREEにおける全文検索の歴史
Nobutoshi Ogata
March 26, 2013
Tweet
Share
More Decks by Nobutoshi Ogata
See All by Nobutoshi Ogata
Datadogセミナー 2025/3/13 Datadog On-Callの活用事例のご紹介
nobu666
0
320
サーバサイドの技術スタック・アーキテクチャ総ざらい - SmartNews Tech Night in Fukuoka Vol.1
nobu666
1
17k
SmartNews x PLAID - Cost cut and AWS Enterprise Support
nobu666
0
260
Why Slack?
nobu666
0
300
A Complete Work of SmartNews's SRE
nobu666
2
3.1k
SRE at SmartNews
nobu666
0
8k
SmartNews の最近の取り組みについて
nobu666
4
3.5k
Introducing in-hourse PaaS
nobu666
1
300
Monitoring of SmartNews
nobu666
0
170
Other Decks in Technology
See All in Technology
普通のチームがスクラムを会得するたった一つの冴えたやり方 / the best way to scrum
okamototakuyasr2
0
110
「何となくテストする」を卒業するためにプロダクトが動く仕組みを理解しよう
kawabeaver
0
430
Create Ruby native extension gem with Go
sue445
0
130
Oracle Cloud Infrastructure IaaS 新機能アップデート 2025/06 - 2025/08
oracle4engineer
PRO
0
110
「その開発、認知負荷高すぎませんか?」Platform Engineeringで始める開発者体験カイゼン術
sansantech
PRO
2
510
AI時代を生き抜くエンジニアキャリアの築き方 (AI-Native 時代、エンジニアという道は 「最大の挑戦の場」となる) / Building an Engineering Career to Thrive in the Age of AI (In the AI-Native Era, the Path of Engineering Becomes the Ultimate Arena of Challenge)
jeongjaesoon
0
240
20250913_JAWS_sysad_kobe
takuyay0ne
2
250
5分でカオスエンジニアリングを分かった気になろう
pandayumi
0
260
Rustから学ぶ 非同期処理の仕組み
skanehira
1
150
react-callを使ってダイヤログをいろんなとこで再利用しよう!
shinaps
2
260
テストを軸にした生き残り術
kworkdev
PRO
0
210
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
10
75k
Featured
See All Featured
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
580
Fireside Chat
paigeccino
39
3.6k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.7k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
36
2.5k
Designing for humans not robots
tammielis
253
25k
Context Engineering - Making Every Token Count
addyosmani
3
58
The Language of Interfaces
destraynor
161
25k
Optimizing for Happiness
mojombo
379
70k
Docker and Python
trallard
46
3.6k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Testing 201, or: Great Expectations
jmmastey
45
7.7k
Transcript
GREEʹ͓͚Δ શจݕࡧͷྺ࢙ GREE Inc. Infrastructure Platform Development Nobutoshi Ogata (@nobu666)
about me • @nobu666 • ย۱Ͱ͘͢Ϳ͍ͬͯ·͢ • ೣͱΠεΩʔͱϫΠϯ
GREEͷݕࡧ
ݕࡧͷྺ࢙ (1) • Senna • 2007ͱ͔ͦͷลͷ…? • ҆ఆՔಇ͠ͳ͔ͬͨ
ݕࡧͷྺ࢙ (1) • Tritonn • 2009͘Β͍·Ͱ • σʔλϑΝΠϧ͕յΕΔ • ͬͺΓ҆ఆ͠ͳ͍
• MySQLͷόʔδϣϯ͍͋͛ͨ
ݕࡧͷྺ࢙ (3) • Lucene • 2012ॳ಄·Ͱ • खಈindex optimizeͱͷઓ͍
ݕࡧͷྺ࢙ (4) • Solr • ΠϚίί • 2012ॳ಄͔Β
SolrԽͷԸܙ • ΄΅ϝϯςφϯεϑϦʔ • SPoFϑϦʔ • શମతͳݕࡧ্
Lucene͔ΒSolr3.6
·ͣΔ͜ͱ
·ͣ͜ΕΛങ͏Μͩ!!
͍ͭങ͏͔?
SolrԽͷલఏ݅ • ଞϓϩμΫτӨڹΛग़͞ͳ͍ • ϑϩϯτΤϯυ͔Βͷݺͼग़͠ ޓੑΛҡ࣋͢Δ • Ease of maintenance
ޙํޓ • HTTP GETΛड͚ͯXMLΛฦ٫ • Lucene+TomcatͰड͚͚͍ͯͨ ΫΤϦΛSolr͚ʹม • Solrͷฦ٫͢ΔXMLΛΧελϚΠζ •
IndexingґཔͷI/Fม͑ͳ͍
Ease of maintenance • ͯ͢ͷαʔόʔΛԽ • αʔϏεӨڹͳ͠ʹindex optimize
←WebΞϓϦ͕Queueొ ←indexer͕Masterొ ɹ͜͜Ͱఆظతʹoptimize ←ΫΤϦͷडɺฦ٫ ←ΫΤϦͱϨεϙϯεͷม ɹ ΫϥΠΞϯτ͔ΒͷΫΤϦड query translation
؆୯ʹઆ໌ • ݱঢ়7schema • αʔόʔ40ͪΐͬͱ • ϚϧνίΞ͑ͬͱ٧ΊΒΕΔ • શ෦Ͱ250qps+ ͘Β͍
None
None
ෛՙͷ • େຌ0:00ۙʹෛՙͷϐʔΫ • schemaʹΑͬͯ΄ͱΜͲ ΘΕ͍ͯͳ͍ • Range Query͍·͘ΓͳͷͰ slave͕Ұ൪ॏ͘ͳΔ
࡞Γ͜Έ͕ඞཁͩͬͨ෦(1) • Indexer • Masterࢄͯ͠Indexing • ϚϧνεϨουͰޮతʹ
࡞Γ͜Έ͕ඞཁͩͬͨ෦(2) • Query Translation • ෛͷҨ࢈ͷܧঝ • SchemaຖͷಛघͳϑΟϧλ༩ • ੨গอޢͳΜͪΌΒ͚
• ਓྗࢹͱͷ݉Ͷ߹͍ • ࢹ • Replication, SSH, Ping, Solr Ping
ࠓͰ໘ͳ͜ͱ • εΩʔϚมߋΛແఀࢭͰΔͷ ͍͢͝ΊΜͲ͍ • SlaveΛMasterʹঢ֨͢ΔɺͳͲͷ ૢ࡞खಈͰઃఆϑΝΠϧΛ͍͡Δ
ݕࡧͷ͜Ε͔Β
վળ͍ͨ͠ͱ͜ • ਫ਼ • ຊޠҎ֎ͰΘΕΔͷͰ ࣙॻΛ͏&ϝϯς͢Δͷ͕ ࣄ্࣮͍͠ • ͞ΒͳΔࣗಈԽ
ࢼ͍ͨ͜͠ͱ • AmazonͷαʔϏε͡Όͳ͍͜ͱͰ ͓ͳ͡ΈͷElasticSearch • Solr Cloud • ͜Εͬͱલʹ͋ͬͨΒԶ ͜ΜͳʹؤுΒͳͯ͘ྑ͔ͬͨઆ
Any Questions?
Join us! http://jobs.gree.net/