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
抽象化をするということ - 具体と抽象の往復を身につける / Abstraction and concretization
soudai
21
8.8k
目の前の仕事と向き合うことで成長できる - 仕事とスキルを広げる / Every little bit counts
soudai
26
7.3k
ソフトウェアエンジニアとしてキャリアの螺旋を駆け上がる方法 - 経験と出会いが人生を変える / 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
飲食店予約台帳を支えるインタラクティブ UI 設計と実装
siropaca
7
1.8k
Oracle Cloud Infrastructure:2025年2月度サービス・アップデート
oracle4engineer
PRO
1
230
滅・サービスクラス🔥 / Destruction Service Class
sinsoku
6
1.6k
管理者しか知らないOutlookの裏側のAIを覗く#AzureTravelers
hirotomotaguchi
2
450
Nekko Cloud、 これまでとこれから ~学生サークルが作る、 小さなクラウド
logica0419
2
980
Amazon S3 Tablesと外部分析基盤連携について / Amazon S3 Tables and External Data Analytics Platform
nttcom
0
140
白金鉱業Meetup Vol.17_あるデータサイエンティストのデータマネジメントとの向き合い方
brainpadpr
6
780
2/18/25: Java meets AI: Build LLM-Powered Apps with LangChain4j
edeandrea
PRO
0
130
開発組織のための セキュアコーディング研修の始め方
flatt_security
3
2.5k
リーダブルテストコード 〜メンテナンスしやすい テストコードを作成する方法を考える〜 #DevSumi #DevSumiB / Readable test code
nihonbuson
11
7.4k
リアルタイム分析データベースで実現する SQLベースのオブザーバビリティ
mikimatsumoto
0
1.4k
ホワイトボードチャレンジ 説明&実行資料
ichimichi
0
130
Featured
See All Featured
YesSQL, Process and Tooling at Scale
rocio
172
14k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3k
BBQ
matthewcrist
87
9.5k
Building a Modern Day E-commerce SEO Strategy
aleyda
38
7.1k
Automating Front-end Workflow
addyosmani
1368
200k
Bash Introduction
62gerente
611
210k
Code Review Best Practice
trishagee
67
18k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
Designing Experiences People Love
moore
140
23k
Git: the NoSQL Database
bkeepers
PRO
427
64k
It's Worth the Effort
3n
184
28k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
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%#͍͍ͧɻ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ɻ