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
LLMOpsのパフォーマンスを支える技術と現場で実践した改善
Search
po3rin
August 15, 2025
Programming
8
1k
LLMOpsのパフォーマンスを支える技術と現場で実践した改善
po3rin
August 15, 2025
Tweet
Share
More Decks by po3rin
See All by po3rin
LLMは麻雀を知らなすぎるから俺が教育してやる
po3rin
4
2.4k
M3におけるCI/CDパイプラインを新鮮に保つ仕組み
po3rin
0
380
Go Templateを使った フロントエンド開発を採用した 経緯と所感
po3rin
1
350
検索基盤移行時の思考
po3rin
0
4.3k
Go1.19で採用された Pattern-defeating Quicksort の紹介
po3rin
7
6.1k
Elasticsearchを負荷から守るesguard
po3rin
0
310
Sudachi×Elasticsearchへの移行と医療検索システム精度改善
po3rin
1
950
eskeeperを使ったファイル定義によるindex管理
po3rin
2
520
M3 情報検索/推薦論文輪読会 ~SIGIR祭~ (SIGIR2021: Session 6D – IR Models)
po3rin
0
130
Other Decks in Programming
See All in Programming
AIレビュアーをスケールさせるには / Scaling AI Reviewers
technuma
2
240
モバイルアプリからWebへの横展開を加速した話_Claude_Code_実践術.pdf
kazuyasakamoto
0
300
FindyにおけるTakumi活用と脆弱性管理のこれから
rvirus0817
0
390
AI OCR API on Lambdaを Datadogで可視化してみた
nealle
0
230
複雑なドメインに挑む.pdf
yukisakai1225
5
940
コンテキストエンジニアリング Cursor編
kinopeee
1
750
2025 年のコーディングエージェントの現在地とエンジニアの仕事の変化について
azukiazusa1
16
7.1k
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
160
go test -json そして testing.T.Attr / Kyoto.go #63
utgwkk
2
220
ソフトウェアテスト徹底指南書の紹介
goyoki
1
140
機能追加とリーダー業務の類似性
rinchoku
2
530
Langfuseと歩む生成AI活用推進
licux
3
320
Featured
See All Featured
Why Our Code Smells
bkeepers
PRO
339
57k
Music & Morning Musume
bryan
46
6.8k
StorybookのUI Testing Handbookを読んだ
zakiyama
30
6.1k
Fireside Chat
paigeccino
39
3.6k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.4k
Building an army of robots
kneath
306
46k
GraphQLとの向き合い方2022年版
quramy
49
14k
The Straight Up "How To Draw Better" Workshop
denniskardys
236
140k
Side Projects
sachag
455
43k
The Art of Programming - Codeland 2020
erikaheidi
55
13k
Documentation Writing (for coders)
carmenintech
73
5k
Transcript
)JSPNV/BLBNVSBQFSGUPLZP --.0QTͷύϑΥʔϚϯεΛࢧ͑Δٕज़
)JSPNV/BLBNVSB )JSPNV /BLBNVSB QPSJO "*.-0QT&OHJOFFS*OUFSFTUJOH JO*OGPSNBUJPO3FUSJFWBM
-BZFS9ͷ--.0QT
-BZFS9ݱࡏ"*"HFOUΛΰϦΰϦ ਐΊ͍ͯΔ https://layerx.co.jp/news/20250401/
--.0QTॏཁج൫ ϓϩϯϓτόʔδϣϯཧ --.࣮ߦ࣌ͷτϨʔεͳͲͷΦϒβʔόϏϦςΟ Ϟσϧ͝ͱͷਫ਼ݕূ ධՁσʔληοτཧ ࣮ݧͷཧ
-BOHGVTFΠϯϑϥߏ w Ϋϥυ൛ͱηϧϑϗετ൛͕͋Δ w Ϋϥυ൛ຊϦʔδϣϯ͕ͳ͘ɺσʔλཧͷ؍͔ΒηϧϑϗετΛબ w σʔλετΞͱͯ͠1PTUHSF42- 4 $MJDL)PVTF Λ༻͍Δ
$MJDL)PVTFͱ Φʔϓϯιʔεͷੳ͚ 0-"1 ྻࢦσʔλϕʔε -BOHGVTFτϨʔε݁Ռͷ֨ೲઌͱͯ͠ར༻ ॻ͖ࠐ·ΕͨσʔλϒϩοΫετϨʔδͰอ͞ΕΔ "84ͷ߹&'4ͳͲ ࠓճ&'4Λ࠾༻ ෳαʔόʹΑΔΫϥελߏʹରԠ
ΞʔΩςΫνϟ -BOHGVTF "-#ܦ༝ͷ&$4PO'BSHUFB ୯Ұͷ&$44FSWJDFɺ"VUP4DBMJOH༗ޮԽ $MJDL)PVTF /-#ܦ༝ͷ&$4PO'BSHUFB αʔό͝ͱʹݸผͷ&$44FSWJDFΛ࡞ ෦௨৴ϩʔυόϥϯαΛڬ·ͣ௨৴
ͱվળ
ແࣄՔಇʂͱࢥͬͨΒʜ • ຖͷΑ͏ʹλεΫ͕ෆ҆ఆͳঢ়ଶʹ • Langfuse ͕τϨʔεΛهͰ͖ͳ͔ͬͨͱΤϥʔΛు͘ • Max attempts reached
for * record. Dropping record. • େྔͷHTTPλΠϜΞτ • ClickhouseWriter.writeToClickhouse Error: Timeout error.
$16.FNPSZ·ͩ༨༟͕͋Δ
"*ωοτϫʔΫͷͩͱݴ͍ுͬͯΔ ωοτϫʔΫͷͰ͠ΐ͏ʂʂʂ ͔͠͠ɺ֤λΠϜΞτઃఆΛ֬ೝͯ͠ɺͳͦ͞͏ɻ ͦͦT͔͚ͯτϨʔεʹॻ͖ࠐΊͳ͍%#͕͓͔͍͠ɻ
&'4ͷΛൃݟ w 5ISPVHIQVUVUJMJ[BUJPO͕ৗʹߴ͍͜ͱ͕ൃ֮
&'45ISPVHIQVUNPEFʹ͍ͭͯ w 5ISPVHIQVUVUJMJ[BUJPO͕ৗʹߴ͍͜ͱ͕ൃ֮ • EFS ʹεϧʔϓοτϞʔυ͕3छྨ͋Γɺཁ݅ʹ߹ΘͤͯબՄೳ • Elastic: ར༻ঢ়گʹ߹Θͤͯࣗಈతʹεέʔϧ •
Bursting: ετϨʔδ༻ྔʹൺྫͯ͠εϧʔϓοτ૿͑Δ • Provisioned: ࢦఆͨ͠εϧʔϓοτྔΛݻఆͰ֬อ • ֘ͷ EFS Bursting ʹͳ͍ͬͯͨ • ͍࢝Ί͔ͨΓͰ༻ྔ 3~4GiB ΄Ͳ • ετϨʔδ 1GiB ͋ͨΓ 50KiBps ͷεϧʔϓοτ → 200KiB/s ΄Ͳ͔͠ͳ͍
&'45ISPVHIQVUNPEFͷมߋ • Bursting → Elastic มߋͯ͠ঢ়گ͕վળͨ͠ • AWS ίϯιʔϧͷॳظ Elastic
• Terraformaws provider ͷॳظ Bursting ͳ͜ͱΛݟམͱ͍ͯͨ͠ (ຌϛε)
$MJDL)PVTF%FFQ%JWF
$MJDL)PVTFͷύϑΥʔϚϯεΛࢧ͑Δٕज़ w τϨʔεͷॻ͖ࠐΈͰΤϥʔ͕ൃੜ͍ͯͨͨ͠ΊɺͦͷลͷڍಈΛௐࠪ͠·ͨ͠ɻ
$MJDL)PVTFͷύϑΥʔϚϯεΛࢧ͑Δٕज़ • InsertΛड͚ΔͱɺPartͱ͍͏୯ҐͰ σʔλΛ֨ೲ͢Δɻ • ҰؾʹInsert͢ΔͷͰͳ͘ɺҰ Bufferʹ֨ೲ͢Δ͜ͱͰɺલͬͯ σʔλΛιʔτͯ֨͠ೲ͢Δɻ
$MJDL)PVTFͷύϑΥʔϚϯεΛࢧ͑Δٕज़ • PartΛ࡞ΔࡍʹσʔλΛιʔτ͠ɺΧϥ Ϝʹ͚ͯΠϯσοΫεใͱڞʹPartͱ ͯ͠อଘ • ιʔτ͢Δ͜ͱʹΑΓɺΠϯσοΫεใ ͔ΒͲͷϑΝΠϧʹඞཁͳσʔλ͕֨ೲ͞ Ε͍ͯΔ͔͕ܭࢉ͘͢͠ͳ͍ͬͯΔɻ
$MJDL)PVTFͷύϑΥʔϚϯεΛࢧ͑Δٕज़ Compress columnsͰɺgranuleͱ͍͏୯ҐʹσʔλΛ͚ɺprimary.idxͱ͍͏ϑΝΠϧʹ Ͳͷൣғͷσʔλ͕͋Δ͔Λอଘ͓ͯ͘͜͠ͱͰɺߴͳσʔλΞΫηεΛ࣮ݱ͍ͯ͠Δɻ
MarkΧϥϜ͝ͱʹ࡞ΒΕอଘͨ͠granuleͷॴΛḷΓ͘͢͢Δ $MJDL)PVTFͷύϑΥʔϚϯεΛࢧ͑Δٕज़
$MJDL)PVTFͷύϑΥʔϚϯεΛࢧ͑Δٕज़ ϨϓϦέʔγϣϯ࣌ʹ࣍ͷσʔλΛૹ৴͢Δඞཁ͕͋Γ·͢ɻ w ΧϥϜσʔλϑΝΠϧ DPMVNO@OBNFCJOܗࣜͷѹॖ͞Εͨσʔλ w ΠϯσοΫεϑΝΠϧ QSJNBSZJEYͳͲͷϓϥΠϚϦΩʔΠϯσοΫε w
ϚʔΫϑΝΠϧ DPMVNO@OBNFNSLͳͲͷߦҐஔϚʔΧʔ w ϝλσʔλϑΝΠϧ DIFDLTVNTUYU DPMVNOTUYUͳͲͷύʔπهड़ใ
$MJDL)PVTFͷύϑΥʔϚϯεΛࢧ͑Δٕज़ 1BSUTͷϚʔδఆظతʹൃੜ͠·͢ɻ ϑΝΠϧγεςϜ͜ΕΛఆͯ͠ε ϧʔϓοτΛ֬อ͢Δඞཁ͕͋ͬͨɻ
$MJDL)PVTFͷύϑΥʔϚϯεΛࢧ͑Δٕज़ • ClickHouseͰϨϓϦέʔγϣϯɺϚʔδͱ͍ͬͨඇಉظॲཧ͕ൃੜ͠·͢ɻ • ϨϓϦέʔγϣϯ࣌ʹɺ͜ͷPartsΛHTTPܦ༝ͰϨϓϦέʔγϣϯ͢Δͨ ΊɺωοτϫʔΫεϧʔϓοτؾΛ͚ͭΔඞཁ͕͋Δɻ • ࠓճͷ߹ωοτϫʔΫͷλΠϜΞτΑΓɺϑΝΠϧγεςϜͷλΠϜ Ξτ͕͘ઃఆ͞Ε͍ͯͨͷ͕ࠜຊͷʹؾ͖ͮʹ͍͘ݪҼͰͨ͠ɻ
·ͱΊ
"*ʹฉ͚ͩ͘ͰΘ͔Βͳ͍ࠜຊݪҼ༨༟Ͱଘࡏ͢Δ ύϑΥʔϚϯεͷݟɺΠϯϑϥࣝɺΞϧΰϦζϜͷࣝҾ͖ଓ͖ඞ ཁɻֶΜͰ͍͖·͠ΐ͏ʂʂʂʂ
"*࣌Ͱ%FFQ%JWF͢Δ͜ͱՁ ཪଆͰಈ͍͍ͯΔॲཧΛ۩ମతʹΔ͜ͱͰɺύϑΥʔϚϯεɺ҆ఆੑΛ্͛Δͱ ͖ʹͲ͜ʹΛ͚ͭΕྑ͍ͷ͔ͷௐ͕ࠪඇৗʹ͘͢͠ͳͬͨɻ ϩάϝτϦΫε͚ͩΛݟͯରԠΛ૾͢ΔͷͰͳ͘ɺ࣮ࡍʹཪଆΛཧղ͢Δ͜ ͱͰɺ֬৴Λ࣋ͬͨࠜຊղܾ͕Ͱ͖ΔΑ͏ʹͳͬͨɻ
ϒϩάʹͯ͠·͢ʂʂ tech.layerx.co.jp/entry/deep-dive-clickhouse
)JSPNV/BLBNVSBQFSGUPLZP --.0QTͷύϑΥʔϚϯεΛࢧ͑Δٕज़ͱ ݱͰ࣮ફͨ͠վળ