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
Webエンジニアに知ってほしいRDBアンチパターン
Search
soudai sone
March 04, 2017
Technology
47
26k
Webエンジニアに知ってほしいRDBアンチパターン
YAPC::Kansaiの登壇資料です。
soudai sone
March 04, 2017
Tweet
Share
More Decks by soudai sone
See All by soudai sone
ソフトウェアエンジニアとしてキャリアの螺旋を駆け上がる方法 - 経験と出会いが人生を変える / Career-Anchor-Drive
soudai
14
4.1k
新婚19年目から学ぶ夫婦円満の正しい歩き方 / Life is beautiful
soudai
11
4.2k
顧客が本当に必要だったもの - パフォーマンス改善編 / Make what is needed
soudai
33
9.3k
仕事を前に進めるためのコツ - 判断と決断と共有 / Aim for the goal
soudai
85
58k
アプリケーションが 正しく動作するということ - 自動テスト編 / Automated Testing
soudai
17
3.3k
Gitlab本から学んだこと - そーだいなるプレイバック / gitlab-book
soudai
8
1.9k
**強い**エンジニアのなり方 - フィードバックサイクルを勝ち取る / grow one day each day
soudai
128
130k
マルチテナントの実現におけるDB設計とRLS / Utilizing RSL in multi-tenancy
soudai
26
8.6k
キャッシュと向き合う、キャッシュと共に生きる / cache pattern
soudai
38
18k
Other Decks in Technology
See All in Technology
My small contributions - Fujiwara Tech Conference 2025
ijin
0
1.4k
ABWGのRe:Cap!
hm5ug
1
120
[IBM TechXchange Dojo]Watson Discoveryとwatsonx.aiでRAGを実現!座学①
siyuanzh09
0
110
Visual StudioとかIDE関連小ネタ話
kosmosebi
1
370
Docker Desktop で Docker を始めよう
zembutsu
PRO
0
170
実践! ソフトウェアエンジニアリングの価値の計測 ── Effort、Output、Outcome、Impact
nomuson
0
2.1k
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
6
54k
WantedlyでのKotlin Multiplatformの導入と課題 / Kotlin Multiplatform Implementation and Challenges at Wantedly
kubode
0
250
三菱電機で社内コミュニティを立ち上げた話
kurebayashi
1
360
20250116_自部署内でAmazon Nova体験会をやってみた話
riz3f7
1
100
2025年の挑戦 コーポレートエンジニアの技術広報/techpr5
nishiuma
0
140
CDKのコードレビューを楽にするパッケージcdk-mentorを作ってみた/cdk-mentor
tomoki10
0
210
Featured
See All Featured
The Illustrated Children's Guide to Kubernetes
chrisshort
48
49k
For a Future-Friendly Web
brad_frost
176
9.5k
Intergalactic Javascript Robots from Outer Space
tanoku
270
27k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.2k
Art, The Web, and Tiny UX
lynnandtonic
298
20k
VelocityConf: Rendering Performance Case Studies
addyosmani
327
24k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
113
50k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
28
4.5k
StorybookのUI Testing Handbookを読んだ
zakiyama
28
5.4k
Facilitating Awesome Meetings
lara
51
6.2k
YesSQL, Process and Tooling at Scale
rocio
170
14k
Scaling GitHub
holman
459
140k
Transcript
WebΤϯδχΞʹͬͯ΄͍͠ RDBΞϯνύλʔϯ :"1$,BOTBJ
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͕͖Ͱ͢
ࣗݾհ ໊લɿીࠜɹେʢͦͶɹ͚ͨͱʣ ྸɿ32ࡀʢࡾਓͷࢠڙ͕͍·͢ʣ ৬ۀɿηʔϧεΤϯδχΞ ॴଐɿגࣜձࣾ ͯͳʢMackerelνʔϜʣ ɹɹɹຊPostgreSQLϢʔβձ ɹɹɹɹɹதࠃࢧ෦ ࢧ෦ ɹɹٕज़తʹLLܥݴޠͱ͔RDB͕͖Ͱ͢
ೖࣾͰ͢ʂ
Mackerel
ͯͳؒΛ୳ͯ͠·͢ curl -sIL mackerel.io | grep engineer
ࣗݾհ ໊લɿીࠜɹେʢͦͶɹ͚ͨͱʣ ྸɿ32ࡀʢࡾਓͷࢠڙ͕͍·͢ʣ ৬ۀɿηʔϧεΤϯδχΞ ॴଐɿגࣜձࣾ ͯͳʢMackerelνʔϜʣ ɹɹɹຊPostgreSQLϢʔβձ ɹɹɹɹɹதࠃࢧ෦ ࢧ෦ ɹɹٕज़తʹLLܥݴޠͱ͔RDB͕͖Ͱ͢
͋͐͡Μͩ ̍ɹࣗݾհ ̎ɹΕڈΒΕͨόοΫΞοϓ ̏ɹΘΕͳ੍͍ ̐ɹϩοΫͷޭࡑ ̑ɹ·ͱΊ
ΕڈΒΕͨόοΫΞοϓ όοΫΞοϓऔͬͯ·͔͢ʁ
ΕڈΒΕͨόοΫΞοϓ 2ʮϨϓϦέʔγϣϯͯ͠Δ͔Β όοΫΞοϓෆཁͰʁʯ
ΕڈΒΕͨόοΫΞοϓ 2ʮϨϓϦέʔγϣϯͯ͠Δ͔Β όοΫΞοϓෆཁͰʁʯ ˣ ඞཁͰ͢
ΕڈΒΕͨόοΫΞοϓ ϨϓϦέʔγϣϯෳ ྨࣅྫɿσΟεΫͷϛϥʔϦϯά
ΕڈΒΕͨόοΫΞοϓ ϨϓϦέʔγϣϯͰकΕͳ͍ύλʔϯ w ෆਖ਼ͳσʔλࠞೖ w %&-&5&%301 w ώϡʔϚϯΤϥʔ
ΕڈΒΕͨόοΫΞοϓ ͜ΕΒ͔ΒकΔͨΊʹ όοΫΞοϓ͕ඞཁ
ΕڈΒΕͨόοΫΞοϓ όοΫΞοϓΛऔͬͯ·͔͢ʁ
ΕڈΒΕͨόοΫΞοϓ όοΫΞοϓΛऔͬͯ·͔͢ʁ ˣ ϦετΞΛࢼ͠·͔ͨ͠ʁ
ΕڈΒΕͨόοΫΞοϓ ͤͳ͍όοΫΞοϓʹՁແ͍
ΕڈΒΕͨόοΫΞοϓ όοΫΞοϓͷछྨ w ཧόοΫΞοϓ w ΦϑϥΠϯόοΫΞοϓ w ΦϯϥΠϯόοΫΞοϓ
ΕڈΒΕͨόοΫΞοϓ όοΫΞοϓͷछྨ w ཧόοΫΞοϓ w ΦϑϥΠϯόοΫΞοϓ w ΦϯϥΠϯόοΫΞοϓ NZTRMEVNQQH@EVNQ 42-Λͦͷ··อଘ͢ΔͷͰ͓खܰ
ΕڈΒΕͨόοΫΞοϓ όοΫΞοϓͷछྨ w ཧόοΫΞοϓ w ΦϑϥΠϯόοΫΞοϓ w ΦϯϥΠϯόοΫΞοϓ αʔόΛࢭΊͯσʔλϑΝΠϧΛίϐʔ ख๏৭ʑ͋Δ͚ͲཧόοΫΞοϓΑΓ͍
ΕڈΒΕͨόοΫΞοϓ όοΫΞοϓͷछྨ w ཧόοΫΞοϓ w ΦϑϥΠϯόοΫΞοϓ w ΦϯϥΠϯόοΫΞοϓ αʔόΛࢭΊͣʹόοΫΞοϓग़དྷΔ ͔͠ҙͷॴʹͤΔ
ͨͩ͠ɺӡ༻ίετେ
ΕڈΒΕͨόοΫΞοϓ ख๏ CBDLVQ αΠζ CBDLVQ ࣌ؒ ϦετΞ ࣌ؒ ӡ༻ ίετ
෮چ࣌ ཧ όοΫΞοϓ খ খ େ খ όοΫΞοϓ։࢝࣌ ΦϑϥΠϯ όοΫΞοϓ େ த খ খ όοΫΞοϓ։࢝࣌ ΦϯϥΠϯ όοΫΞοϓ େʴЋ தʙେ த தʙେ όοΫΞοϓऴྃޙ͔Β ࠷৽ঢ়ଶͷؒͷҙͷ࣌
ΕڈΒΕͨόοΫΞοϓ 3%#ͷػೳҎ֎ͷόοΫΞοϓ w 4UPSBHFͷػೳΛ͏ w όοΫΞοϓιϑτΛ͏ w 04ͷػೳΛ͏
ΕڈΒΕͨόοΫΞοϓ 3%#ͷػೳҎ֎ͷόοΫΞοϓ w 4UPSBHFͷػೳΛ͏ w όοΫΞοϓιϑτΛ͏ w 04ͷػೳΛ͏ εφοϓγϣοτͱ͔
ΕڈΒΕͨόοΫΞοϓ 3%#ͷػೳҎ֎ͷόοΫΞοϓ w 4UPSBHFͷػೳΛ͏ w όοΫΞοϓιϑτΛ͏ w 04ͷػೳΛ͏ ༻όοΫΞοϓιϑτΣΞͱ͔
ΕڈΒΕͨόοΫΞοϓ 3%#ͷػೳҎ֎ͷόοΫΞοϓ w 4UPSBHFͷػೳΛ͏ w όοΫΞοϓιϑτΛ͏ w 04ͷػೳΛ͏ 04͝ͱؙͬͱόοΫΞοϓ͢Δͱ͔
ΕڈΒΕͨόοΫΞοϓ όοΫΞοϓʹΑͬͯ ϦετΞͷํ๏ҧ͏
ΕڈΒΕͨόοΫΞοϓ ϦετΞΛࢼ͠·͔ͨ͠ʁ
ΕڈΒΕͨόοΫΞοϓ ϦετΞΛࢼ͠·͔ͨ͠ʁ ˣ ϝϯόʔͷதͰग़དྷΔਓ͍·͔͢ʁ
ΕڈΒΕͨόοΫΞοϓ Ξϯνύλʔϯ w όοΫΞοϓͯ͠ͳ͍ w ϦετΞग़དྷΔਓ͕͍ͳ͍ w Քಇʹ߹ͬͨઃܭग़དྷͯͳ͍
ΕڈΒΕͨόοΫΞοϓ Քಇ ؒఀࢭ࣌ؒ қ όοΫΞοϓͱϦετΞͰे ΦϯϓϨͳΒ༧උϚγϯ͕ඞཁ
େσʔλͳΒϦετΞॴཁ࣌ؒΛѲ͓ͯ͘͠ ࣌ؒ ๏ఆఀిͱ͔࣌ؒରԠͳͲ γεςϜ֎ͷ෦ʹӨڹ͕ग़Δ όοΫΞοϓ͔ΒͷϦετΞ͚ͩͰ͍͠ ίʔϧυελϯόΠͱ͔ඞཁ ԆϨϓϦέʔγϣϯͳͲͷઐ༻ͷγεςϜ͕ඞཁ ඵ ແఀࢭαʔόͱ͔ඞཁͳϨϕϧ ίετ͕ҟৗʹߴ͘ͳΔ
ΕڈΒΕͨόοΫΞοϓ ࣗͨͪͷࢦ͢ॴΛܾΊΔ
ΕڈΒΕͨόοΫΞοϓ ࣗͨͪͷࢦ͢ॴΛܾΊΔ ˣ ͦΕʹ߹ΘͤͨόοΫΞοϓΛʂ
ΕڈΒΕͨόοΫΞοϓ όοΫΞοϓऔͬͨ͠ ϦετΞࢼ͔ͨ͠Βେৎʂ
ΕڈΒΕͨόοΫΞοϓ ͱࢥͬͨΒେؒҧ͍ ʢ͔͜͜ΒΉ͠Ζຊʣ
ΕڈΒΕͨόοΫΞοϓ όοΫΞοϓͷ᠘ w Քಇॳಈ͍͍͕ͯͨόοΫΞοϓ͕ංେԽ ͯ͠ɺ͋ΔΤϥʔʹͳΓऔΕͯͳ͔ͬͨ w ϦετΞ͠Α͏ͱࢥ͕ͬͨϑΝΠϧ͕σΧ͗͢ ͯసૹʹ͕͔͔࣌ؒΓɺλΠϜΞτʹͳΔ w ಉ͡ཧαʔόʹऔ͍ͬͯΔͷͰσΟεΫ͕ࢮ
͵ͱҰॹʹόοΫΞοϓࢮ͵
ΕڈΒΕͨόοΫΞοϓ όοΫΞοϓͷ᠘ w Քಇॳಈ͍͍͕ͯͨόοΫΞοϓ͕ංେԽ ͯ͠ɺ͋ΔΤϥʔʹͳΓऔΕͯͳ͔ͬͨ w ϦετΞ͠Α͏ͱࢥ͕ͬͨϑΝΠϧ͕σΧ͗͢ ͯసૹʹ͕͔͔࣌ؒΓɺλΠϜΞτʹͳΔ w ಉ͡ཧαʔόʹऔ͍ͬͯΔͷͰσΟεΫ͕ࢮ
͵ͱҰॹʹόοΫΞοϓࢮ͵
ΕڈΒΕͨόοΫΞοϓ όοΫΞοϓͷ᠘ w Քಇॳಈ͍͍͕ͯͨόοΫΞοϓ͕ංେԽ ͯ͠ɺ͋ΔΤϥʔʹͳΓऔΕͯͳ͔ͬͨ w ϦετΞ͠Α͏ͱࢥ͕ͬͨϑΝΠϧ͕σΧ͗͢ ͯసૹʹ͕͔͔࣌ؒΓɺλΠϜΞτʹͳΔ w ಉ͡ཧαʔόʹऔ͍ͬͯΔͷͰσΟεΫ͕ࢮ
͵ͱҰॹʹόοΫΞοϓࢮ͵
ΕڈΒΕͨόοΫΞοϓ όοΫΞοϓͷ᠘ w Քಇॳಈ͍͍͕ͯͨόοΫΞοϓ͕ංେԽ ͯ͠ɺ͋ΔΤϥʔʹͳΓऔΕͯͳ͔ͬͨ w ϦετΞ͠Α͏ͱࢥ͕ͬͨϑΝΠϧ͕σΧ͗͢ ͯసૹʹ͕͔͔࣌ؒΓɺλΠϜΞτʹͳΔ w ಉ͡ཧαʔόʹऔ͍ͬͯΔͷͰσΟεΫ͕ࢮ
͵ͱҰॹʹόοΫΞοϓࢮ͵
ΕڈΒΕͨόοΫΞοϓ ͦͷόοΫΞοϓεΫϦϓτ ࠓͪΌΜͱಈ͍ͯ·͔͢ʁ
ΕڈΒΕͨόοΫΞοϓ ॲํᝦ w όοΫΞοϓͱϦετΞΛඞͣࢼ͢ w ఆظతʹϦετΞ͢Δ w όοΫΞοϓͷ݁ՌΛదʹࢹ͢Δ
ΕڈΒΕͨόοΫΞοϓ స͵ઌͷόοΫΞοϓ
ΕڈΒΕͨόοΫΞοϓ స͵ઌͷόοΫΞοϓ ˣ ि໌͚ʹඞͣνʔϜͷঢ়گ֬ೝΛʂ
͋͐͡Μͩ ̍ɹࣗݾհ ̎ɹΕڈΒΕͨόοΫΞοϓ ̏ɹΘΕͳ੍͍ ̐ɹϩοΫͷޭࡑ ̑ɹ·ͱΊ
ΘΕͳ੍͍ 3%#ͷ
ΘΕͳ੍͍ 3%#ͷ w σʔλΛอଘ͢Δ w σʔλΛऔΓग़͢ w σʔλΛकΔ
ΘΕͳ੍͍ 3%#ͷ w σʔλΛอଘ͢Δ w σʔλΛऔΓग़͢ w σʔλΛकΔ
ΘΕͳ੍͍ σʔλΛԿ͔ΒकΔ͔ʁ
ΘΕͳ੍͍ όάͱώϡʔϚϯΤϥʔ͔ΒकΔ
ΘΕͳ੍͍ ੍ͷछྨ આ໌ 13*."3:,&:੍ ॏෳͱ/6--͕ແ͘ɺͦͷςʔϒϧͰҰҙͳߦ Ͱ͋Δ͜ͱΛ֬ఆͤ͞Δ /05/6--੍ /6--͕ແ͍ࣄΛ֬ఆͤ͞Δ 6/*26&੍ ͦͷ͕ςʔϒϧͰҰҙͰ͋Δ͜ͱΛ֬ఆͤ͞
Δʢ/6--ڐ༰͞ΕΔʣ $)&$,੍ ࢦఆͨ݅͠ͷͷΈ͕อଘ͞Ε͍ͯΔ͜ͱΛ ֬ఆͤ͞Δ %&'"6-5੍ ͕ࢦఆ͞Εͳ͍࣌ʹอଘ͞ΕΔΛܾΊΔ ͦΕʹΑΓॳظΛ֬ఆͤ͞Δ '03&*(/,&:੍ ผςʔϒϧͷओΩʔͱࢀর߹ੑ͕อͨΕͯΔ ࣄΛ֬ఆͤ͞Δ
ΘΕͳ੍͍ ͱϦϨʔγϣϯγοϓΛकΔ
ΘΕͳ੍͍ ੍ΛΘͳ͍എܠ w ΞϓϦଆͰόϦσʔγϣϯ͢Δ͔Βେৎ w ੍͢ΔͱςετσʔλΛ༻ҙ͢Δͷ͕໘ w 03.͕ରԠͯ͠ͳ͍
ΘΕͳ੍͍ ͦͷ݁Ռʜ
ΘΕͳ੍͍ ϦϨʔγϣϯγοϓ͕ഁ
ΘΕͳ੍͍ ϦϨʔγϣϯγοϓ͕ഁ ˣ σʔλΛඥղ͚ͳ͍
ഁͨ͠ demo=# SELECT delete_flag FROM users GROUP BY delete_flag delete_flag
------------- 1 2 0 9 99 NULL (6 ߦ)
ΘΕͳ੍͍ ഁͨ͠ϦϨʔγϣϯγοϓ w JE͕Ͳͷςʔϒϧʹඥͮ͘ͷ͔Θ͔Βͳ͍ w ςʔϒϧͷࢠ͕ؔΘ͔Βͳ͍ w ςʔϒϧͷσʔλʹෆ߹͕͋ͬͯ+0*/ ग़དྷͳ͍
ΘΕͳ੍͍ దͳ੍ͱઃܭΛޠΔ
ΘΕͳ੍͍ దͳ੍ͱઃܭΛޠΔ ˣ ػցతʹ&3ਤ࡞ΕΔ
ΘΕͳ੍͍ ॲํᝦ w దʹ੍Λ׆༻͢Δ w ਖ਼نԽͯ͠֎෦Ωʔ੍Λਖ਼͘͠͏ w ࠷ॳ੍͕͋ΔલఏͰߟ͑ɺඞཁͳΒ ֎͢͜ͱΛݕ౼͢Δ
ΘΕͳ੍͍ σʔλϕʔεͷઃܭͱͯେࣄ
ΘΕͳ੍͍ σʔλϕʔεͷઃܭͱͯେࣄ ˣ ੍Λ͏͜ͱͰྑ͍ઃܭΛ࡞Δ
ΘΕͳ੍͍ దͳ੍దͳઃܭΛੜΈ దͳઃܭੜ࢈ੑΛߴΊΔ
͋͐͡Μͩ ̍ɹࣗݾհ ̎ɹΕڈΒΕͨόοΫΞοϓ ̏ɹΘΕͳ੍͍ ̐ɹϩοΫͷޭࡑ ̑ɹ·ͱΊ
ϩοΫͷޭࡑ τϥϯβΫγϣϯͱσʔλ߹ੑ
ϩοΫͷޭࡑ τϥϯβΫγϣϯϨϕϧ
ϩοΫͷޭࡑ τϥϯβΫγϣϯϨϕϧ ໊લ Ϩϕϧ આ໌ 4&3*"-*;"#-& ͍ͭ͞Α ྻతʹॲཧ 3&1&"5"#-&3&"% ڧ͍
ಡΈऔΓରͷσʔλ ΛৗʹಡΈऔΔ 3&"%$0..*55&% ·͊·ڧ͍ ֬ఆͨ͠࠷৽σʔλΛ ৗʹಡΈऔΔ 3&"% 6/$0..*55&% ऑ͍ ଞͷॲཧʹΑͬͯߦΘ Ε͍ͯΔɺॻ͖͔͚ͷ σʔλ·ͰಡΈऔΔɻ
ϩοΫͷޭࡑ τϥϯβΫγϣϯϨϕϧ ໊લ Ϩϕϧ આ໌ 4&3*"-*;"#-& ͍ͭ͞Α ྻతʹॲཧ 3&1&"5"#-&3&"% ڧ͍
ಡΈऔΓରͷσʔλ ΛৗʹಡΈऔΔ 3&"%$0..*55&% ·͊·ڧ͍ ֬ఆͨ͠࠷৽σʔλΛ ৗʹಡΈऔΔ 3&"% 6/$0..*55&% ऑ͍ ଞͷॲཧʹΑͬͯߦΘ Ε͍ͯΔɺॻ͖͔͚ͷ σʔλ·ͰಡΈऔΔɻ .Z42-ͷσϑΥϧτ͜͜
ϩοΫͷޭࡑ τϥϯβΫγϣϯϨϕϧ ໊લ Ϩϕϧ આ໌ 4&3*"-*;"#-& ͍ͭ͞Α ྻతʹॲཧ 3&1&"5"#-&3&"% ڧ͍
ಡΈऔΓରͷσʔλ ΛৗʹಡΈऔΔ 3&"%$0..*55&% ·͊·ڧ͍ ֬ఆͨ͠࠷৽σʔλΛ ৗʹಡΈऔΔ 3&"% 6/$0..*55&% ऑ͍ ଞͷॲཧʹΑͬͯߦΘ Ε͍ͯΔɺॻ͖͔͚ͷ σʔλ·ͰಡΈऔΔɻ 1PTUHSF42- 0SBDMF%# 42-4FSWFS ͷσϑΥϧτ͜͜
ϩοΫͷޭࡑ τϥϯβΫγϣϯϨϕϧ ໊લ Ϩϕϧ આ໌ 4&3*"-*;"#-& ͍ͭ͞Α ྻతʹॲཧ 3&1&"5"#-&3&"% ڧ͍
ಡΈऔΓରͷσʔλ ΛৗʹಡΈऔΔ 3&"%$0..*55&% ·͊·ڧ͍ ֬ఆͨ͠࠷৽σʔλΛ ৗʹಡΈऔΔ 3&"% 6/$0..*55&% ऑ͍ ଞͷॲཧʹΑͬͯߦΘ Ε͍ͯΔɺॻ͖͔͚ͷ σʔλ·ͰಡΈऔΔɻ 1PTUHSF42- 0SBDMF%# 42-4FSWFS ͷσϑΥϧτ͜͜ ϑΝϯτϜϦʔυμʔςΟϦʔυͳͲͷࠓ͠·ͤΜ ʮ͑ʁͳʹͦΕʯͬͯਓࠓ͙͢άάοͯษڧͨ͠ํ͕͍͍Ͱ͢
ϩοΫͷޭࡑ ͳͥτϥϯβΫγϣϯ͕ඞཁ͔
ϩοΫͷޭࡑ Ϣʔβ" Ϣʔβ# " ಉ࣌ʹߪೖ
ϩοΫͷޭࡑ Ϣʔβ" Ϣʔβ# " ಉ࣌ʹߪೖ ࡏݿ͕࠷ޙͷݸͩͬͨͱ͖ɺ ͲͪΒΛ༏ઌ͢Δ͔ʁ
ϩοΫͷޭࡑ Ϣʔβ" Ϣʔβ# " ઌʹΞΫηεͨ͠ͷͰ ʹରͯ͠ϩοΫΛऔಘ ࡏݿ͕ແ͍ͷͰ ΤϥʔʹͳΔ
ϩοΫͷޭࡑ ฒྻॲཧͷσʔλͷෆ߹Λ͙
ϩοΫͷޭࡑ ͋ͳͨͷॲཧେৎʁ w ෳͷϒϥβΛ։͍ͯಉ࣌ΞΫηε w όζͬͨ࣌ͳͲͷେྔͷಉ࣌ΞΫηε࣌ w ฒྻॲཧΛॻ͍ͨ࣌
ϩοΫͷޭࡑ ͋ͳͨͷॲཧେৎʁ w ෳͷϒϥβΛ։͍ͯಉ࣌ΞΫηε w όζͬͨ࣌ͳͲͷେྔͷಉ࣌ΞΫηε࣌ w ฒྻॲཧΛॻ͍ͨ࣌
ϩοΫͷޭࡑ ͋ͳͨͷॲཧେৎʁ w ෳͷϒϥβΛ։͍ͯಉ࣌ΞΫηε w όζͬͨ࣌ͳͲͷେྔͷಉ࣌ΞΫηε࣌ w ฒྻॲཧΛॻ͍ͨ࣌ ྫ͑σΠϦʔͷདྷళϙΠϯτͷॲཧͱ͔ ߪೖ࣌ͷϙΠϯτݮࢉͷॲཧͱ͔
ϩοΫͷޭࡑ ͋ͳͨͷॲཧେৎʁ w ෳͷϒϥβΛ։͍ͯಉ࣌ΞΫηε w όζͬͨ࣌ͳͲͷେྔͷಉ࣌ΞΫηε࣌ w ฒྻॲཧΛॻ͍ͨ࣌
ϩοΫͷޭࡑ ͋ͳͨͷॲཧେৎʁ w ෳͷϒϥβΛ։͍ͯಉ࣌ΞΫηε w όζͬͨ࣌ͳͲͷେྔͷಉ࣌ΞΫηε࣌ w ฒྻॲཧΛॻ͍ͨ࣌ ˓˓ݶఆͷࡏݿॲཧͱ͔ Ұਓ͋ͨΓͷߪೖݶքͷॲཧͱ͔
ϩοΫͷޭࡑ ͋ͳͨͷॲཧେৎʁ w ෳͷϒϥβΛ։͍ͯಉ࣌ΞΫηε w όζͬͨ࣌ͳͲͷେྔͷಉ࣌ΞΫηε࣌ w ฒྻॲཧΛॻ͍ͨ࣌
ϩοΫͷޭࡑ ͋ͳͨͷॲཧେৎʁ w ෳͷϒϥβΛ։͍ͯಉ࣌ΞΫηε w όζͬͨ࣌ͳͲͷେྔͷಉ࣌ΞΫηε࣌ w ฒྻॲཧΛॻ͍ͨ࣌ Ұͭͷσʔλʹରͯ͠ෳͷαʔϏε͕ΞΫηε͢Δ࣌ͱ͔ ߴԽͷͨΊʹඇಉظॲཧϚϧνεϨουॲཧΛ࡞ͬͨ࣌ͱ͔
ϩοΫͷޭࡑ ϩοΫͷ ࣄ࣮ʹج͍ͯ࣌ܥྻʹॲཧͯ͠ σʔλΛదʹकΔ
ϩοΫͷޭࡑ ͜͜·ͰϩοΫͷޭࡑͷޭͷ෦
ϩοΫͷޭࡑ ϩοΫͷࡑ
ϩοΫͷޭࡑ ϩοΫʹΑΔੑೳԆ
ϩοΫͷޭࡑ ϩοΫʹΑΔੑೳԆ ˣ ϩοΫͪʹΑΔॲཧԆ
ϩοΫͷޭࡑ Ϣʔβ" Ϣʔβ# " ઌʹΞΫηεͨ͠ͷͰ ʹରͯ͠ϩοΫΛऔಘ ։์ͪ ͜ͷαΠτ͍ͳ͊
ϩοΫͷޭࡑ Ϣʔβ" Ϣʔβ# " ઌʹΞΫηεͨ͠ͷͰ ʹରͯ͠ϩοΫΛऔಘ ։์ͪ ͜ͷαΠτ͍ͳ͊ ྆ํͷϢʔβ͕ͦΕͧΕͷϩοΫͰ ͨ͞Εͨ߹σοτϩοΫ
ϩοΫͷޭࡑ ओͳϩοΫͷछྨ w ഉଞ F9DMVEFE ϩοΫ w ڞ༗ 4IBSFE ϩοΫ
ϩοΫͷޭࡑ ओͳϩοΫͷछྨ w ഉଞ F9DMVEFE ϩοΫ w ڞ༗ 4IBSFE ϩοΫ
ϩοΫରʹରͯ͠ɺଞͷΞΫηεΛҰېࢭ͢Δ ଞͷΞΫηεߋ৽ɾআɾࢀরશͯग़དྷͳ͍ ॻ͖ࠐΈϩοΫͱݺΕΔࣄ͋Δ
ϩοΫͷޭࡑ ओͳϩοΫͷछྨ w ഉଞ F9DMVEFE ϩοΫ w ڞ༗ 4IBSFE ϩοΫ
ϩοΫରʹରͯ͠ɺࢀরҎ֎ͷॲཧΛېࢭ͢Δ ଞͷΞΫηεࢀর 4&-&$5 Λ͢Δ͜ͱ͕ग़དྷΔ ಡΈࠐΈϩοΫͱݺΕΔࣄ͋Δ
ϩοΫͷޭࡑ ϩοΫΛΒͳ͍ॴͰऔ͍ͬͯΔ
ϩοΫͷޭࡑ ϩοΫΛΒͳ͍ॴͰऔ͍ͬͯΔ ˣ ҉తϩοΫ
ϩοΫͷޭࡑ .Z42-ͷ߹
ϩοΫͷޭࡑ 1PTUHSF42-ͷ߹
ϩοΫͷޭࡑ ϩοΫΛΒͳ͍ॴͰऔ͍ͬͯΔ ˣ ҉తϩοΫ ಛʹڞ༗ϩοΫසൟʹऔ͍ͬͯΔ
ϩοΫͷޭࡑ ϩοΫσʔλΛकΔͨΊʹඞཁ
ϩοΫͷޭࡑ ϩοΫσʔλΛकΔͨΊʹඞཁ ˣ ύϑΥʔϚϯεͱτϨʔυΦϑ
ϩοΫͷޭࡑ w ϩοΫͪͰॲཧ͕٧·Δ w ͍4&-&$5ʹΑͬͯߋ৽ॲཧ͕٧·Δ w ߋ৽ର͕ίϯϑϦΫτͯͨ͠͞ΕΔ w σοτϩοΫɺτϥϯβΫγϣϯࢮ͵
ϩοΫͷޭࡑ αʔϏεͷϝΠϯςʔϒϧةݥ w ଟ͘ͷࢀরͰར༻͍ͯ͠Δ w ߋ৽සൟʹ͋Δ w +0*/αϒΫΤϦͷରʹͳ͍ͬͯΔ
ϩοΫͷޭࡑ ͦͦϩοΫͷॲཧ 3%#ʹΑ͔ͬͯͳΓҧ͏
ϩοΫͷޭࡑ ϩοΫσʔλΛकΔͨΊʹඞཁ
ϩοΫͷޭࡑ ϩοΫσʔλΛकΔͨΊʹඞཁ ˣ ͔͠͠τϥϒϧͷ࣌ͷࠜਂ͍
ϩοΫͷޭࡑ ॲํᝦ
ϩοΫͷޭࡑ ॲํᝦ ϩοΫΛΔ
ϩοΫͷޭࡑ ະͳΔΈා͍
ϩοΫͷޭࡑ ະͳΔΈා͍ ˣ ͔ͬ͠Γͱཧղ͢Δࣄ
ϩοΫͷޭࡑ ϩοΫΛݟΔ
ϩοΫͷޭࡑ ϩοΫΛݟΔ ˣ ֤%#ʹ༻ҙ͞Ε͍ͯΔΈΛ͏
None
ϦϑΝΫλϦϯά ៉ྷͳϦϑΝΫλϦϯά w ࢀরͱߋ৽ͷಡΈࠐΈઌΛ͚Δ w ߋ৽ͷϘτϧωοΫΛ͚Δ w σʔλઃܭΛݟ͢ w దʹ*/%&9Λ׆༻͢Δ
ϦϑΝΫλϦϯά ҋͷਂ͍ϦϑΝΫλϦϯά w +0*/Λඇਖ਼نԽͰิ͏ w ֎෦Ωʔ੍Λ֎͢ w ͱΓ͋͑ͣΩϟογϡʹಥͬࠐΉ w ۃͷεέʔϧΞοϓ
͋͐͡Μͩ ̍ɹࣗݾհ ̎ɹΕڈΒΕͨόοΫΞοϓ ̏ɹΘΕͳ੍͍ ̐ɹϩοΫͷޭࡑ ̑ɹ·ͱΊ
·ͱΊ
·ͱΊ SQLΞϯνύλʔϯݫબ͞Εࣦͨഊू
·ͱΊ SQLΞϯνύλʔϯݫબ͞Εࣦͨഊू ↓ DBͷϊϋ͕٧·໊ͬͨஶ
·ͱΊ Ұ࡞ͬͨ%#ফͤͳ͍
·ͱΊ Ұ࡞ͬͨ%#ফͤͳ͍ ˣ ઃܭ͕େࣄ
·ͱΊ σʔλϕʔεͷࢮαʔϏεͷࢮ
·ͱΊ σʔλϕʔεͷࢮαʔϏεͷࢮ ˣ ղܾͰ͖Δਓӳ༤
·ͱΊ %#ͷΕͨࠒʹͬͯ͘Δ
·ͱΊ
·ͱΊ αʔϏενʔϜΛकΔ
·ͱΊ αʔϏενʔϜΛकΔ ˣ ͦͷͨΊʹֶͿ
·ͱΊ ۪ऀܦݧʹֶͿ ݡऀաڈʹֶͿ
·ͱΊ पғͷܦݧஊ͔ΒֶͿ
·ͱΊ पғͷܦݧஊ͔ΒֶͿ ˣ ੵۃతʹίϛϡχςΟΛར༻͢Δ
ࢀߟࢿྉ ɾQPTUHSFTRMKQ4MBDL νϟοτϧʔϜ IUUQTQPTUHSFTRMIBDLFSTKQIFSPLVBQQDPN ɾNZTRMDBTVBM4MBDL νϟοτϧʔϜ IUUQTNZTRMDBTVBMTMBDLJOIFSPLVBQQDPN
·ͱΊ 3%#ͷࣝण໋͕͍
·ͱΊ 3%#ͷࣝण໋͕͍ ˣ ֮͑ΕࣄͰ͍ؒʹཱͭ
·ͱΊ ΑΓྑ͍ઃܭΛ Ұॹʹߟ͑ͯߦ͖·͠ΐ͏
·ͱΊ 3%#͍͍ͧɻ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ɻ