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
RDB anti-pattern that Java engineer wants to know
Search
soudai sone
May 20, 2017
Technology
6
11k
RDB anti-pattern that Java engineer wants to know
JJUG CCC 2017 spring での登壇資料です。
http://www.java-users.jp/ccc2017spring/
soudai sone
May 20, 2017
Tweet
Share
More Decks by soudai sone
See All by soudai sone
抽象化をするということ - 具体と抽象の往復を身につける / Abstraction and concretization
soudai
27
14k
目の前の仕事と向き合うことで成長できる - 仕事とスキルを広げる / Every little bit counts
soudai
26
7.8k
ソフトウェアエンジニアとしてキャリアの螺旋を駆け上がる方法 - 経験と出会いが人生を変える / Career-Anchor-Drive
soudai
16
4.7k
新婚19年目から学ぶ夫婦円満の正しい歩き方 / Life is beautiful
soudai
12
4.4k
顧客が本当に必要だったもの - パフォーマンス改善編 / Make what is needed
soudai
34
9.5k
仕事を前に進めるためのコツ - 判断と決断と共有 / Aim for the goal
soudai
87
60k
アプリケーションが 正しく動作するということ - 自動テスト編 / Automated Testing
soudai
17
3.4k
Gitlab本から学んだこと - そーだいなるプレイバック / gitlab-book
soudai
8
2k
**強い**エンジニアのなり方 - フィードバックサイクルを勝ち取る / grow one day each day
soudai
130
130k
Other Decks in Technology
See All in Technology
人はなぜISUCONに夢中になるのか
kakehashi
PRO
6
1.7k
データマネジメントのトレードオフに立ち向かう
ikkimiyazaki
6
1.2k
Amazon S3 Tablesと外部分析基盤連携について / Amazon S3 Tables and External Data Analytics Platform
nttcom
0
150
OpenID BizDay#17 KYC WG活動報告(法人) / 20250219-BizDay17-KYC-legalidentity
oidfj
0
400
ローカルLLMを活用したコード生成と、ローコード開発ツールへの応用
kazuhitoyokoi
0
140
速くて安いWebサイトを作る
nishiharatsubasa
14
15k
The Future of SEO: The Impact of AI on Search
badams
0
240
運用しているアプリケーションのDBのリプレイスをやってみた
miura55
1
840
管理者しか知らないOutlookの裏側のAIを覗く#AzureTravelers
hirotomotaguchi
2
520
分解して理解する Aspire
nenonaninu
2
500
エンジニアリング価値を黒字化する バリューベース戦略を用いた 技術戦略策定の道のり
kzkmaeda
2
130
なぜ私は自分が使わないサービスを作るのか? / Why would I create a service that I would not use?
aiandrox
0
880
Featured
See All Featured
The Art of Programming - Codeland 2020
erikaheidi
53
13k
Raft: Consensus for Rubyists
vanstee
137
6.8k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
4
420
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
29
1k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
160
15k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
59k
Gamification - CAS2011
davidbonilla
80
5.1k
Product Roadmaps are Hard
iamctodd
PRO
50
11k
RailsConf 2023
tenderlove
29
1k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
32
2.1k
The Power of CSS Pseudo Elements
geoffreycrofte
75
5.5k
Embracing the Ebb and Flow
colly
84
4.6k
Transcript
JavaΤϯδχΞʹͬͯ΄͍͠ RDBΞϯνύλʔϯ ++6($$$4QSJOH
What is it? ࠓΈͳ͞Μʹ࣋ͬͯؼͬͯ΄͍͜͠ͱ
What is it? σʔλϕʔεͷण໋ ΞϓϦέʔγϣϯΑΓ͍
What is it? ͦΜͳ͍͖߹͍ʹͳΔσʔλϕʔε ͷେͳࣄΛ͓͑͠·͢
What is it? ରͷσʔλϕʔειϑτΣΞ
What is it? PostgreSQL 9.6ͱMySQL 5.7(InnoDB)ʹݶΔ ଞͷRDBͷ͠·ͤΜ
What is it? RDBΞϯνύλʔϯ
What is it? RDBΞϯνύλʔϯ ↓ ޙʑʹۤ͠ΈΛੜΉ
What is it? RDBΞϯνύλʔϯΛΔ
What is it? RDBΞϯνύλʔϯΛΔ ↓ ಉ͡աͪΛ܁Γฦ͞ͳ͍
What is it? ࠓRDBͷࣦഊྫΛ͝հ͠·͢
͋͐͡Μͩ ̍ɹࣗݾհ ̎ɹσʔλϕʔεͷ໎ٶ ̏ɹڧ͗͢Δ੍ ̐ɹࢹ͞Εͳ͍σʔλϕʔε ̑ɹ·ͱΊ
͋͐͡Μͩ ̍ɹࣗݾհ ̎ɹσʔλϕʔεͷ໎ٶ ̏ɹڧ͗͢Δ੍ ̐ɹࢹ͞Εͳ͍σʔλϕʔε ̑ɹ·ͱΊ
ࣗݾհ ໊લɿીࠜɹେʢͦͶɹ͚ͨͱʣ ྸɿ32ࡀʢࡾਓͷࢠڙ͕͍·͢ʣ ৬ۀɿηʔϧεΤϯδχΞ ॴଐɿגࣜձࣾ ͯͳʢMackerelνʔϜʣ ɹɹɹຊPostgreSQLϢʔβձ ɹɹɹɹɹதࠃࢧ෦ ࢧ෦ ɹɹٕज़తʹLLܥݴޠͱ͔RDB͕͖Ͱ͢
ࣗݾհ ໊લɿીࠜɹେʢͦͶɹ͚ͨͱʣ ྸɿ32ࡀʢࡾਓͷࢠڙ͕͍·͢ʣ ৬ۀɿηʔϧεΤϯδχΞ ॴଐɿגࣜձࣾ ͯͳʢMackerelνʔϜʣ ɹɹɹຊPostgreSQLϢʔβձ ɹɹɹɹɹதࠃࢧ෦ ࢧ෦ ɹɹٕज़తʹLLܥݴޠͱ͔RDB͕͖Ͱ͢
Mackerel
Mackerel
ͯͳؒΛ୳ͯ͠·͢ curl -sIL mackerel.io | grep engineer
ࣗݾհ ໊લɿીࠜɹେʢͦͶɹ͚ͨͱʣ ྸɿ32ࡀʢࡾਓͷࢠڙ͕͍·͢ʣ ৬ۀɿηʔϧεΤϯδχΞ ॴଐɿגࣜձࣾ ͯͳʢMackerelνʔϜʣ ɹɹɹຊPostgreSQLϢʔβձ ɹɹɹɹɹதࠃࢧ෦ ࢧ෦ ɹɹٕज़తʹLLܥݴޠͱ͔RDB͕͖Ͱ͢
͋͐͡Μͩ ̍ɹࣗݾհ ̎ɹσʔλϕʔεͷ໎ٶ ̏ɹڧ͗͢Δ੍ ̐ɹࢹ͞Εͳ͍σʔλϕʔε ̑ɹ·ͱΊ
None
σʔλϕʔεͷ໎ٶ 4PGUXBSF%FTJHOΛಡΜͰ͘Εʂʂ Ҏ্οʂʂʂʂ
σʔλϕʔεͷ໎ٶ σʔλϕʔεͷઃܭͷ
σʔλϕʔεͷ໎ٶ demo=# SELECT delete_falg AS delete_flag FROM users GROUP BY
delete_flag delete_flag ------------- 1 2 0 9 99 NULL (6 ߦ)
σʔλϕʔεͷ໎ٶ ▪༷ॻ_20170513(1).xls 0: ະআ 1: আࡁΈ 2: ཧऀʹΑΔڧ੍আ 9: ຣফ
99: Α͘Θ͔Βͳ͍ NULL: όάͰೖΔ
σʔλϕʔεͷ໎ٶ NFNP NFNP NFNP
σʔλϕʔεͷ໎ٶ NFNP NFNP NFNP NFNPͰͳ͘NFNPͷͱ͜Ζ͕ྺ࢙Λײͤ͡͞Δ
σʔλϕʔεͷ໎ٶ σʔλϕʔεͷ໎ٶͷ
σʔλϕʔεͷ໎ٶ w ෆదͳ໊લͰσʔλϕʔεͷςʔϒϧͷؔ࿈ੑ ҙਤ͕ཧղͰ͖ͳ͍ w ϦϨʔγϣφϧϞσϧΛج͍ͮͨઃܭ͍ͯ͠ͳ͍ͱ طଘͷศརͳπʔϧΛར༻ग़དྷͳ͍ w อଘ͞Εͨσʔλ͕ਖ਼͍͔͠Ͳ͏͔͕அग़དྷͳ͍ w
ͲͷΑ͏ͳσʔλΛอଘ͠ɺͲͷΑ͏ͳσʔλΛ औΓग़͍͍͔ͤΘ͔Βͳ͍
σʔλϕʔεͷ໎ٶ w ෆదͳ໊લͰσʔλϕʔεͷςʔϒϧͷؔ࿈ੑ ҙਤ͕ཧղͰ͖ͳ͍ w ϦϨʔγϣφϧϞσϧΛج͍ͮͨઃܭ͍ͯ͠ͳ͍ͱ طଘͷศརͳπʔϧΛར༻ग़དྷͳ͍ w อଘ͞Εͨσʔλ͕ਖ਼͍͔͠Ͳ͏͔͕அग़དྷͳ͍ w
ͲͷΑ͏ͳσʔλΛอଘ͠ɺͲͷΑ͏ͳσʔλΛ औΓग़͍͍͔ͤΘ͔Βͳ͍
σʔλϕʔεͷ໎ٶ w ෆదͳ໊લͰσʔλϕʔεͷςʔϒϧͷؔ࿈ੑ ҙਤ͕ཧղͰ͖ͳ͍ w ϦϨʔγϣφϧϞσϧΛج͍ͮͨઃܭ͍ͯ͠ͳ͍ͱ طଘͷศརͳπʔϧΛར༻ग़དྷͳ͍ w อଘ͞Εͨσʔλ͕ਖ਼͍͔͠Ͳ͏͔͕அग़དྷͳ͍ w
ͲͷΑ͏ͳσʔλΛอଘ͠ɺͲͷΑ͏ͳσʔλΛ औΓग़͍͍͔ͤΘ͔Βͳ͍
σʔλϕʔεͷ໎ٶ w ෆదͳ໊લͰσʔλϕʔεͷςʔϒϧͷؔ࿈ੑ ҙਤ͕ཧղͰ͖ͳ͍ w ϦϨʔγϣφϧϞσϧΛج͍ͮͨઃܭ͍ͯ͠ͳ͍ͱ طଘͷศརͳπʔϧΛར༻ग़དྷͳ͍ w อଘ͞Εͨσʔλ͕ਖ਼͍͔͠Ͳ͏͔͕அग़དྷͳ͍ w
ͲͷΑ͏ͳσʔλΛอଘ͠ɺͲͷΑ͏ͳσʔλΛ औΓग़͍͍͔ͤΘ͔Βͳ͍
σʔλϕʔεͷ໎ٶ w ෆదͳ໊લͰσʔλϕʔεͷςʔϒϧͷؔ࿈ੑ ҙਤ͕ཧղͰ͖ͳ͍ w ϦϨʔγϣφϧϞσϧΛج͍ͮͨઃܭ͍ͯ͠ͳ͍ͱ طଘͷศརͳπʔϧΛར༻ग़དྷͳ͍ w อଘ͞Εͨσʔλ͕ਖ਼͍͔͠Ͳ͏͔͕அग़དྷͳ͍ w
ͲͷΑ͏ͳσʔλΛอଘ͠ɺͲͷΑ͏ͳσʔλΛ औΓग़͍͍͔ͤΘ͔Βͳ͍
σʔλϕʔεͷ໎ٶ ཧ*%
σʔλϕʔεͷ໎ٶ ཧ*% ˣ ձһ*%Λྫʹ͠·͢
σʔλϕʔεͷ໎ٶ
σʔλϕʔεͷ໎ٶ ͔Β࢝·ΔͷҰൠϢʔβ ͔Β࢝·ΔͷཧϢʔβ
σʔλϕʔεͷ໎ٶ ϢʔβͷಓݝΛද͢
σʔλϕʔεͷ໎ٶ ຊͷձһ*%
σʔλϕʔεͷ໎ٶ σʔλʹϩδοΫΛຒΊࠐΉͳͬʂ
σʔλϕʔεͷ໎ٶ σʔλʹϩδοΫΛຒΊࠐΉͳͬʂ ˣ σʔλΛσʔλͱͯ͠ಡΈऔΕͳ͍
σʔλϕʔεͷ໎ٶ ॲํᝦ w ΧϥϜΛਖ਼໊͘͠લΛ͚ͭΔ w σʔλͷΛ͚Δ w มԽʹ߹ΘͤͯϦϑΝΫλϦϯά͢Δ
σʔλϕʔεͷ໎ٶ ॲํᝦ w ΧϥϜΛਖ਼໊͘͠લΛ͚ͭΔ w σʔλͷΛ͚Δ w มԽʹ߹ΘͤͯϦϑΝΫλϦϯά͢Δ
σʔλϕʔεͷ໎ٶ ϦϑΝΫλϦϯάͷྫ
σʔλϕʔεͷ໎ٶ JE ໊લ ྸ ીࠜɹେ ીࠜɹኽָ
ીࠜɹᗅָ ીࠜɹࡣָ ݱঢ়
σʔλϕʔεͷ໎ٶ ձһJE ໊લ ྸ ݖݶJE ಓݝJE ીࠜɹେ
ીࠜɹኽָ ીࠜɹᗅָ ીࠜɹࡣָ ཧ
σʔλϕʔεͷ໎ٶ JE ձһJE ໊લ ྸ ݖݶJE ಓݝJE /6-- ીࠜɹେ
/6-- /6-- /6-- ીࠜɹኽָ /6-- /6-- /6-- ીࠜɹᗅָ /6-- /6-- /6-- ીࠜɹࡣָ /6-- /6-- ରͷΧϥϜΛՃ
σʔλϕʔεͷ໎ٶ JE ձһJE ໊લ ྸ ݖݶJE ಓݝJE ીࠜɹେ
ીࠜɹኽָ ીࠜɹᗅָ ીࠜɹࡣָ ରͷΧϥϜΛՃ
σʔλϕʔεͷ໎ٶ Ͳ͏ͬͯཧ*%Λ ৽͍͠ΧϥϜʹೖΕΔ͔
σʔλϕʔεͷ໎ٶ ϦϑΝΫλϦϯάख๏ͷྫ w */4&3561%"5&ͷ࣌ʹΞϓϦ͕ೖΕΔ w */4&3561%"5&ͷ࣌ʹτϦΨʔΛ͏ w Ծྻ7JFXΛ͏
σʔλϕʔεͷ໎ٶ ձһJE ໊લ ྸ ݖݶJE ಓݝJE ીࠜɹେ
ીࠜɹኽָ ીࠜɹᗅָ ીࠜɹࡣָ ཧͷ7JFXΛ࡞Δ
σʔλϕʔεͷ໎ٶ αʔϏεͷੑ࣭ʹ߹Θͤͯ ख๏ΛબͿ
͋͐͡Μͩ ̍ɹࣗݾհ ̎ɹσʔλϕʔεͷ໎ٶ ̏ɹڧ͗͢Δ੍ ̐ɹࢹ͞Εͳ͍σʔλϕʔε ̑ɹ·ͱΊ
ڧ͗͢Δ੍ σʔλϕʔε αʔϏεʹ༩͑ΔӨڹൣғ͕͍
ڧ͗͢Δ੍ ༩͑ΔӨڹൣғͷྫ w %#Λఀࢭ͢ΔͱαʔϏε͕ࢭ·Δ w มߋ͢ΔͱෳαʔϏεͷվम͕ඞཁ w σʔλৗʹੵ͞Ε͍ͯ͘
ڧ͗͢Δ੍ ࣌ؒܦաͰσʔλ͕͢Δ
ڧ͗͢Δ੍ ͭ·Γมߋ͕େม
ڧ͗͢Δ੍ ͭ·Γมߋ͕େม ˣ ͕࣌ؒܦͯܦͭ΄Ͳঢ়گ͕ѱԽ
ڧ͗͢Δ੍ ͔ͩΒͦ͜ਖ਼͍͠ઃܭʹҭͯΔ͖
ڧ͗͢Δ੍ ͦͷͨΊʹ3%#ͷػೳΛ׆༻͢Δ
ڧ͗͢Δ੍ ͦͷͨΊʹ3%#ͷػೳΛ׆༻͢Δ ˣ ͔ͦ͠͠Ε͕ཪʹग़Δ͜ͱ
ڧ͗͢Δ੍ 3%#ͷػೳʹґଘ͗͢͠Δͱ ͦΕڧ͗͢Δ੍ʹͳΔ
ڧ͗͢Δ੍ ڧ͗͢Δ੍ͷྫ w τϦΨʔ͕ଟ͘ͷ5"#-&ʹӨڹΛ༩͑Δ w ετΞυ͕ϩδοΫΛ࣋ͪ͗͢Δ w ϚςϏϡʔ%#-JOLͷଟ༻͗͢͠Δ
ڧ͗͢Δ੍ 3%#ͷػೳͱͯศར
ڧ͗͢Δ੍ 3%#ͷػೳͱͯศར ˣ ͔ۜ͠͠ͷؙͰͳ͍
ڧ͗͢Δ੍ ઃܭͷόϥϯεײ͕֮େࣄ
ڧ͗͢Δ੍ ॲํᝦ w ͦͷػೳΛར༻͢ΔظؒΛݕ౼͢Δ w ͦͷػೳͷӨڹൣғΛཧղ͢Δ w ຊʹ࠷దͳΞϓϩʔν͔͍͢
ڧ͗͢Δ੍ ॲํᝦ w ͦͷػೳΛར༻͢ΔظؒΛݕ౼͢Δ w ͦͷػೳͷӨڹൣғΛཧղ͢Δ w ຊʹ࠷దͳΞϓϩʔν͔͍͢
ڧ͗͢Δ੍ ਓաڈͷޭମݧͷ όΠΞε͕͔͔Δ
ڧ͗͢Δ੍ ਓաڈͷࣦഊମݧ όΠΞε͕͔͔Δ
ڧ͗͢Δ੍ ઃܭͷόϥϯεײ͕֮େࣄ
ڧ͗͢Δ੍ ઃܭͷόϥϯεײ͕֮େࣄ ˣ ଟ͘ͷઃܭΛݟͯཆ͏͜ͱ͕େࣄ
͋͐͡Μͩ ̍ɹࣗݾհ ̎ɹσʔλϕʔεͷ໎ٶ ̏ɹڧ͗͢Δ੍ ̐ɹࢹ͞Εͳ͍σʔλϕʔε ̑ɹ·ͱΊ
ࢹ͞Εͳ͍σʔλϕʔε ࢹͱϞχλϦϯά
ࢹ͞Εͳ͍σʔλϕʔε
ࢹ͞Εͳ͍σʔλϕʔε
ࢹ͞Εͳ͍σʔλϕʔε ͳΜͰςετॻ͘ͷʹ ϞχλϦϯά͠ͳ͍ΜͰ͔͢ʁ
ࢹ͞Εͳ͍σʔλϕʔε ࢹࡾஈ֊͋Δ
ࢹ͞Εͳ͍σʔλϕʔε w͍ͪૣ͘োൃੜΛ֬ೝ͢Δ w෮چͷͨΊͷݪҼΛ֬ೝ͢Δ wঢ়گͷมԽΛ࣌ܥྻͰࢹ͢Δ͜ͱͰ Ϧιʔεཧোͷ༧ஹͷѲ͢Δ
ࢹ͞Εͳ͍σʔλϕʔε w͍ͪૣ͘োൃੜΛ֬ೝ͢Δ w෮چͷͨΊͷݪҼΛ֬ೝ͢Δ wঢ়گͷมԽΛ࣌ܥྻͰࢹ͢Δ͜ͱͰ Ϧιʔεཧোͷ༧ஹͷѲ͢Δ ࢮ׆ࢹ
ࢹ͞Εͳ͍σʔλϕʔε w͍ͪૣ͘োൃੜΛ֬ೝ͢Δ w෮چͷͨΊͷݪҼΛ֬ೝ͢Δ wঢ়گͷมԽΛ࣌ܥྻͰࢹ͢Δ͜ͱͰ Ϧιʔεཧোͷ༧ஹͷѲ͢Δ νΣοΫࢹ
ࢹ͞Εͳ͍σʔλϕʔε w͍ͪૣ͘োൃੜΛ֬ೝ͢Δ w෮چͷͨΊͷݪҼΛ֬ೝ͢Δ wঢ়گͷมԽΛ࣌ܥྻͰࢹ͢Δ͜ͱͰ Ϧιʔεཧোͷ༧ஹͷѲ͢Δ ϞχλϦϯάࢹ
ࢹ͞Εͳ͍σʔλϕʔε
ࢹ͞Εͳ͍σʔλϕʔε
ࢹ͞Εͳ͍σʔλϕʔε Πϯϑϥੜ͖
ࢹ͞Εͳ͍σʔλϕʔε Πϯϑϥੜ͖ ˣ ʑͷهΛݟΔ
ࢹ͞Εͳ͍σʔλϕʔε աڈΛΔ͜ͱͰ ࠓͷॴ͕Θ͔Δ
ࢹ͞Εͳ͍σʔλϕʔε ࠓͱաڈͷࠩ
ࢹ͞Εͳ͍σʔλϕʔε ࠓͱաڈͷࠩ ˣ ະདྷΛΔͨΊͷࡐྉ
ࢹ͞Εͳ͍σʔλϕʔε ࢹ͖߲͢ w ౷ܭใ04ϦιʔεͳͲ3%#ͷঢ়ଶ w εϩʔΫΤϦϩάΤϥʔϩάͳͲ w ෳͷ%#ΛॏͶͨൺֱ
ࢹ͞Εͳ͍σʔλϕʔε ϞχλϦϯάվળͷҰา
ࢹ͞Εͳ͍σʔλϕʔε ॲํᝦ w దʹϞχλϦϯάΛ͢Δ w ϞχλϦϯάπʔϧΛ׆༻͢Δ w վળͷͨΊͷҰาΛ౿Έग़͢
͋͐͡Μͩ ̍ɹࣗݾհ ̎ɹσʔλϕʔεͷ໎ٶ ̏ɹڧ͗͢Δ੍ ̐ɹࢹ͞Εͳ͍σʔλϕʔε ̑ɹ·ͱΊ
·ͱΊ ۪ऀܦݧʹֶͿ ݡऀաڈʹֶͿ
·ͱΊ ΞϯνύλʔϯΛΔ
·ͱΊ
·ͱΊ SQLΞϯνύλʔϯݫબ͞Εࣦͨഊू
·ͱΊ SQLΞϯνύλʔϯݫબ͞Εࣦͨഊू ↓ DBͷϊϋ͕٧·໊ͬͨஶ
·ͱΊ Ұ࡞ͬͨ%#ফͤͳ͍
·ͱΊ Ұ࡞ͬͨ%#ফͤͳ͍ ˣ ઃܭ͕େࣄ
·ͱΊ σʔλϕʔεͷࢮαʔϏεͷࢮ
·ͱΊ σʔλϕʔεͷࢮαʔϏεͷࢮ ˣ ղܾͰ͖Δਓӳ༤
·ͱΊ %#ͷΕͨࠒʹͬͯ͘Δ
·ͱΊ
·ͱΊ αʔϏενʔϜΛकΔ
·ͱΊ αʔϏενʔϜΛकΔ ˣ ͦͷͨΊʹֶͿ
·ͱΊ पғͷܦݧஊ͔ΒֶͿ
·ͱΊ पғͷܦݧஊ͔ΒֶͿ ˣ ੵۃతʹίϛϡχςΟΛར༻͢Δ
ࢀߟࢿྉ ɾQPTUHSFTRMKQ4MBDL νϟοτϧʔϜ IUUQTQPTUHSFTRMIBDLFSTKQIFSPLVBQQDPN ɾNZTRMDBTVBM4MBDL νϟοτϧʔϜ IUUQTNZTRMDBTVBMTMBDLJOIFSPLVBQQDPN
·ͱΊ 3%#ͷࣝण໋͕͍
·ͱΊ 3%#ͷࣝण໋͕͍ ˣ ֮͑ΕࣄͰ͍ؒʹཱͭ
·ͱΊ lखΛಈ͔ͨ͠ਓ͚͕ͩੈքΛม͑Δz :BTVIJSP0OJTIJ
·ͱΊ ΑΓྑ͍ઃܭΛ Ұॹʹߟ͑ͯߦ͖·͠ΐ͏
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ɻ