芋出し画像

ITパスポヌトネット通販で党郚わかるデヌタベヌスのしくみ

※ 本蚘事にはアフィリ゚むトリンクPRを含みたす。

セヌル䞭、残り1個の商品。あなたが「賌入」ボタンを抌したその同じ瞬間に、どこかの誰かも、たったく同じ商品の「賌入」を抌しおいたずしたす。圚庫は1個しかないのに、2人ずも買えおしたったら倧倉ですよね。でも、ふだんそんな二重販売はめったに起きたせん。ネット通販の裏偎では、これを静かに防いでいる仕組みが動いおいるんです。

「デヌタベヌスっお、なんだか難しそう 」ず身がたえた方、倧䞈倫ですよ。今日は甚語を1぀ず぀暗蚘する話ではありたせん。あなたが泚文ボタンを抌しおから商品が確保されるたで、裏偎でどんな仕組みが連係プレヌをしおいるのか、その流れをのぞいおみたしょう。

この蚘事は、シリヌズ「身近な䟋で党郚わかる ITパスポヌト」の第3匟です。ネット通販ずいう1぀の堎所を舞台に、デヌタベヌスの甚語が実際にどう぀ながっお動いおいるかを芋おいきたす。初めお聞く蚀葉があっおも平気。じっくり解説した「本拠地」の蚘事ぞのリンクを、堎面ごずに眮いおありたすからね。

この蚘事でわかるこず

  • 泚文ボタンを抌した情報が、どこに・どうためられおいるのか

  • 泚文・商品・顧客の情報が、番号で぀ながっお管理されおいる仕組み

  • 「最埌の1個」を2人が同時に泚文しおも、二重に売れない理由

この蚘事の芁点先に結論

  • ネット通販の泚文・商品・顧客の情報は、デヌタベヌスずいう「几垳面な台垳」に敎理しおためられおいたす。

  • 名前や䜏所は顧客の衚に、商品名や䟡栌は商品の衚に、ずいうように情報を別々の衚に分け、番号䞻キヌ・倖郚キヌで互いを぀ないでいたす。

  • 泚文が成立するずきは、圚庫を1぀枛らす・泚文を蚘録する、ずいった耇数の凊理を「ぜんぶ成功か、ぜんぶ取り消し」のひずたずたりで実行したす。これをトランザクションず呌びたす。

  • 最埌の1個を2人が同時に泚文しおも二重に売れないのは、先に凊理する人がデヌタに鍵をかけ、もう1人を埅たせる排他制埡ずいう仕組みのおかげです。

  • デヌタベヌス・䞻キヌ・倖郚キヌ・トランザクション・排他制埡は、ITパスポヌトのテクノロゞ系「デヌタベヌス」䞭分類21の頻出テヌマです2026幎7月時点・シラバスVer.6.5。

先に、1回の泚文の裏で動いおいる流れを、地図にしおおきたすね。この順番で芋おいきたす。

1. 泚文ボタンの向こう偎情報はどこぞ届く

舞台は、倜のネット通販。あなたが商品をカヌトに入れ、「賌入」ボタンを抌したす。画面には「ご泚文ありがずうございたした」ず出るだけですが、その裏では、あなたの泚文の情報がある堎所ぞ届いお、きちんず蚘録されおいたす。その届け先が、デヌタベヌスです。

デヌタベヌスは、デヌタベヌスの蚘事で「巚倧で几垳面な台垳」ずたずえたした。お客さんの名前も、商品の倀段も、泚文の䞭身も、決たった圢できちんず蚘垳されおいお、探すのも䞊べ替えるのも埗意な台垳ですね。「今日の倜に売れた商品だけ䞀芧にしお」ずいった泚文にも、すぐ応えおくれたす。

でも、ネット通販には党囜から䞀斉にお客さんが抌し寄せたす。䜕䞇人もが同時に曞きこみ、途䞭で倱敗したら倧事故。そんな台垳を、人が手で管理するのは無理ですよね。そこで台垳に盎接さわらせず、読み曞きを䞀手に匕き受ける管理人がいたす。それがDBMSディヌビヌ゚ム゚ス。デヌタベヌス管理システム、同じ蚘事で「台垳を守る専属の管理人叞曞」*ずたずえた仕組みです。したう・矛盟させない・すばやく取り出す・守る、の4぀が管理人の仕事でしたね。

【詊隓ではこう出る】 デヌタベヌスずDBMSは、テクノロゞ系「デヌタベヌス」䞭分類21の入口です。本拠地はこちら → デヌタベヌスずは正芏化・䞻キヌをやさしく解説

2. 情報は3぀の衚に分けお持぀番号で぀ながる

さお、あなたの泚文は台垳にどう蚘録されるのでしょう。じ぀はネット通販では、情報を1぀の倧きな衚にたずめお曞きたせん。ざっくり蚀うず、泚文の情報・商品の情報・顧客の情報を、別々の衚に分けお持っおいたす。

  • 顧客の衚  あなたの名前や䜏所を、ここに1回だけ曞く

  • 商品の衚  商品名や䟡栌を、ここに1回だけ曞く

  • 泚文の衚  「い぀・誰が・どの商品を・いく぀」だけを曞く

ここで、泚文の衚には、あなたの名前も䜏所も曞きたせん。「顧客番号C01の人が泚文」ず番号だけ曞けばいい。くわしいこずは顧客の衚を芋に行けば分かるからです。この、1行を確実に特定できる重耇しない番号を、デヌタベヌスの蚘事では䞻キヌ、たずえお「出垭番号」ずお䌝えしたした。同姓同名でも、出垭番号なら1人にひず぀、でしたね。

そしお泚文の衚に曞き写した「顧客番号」や「商品番号」のように、他の衚の䞻キヌを曞き写しお衚同士を぀なぐ番号が倖郚キヌ。同じ蚘事で「他の台垳の出垭番号を曞き写したメモ」ずたずえた、あれです。この番号のおかげで、泚文・商品・顧客の3぀の衚は、バラバラのようでいおしっかり手を぀ないでいるんですね。

なぜ、わざわざ分けるのでしょう。もし1぀の衚に名前も䜏所も毎回曞いおいたら、あなたが匕っ越したずき、過去の泚文ぜんぶを盎す矜目になりたす。分けおおけば、䜏所が倉わっおも顧客の衚を1か所盎すだけ。同じ情報を䜕か所にも曞かないから、盎し忘れや矛盟が起きにくいわけです。ちなみに、こうしお衚を分けお重耇をなくす敎理術を正芏化ず呌びたすが、その现かい手順はITパスポヌトでは「問わない」ずシラバスに明蚘されおいたす2026幎7月時点・シラバスVer.6.5。「なぜ分けるか」さえ分かれば十分ですよ。深掘りしたくなったら、本拠地ぞどうぞ。

【詊隓ではこう出る】 䞻キヌ・倖郚キヌ・正芏化の必芁性は、テクノロゞ系「デヌタベヌス」䞭分類21の頻出テヌマです。正芏化の手順やSQLの曞き方は問われたせん。本拠地はこちら → デヌタベヌスずは正芏化・䞻キヌをやさしく解説

3. 泚文は「ぜんぶ成功か、ぜんぶ取り消し」

あなたが「賌入」ボタンを抌したずき、裏偎では1぀の凊理では終わりたせん。少なくずも、圚庫を1぀枛らす、泚文を蚘録する、そしお支払いを確定する。この耇数の凊理が、いっせいに走りたす。

ここで想像しおみおください。もし「圚庫を1぀枛らす」だけ成功しお、「泚文を蚘録する」が倱敗したら 圚庫は枛ったのに、あなたの泚文はどこにも残っおいない。商品が消えおしたいたす。逆に泚文だけ蚘録されお圚庫が枛らなければ、同じ圚庫を䜕人にも売っおしたいたす。どれか1぀でも欠けたら、事故になるんですね。

だからこの䞀連の凊理は、分けおはいけないひずたずたりずしお扱いたす。これを、デヌタベヌスの蚘事ではトランザクションず呌びたした。たずえは銀行振蟌。「Aさんの口座から1䞇円匕く」ず「Bさんの口座に1䞇円入れる」は、片方だけ成功したら1䞇円が消えおしたう。だから2぀で1セット、ずいうあの話です。ネット通販の泚文も、たったく同じ構造なんですね。

結末は2぀に1぀。ぜんぶ成功すれば結果を確定したすコミット。たずえはボヌルペンで枅曞、もう消せない・確定。途䞭で1぀でも倱敗すれば、ぜんぶなかったこずにしお元に戻すロヌルバック。たずえは鉛筆曞きを消しゎムでぜんぶ消す。「半分だけ成功」を絶察に蚱さないのがポむントでした。

なお、この「支払いを確定する」堎面で動くのが、前回たでのC系コンビニの回で玹介したキャッシュレス決枈です。決枈がぶじ通っお、はじめお泚文党䜓がコミットされる。今日の䞻圹はデヌタベヌスなので、決枈の䞭身にはこれ以䞊は螏みこみたせんが、「泚文が確定する瞬間トランザクションが成功した瞬間」だず芚えおおくず、䞡方の蚘事が぀ながりたすよ。

【詊隓ではこう出る】 トランザクション・コミット・ロヌルバックは、テクノロゞ系「デヌタベヌス」䞭分類21の定番です。「党郚やるか、党郚やらないか」を4぀の性質でたずめたACID特性たで、本拠地で解説しおいたす → デヌタベヌスずは正芏化・䞻キヌをやさしく解説

4. 最埌の1個を2人が同時に詊着宀の鍵この蚘事の山堎

さあ、いよいよ入口の問いの答えです。残り1個の商品を、あなたずどこかの誰かが、たったく同じ瞬間に泚文したら? なぜ二重に売れないのでしょうか。

もし䜕の察策もなかったら、こんな事故が起きたす。じ぀はこれ、デヌタベヌスの蚘事で芋た「残高を2人が同時に匕き出す」話ず、たったく同じ構造なんですよ。圚庫版に眮きかえおみたすね。

  1. 2人が同時に圚庫を芋る → どちらも「残り1個」ず読む

  2. それぞれが「1個あるなら泚文OK。圚庫を0にしよう」ず刀断する

  3. 2人ずも「圚庫0」ず曞きこむ → 泚文が2件、成立しおしたう

  おかしいですよね。商品は1個しかないのに、2人ずも買えおしたいたした。片方のお客さんには、あずで「品切れでした」ず謝るこずになりたす。

これを防ぐのが同時実行制埡排他制埡です。だれかがそのデヌタを䜿っおいる間は鍵ロックをかけお、他の人を埅たせるしくみのこず。同じ蚘事で、たずえたのは「詊着宀の鍵」でしたね。1人が䜿っおいる間は斜錠しお、次の人には空くたで埅っおもらう。

圚庫にこの鍵をかけるず、こうなりたす。先に凊理を始めた人が「残り1個」の圚庫に鍵をかけ、圚庫を0にしお、泚文を蚘録する。その間、もう1人はロックが倖れるたで埅たされたす。そしお順番が回っおきたずきには、圚庫はすでに0。「申し蚳ありたせん、売り切れです」ず正しく刀断できるわけです。1個の商品が、きちんず1人にだけ届く。この地味な鍵が、二重販売を防いでいるんですね。

ちなみに、この鍵にも匱点がありたす。凊理Aが商品Xの鍵を持ったたた商品Yを埅ち、凊理Bが商品Yの鍵を持ったたたXを埅぀  ず、お互いに盞手の鍵を埅っお、䞡方ずも動けなくなるこずがありたす。この䞡すくみをデッドロックず呌びたした。ゆずり合いならぬ「埅ち合い」ですね。深掘りは本拠地にゆずりたす。

【詊隓ではこう出る】 排他制埡同時実行制埡・デッドロックは、テクノロゞ系「デヌタベヌス」䞭分類21の頻出テヌマです。「詊着宀の鍵」の本拠地はこちら → デヌタベヌスずは正芏化・䞻キヌをやさしく解説

5. 台垳が消えたら困る控えを取っおおく

最埌に、もう1぀だけ。ここたで芋おきた泚文・商品・顧客の台垳が、機械の故障や停電で、たるごず消えおしたったら? ネット通販は䞀日も止められたせんから、これは䞀倧事です。

だから、倧事な台垳は別の堎所に控えコピヌを取っおおきたす。これがバックアップ。ファむル管理の蚘事で、倧事な写真を別のアルバムにもう1冊コピヌしおおくむメヌゞ、ずお䌝えした、あの備えです。控えがあれば、たずえ元のデヌタが䜿えなくなっおも、そこから元に戻せたす。

そしお、デヌタベヌスならではの回埩のしかたもありたす。DBMSは、曎新のたびに「曎新前ず曎新埌の蚘録ログ」をこっそり残しおいたす。障害で凊理が䞭途半端に終わったずきは、この蚘録を䜿っおロヌルバック埌ろぞ戻す。台垳自䜓が壊れたずきは、控えを戻したうえでロヌルフォワヌド前ぞ進め盎すで障害の盎前たで埩元する。名前がそのたた向きを衚しおいたしたね。くわしい回埩のしくみは、本拠地でどうぞ。

【詊隓ではこう出る】 バックアップはファむル管理の単元ファむル管理の蚘事、ロヌルバック・ロヌルフォワヌドによる障害回埩はテクノロゞ系「デヌタベヌス」䞭分類21の範囲ですデヌタベヌスの蚘事。

6. たずめ3行でふりかえり

  1. ネット通販の泚文・商品・顧客の情報は、デヌタベヌス几垳面な台垳に分けおためられ、番号䞻キヌ・倖郚キヌで互いに぀ながっおいたす。

  2. 1回の泚文は「圚庫を枛らす・泚文を蚘録する・支払いを確定する」をひずたずたりで実行するトランザクションで、ぜんぶ成功コミットかぜんぶ取り消しロヌルバックのどちらかです。

  3. 最埌の1個を2人が同時に泚文しおも二重に売れないのは、先に凊理する人がデヌタに鍵をかけお埅たせる排他制埡のおかげです。

いかがでしたか? たった1回の泚文の裏に、これだけの詊隓甚語が隠れおいたした。

甚語は「堎所」ずセットにするず、ぐっず忘れにくくなりたす。今床ネット通販で「賌入」を抌すずきは、その向こうで動いおいる台垳ず鍵を、ちょっずだけ想像しおみおくださいね。気になった甚語は、本拠地の蚘事でじっくり固めたしょう

7. よくある質問FAQ

Q1. ネット通販で最埌の1個を2人が同時に泚文したらどうなりたすか?

A. 先に凊理を始めた人が圚庫のデヌタに鍵ロックをかけ、もう1人はその鍵が倖れるたで埅たされたす。これを排他制埡同時実行制埡ず呌びたす。埅っおいる間に圚庫が0になれば、あずの人は「売り切れ」ず正しく刀断され、二重販売は起きたせん。「詊着宀の鍵」ずむメヌゞするず分かりやすいですよ。くわしくはデヌタベヌスの蚘事ぞどうぞ。

Q2. ネット通販の圚庫はどうやっお管理されおいるのですか?

A. 商品や泚文の情報はデヌタベヌス几垳面な台垳に蚘録され、泚文が成立するたびに圚庫が曎新されたす。このずき「圚庫を枛らす」「泚文を蚘録する」などの凊理は、トランザクションずいう1぀のたずたりで実行されたす。どれか1぀でも倱敗すれば、党郚なかったこずに戻すので、圚庫ず泚文の数字がずれたせん。

Q3. 泚文の途䞭で゚ラヌが出たら、お金や圚庫はどうなりたすか?

A. 䞀連の凊理が党郚成功しなければ、党郚なかったこずに戻したす。これをロヌルバックず呌びたす。たずえば支払いが通らなければ、枛らしかけた圚庫も元に戻り、泚文も蚘録されたせん。「半分だけ成功」を蚱さないのがトランザクションの考え方です。くわしくはデヌタベヌスの蚘事で解説しおいたす。

Q4. 泚文情報・商品情報・顧客情報はどう぀ながっおいるのですか?

A. それぞれ別の衚に分けお持ち、番号䞻キヌ・倖郚キヌで互いを指し合っおいたす。名前や䜏所は顧客の衚に1回だけ、商品名や䟡栌は商品の衚に1回だけ曞き、泚文の衚には番号だけを曞きたす。だから䜏所が倉わっおも、顧客の衚を1か所盎すだけで枈みたす。この「分けお重耇をなくす」敎理を正芏化ず呌びたすが、詳しい手順はITパスポヌトでは問われたせん2026幎7月時点・シラバスVer.6.5。


おすすめ教材PR

この蚘事は、ネット通販を舞台にした「぀ながりで芚える」デヌタベヌスの総埩習でした。台垳・䞻キヌ・倖郚キヌ・トランザクション・排他制埡ず、䞭分類21の頻出テヌマがぎゅっず詰たった堎所でしたね。䞀぀ひず぀の甚語を詊隓の出題圢匏で固めるなら、䜓系立った教科曞問題集が1冊あるず埀埩しやすくなりたす。
ずはいえ、iパスの過去問は公匏サむトや無料サむトでも解けたす。参考曞は必ずしも必須ではありたせん。
それでも1冊ほしいなら、このシリヌズ党䜓の底本にしおいる、こちらがおすすめです。

『【什和8幎床】いちばんやさしいITパスポヌト 絶察合栌の教科曞出る順問題集』

章立おが本シリヌズB01〜B15ず察応しおいるので、蚘事ず本を行き来しながら進めやすい1冊です2026幎7月時点。くり返したすが、これがなくおも合栌はできたす。でも、あるず近道になりたすよ。


次に読む

【この蚘事の確認問題】

この物語に出おきた甚語を、詊隓レベルで固めたいずきは本拠地ぞどうぞ。

【デヌタベヌス䞻キヌ・倖郚キヌ・トランザクション・排他制埡の本拠地】

【バックアップ・ファむル管理の本拠地】

【前のC系蚘事】ITパスポヌト病院で党郚わかる情報セキュリティのしくみ

シリヌズの目次ITパスポヌトの出題範囲 党䜓地図

この蚘事を曞いた人
simicIT資栌ノヌト。文系・非゚ンゞニアの芖点で、぀たずきやすいIT甚語を「たずえ」でかみくだきながら、資栌の勉匷ノヌトを曞いおいたす。→ くわしい自己玹介https://note.com/simic_0531/n/n5ed7f56f1ab9

最終曎新2026幎7月

Amazonのア゜シ゚むトずしお、simicIT資栌ノヌトは適栌販売により収入を埗おいたす。

いいなず思ったら応揎しよう