Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Speaker Deck
PRO
Sign in
Sign up for free
Webエンジニアに知ってほしいRDBアンチパターン
soudai sone
March 04, 2017
Technology
47
22k
Webエンジニアに知ってほしいRDBアンチパターン
YAPC::Kansaiの登壇資料です。
soudai sone
March 04, 2017
Tweet
Share
More Decks by soudai sone
See All by soudai sone
目指すべきソフトウェア開発と 今日から始める最初の一歩 / First step for good development
soudai
1
350
あの人の自分戦略を聞きたい!2022 / developers-summit-2022
soudai
3
1.5k
今まで生き残ってきたRDBMSとこの先10年戦えるデータストア戦略 / Database now and in the past
soudai
8
8.1k
如何にデータベースが重要でなぜ私達が学ぶのか / Reasons for learning a database
soudai
20
10k
ソフトウェアエンジニアと技術力 / developer-lifework
soudai
33
21k
問題を解決するために必要な習慣 / developer-lifehack
soudai
29
9.8k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
39
13k
時間枠の扱いをいい感じにする話 / good-time-schedule-window
soudai
6
1.2k
RDBMSの苦手なことを 如何に乗り越えていくか / challenge-to-rdbms
soudai
17
3.6k
Other Decks in Technology
See All in Technology
20220622_FinJAWS_あのときにAWSがあったらこうできた
taketakekaho
0
110
MoT TechTalk #12 タクシーアプリ『GO』大規模トラフィックを捌く分析データ基盤の全容に迫る!
mot_techtalk
1
370
Scrum Fest Osaka 2022 フルリモート下でのチームビルディング
moritamasami
2
1.2k
データ分析基盤のはじめかた
chanyou0311
0
100
IoTLT88-NTKanazawa-laundry-dry
yukima0707
0
230
ラブグラフ紹介資料 〜プロダクト解体新書〜 / Lovegraph Product Deck
lovegraph
0
260
組織の崩壊と再生、その中で何を考え、感じたのか。 そして本当に必要だったもの
kosako
10
4.3k
機械学習システムアーキテクチャ入門 #1
asei
3
1.2k
【Pythonデータ分析勉強会#33】「DearPyGuiに入門しました」の続き~Image-Processing-Node-Editor~
kazuhitotakahashi
0
150
Introduction To Technical Writing
olawanle_joel
0
100
モブに早く慣れたい人のためのガイド / A Guide to Getting Started Quickly with Mob Programming
cybozuinsideout
PRO
2
1.8k
LINEのB2Bプラットフォームにおけるトラブルシューティング2選
line_developers
PRO
4
300
Featured
See All Featured
Bash Introduction
62gerente
597
210k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
19
1.4k
Robots, Beer and Maslow
schacon
152
7.1k
Designing on Purpose - Digital PM Summit 2013
jponch
106
5.6k
Ruby is Unlike a Banana
tanoku
91
9.2k
The Invisible Side of Design
smashingmag
290
48k
Web development in the modern age
philhawksworth
197
9.3k
Put a Button on it: Removing Barriers to Going Fast.
kastner
56
2.3k
Adopting Sorbet at Scale
ufuk
63
7.6k
The Art of Programming - Codeland 2020
erikaheidi
32
11k
ParisWeb 2013: Learning to Love: Crash Course in Emotional UX Design
dotmariusz
100
5.9k
YesSQL, Process and Tooling at Scale
rocio
157
12k
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%#͍͍ͧɻ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ɻ