スポンサーリンク

【応用情報技術者試験】垂直分散と水平分散の違いをわかりやすく解説

「垂直分散と水平分散って何を分散しているの?」
応用情報技術者試験でもデータベース分野で頻出ですが、

  • 行と列のどっち?
  • テーブルをどう分割するの?
  • 正規化との違いは?
  • どんなメリットがある?

で混乱する人がかなり多いテーマです。

この記事では、

  • 垂直分散とは?
  • 水平分散とは?
  • 違い
  • 具体例
  • 試験での頻出ポイント

を分かりやすく解説します!


まず結論

垂直分散

「列(項目)単位で分割する」


水平分散

「行(レコード)単位で分割する」


超簡単にいうと

分散方式分割対象
垂直分散列(カラム)
水平分散行(レコード)

分散データベースとは?

まずはここから!


分散データベース

データを複数のサーバへ分散して管理する仕組み。


目的

  • 性能向上
  • 負荷分散
  • 可用性向上

元のテーブル

例として社員テーブルを考える。

社員ID氏名部署住所
1田中営業東京
2鈴木開発大阪

垂直分散とは?

超頻出!


特徴

列ごとに分割する。


イメージ

社員テーブル
↓
列で分割


サーバA

社員ID氏名
1田中
2鈴木

サーバB

社員ID部署住所
1営業東京
2開発大阪

ポイント

重要!


同じ行を持つ


列だけが分かれる。


水平分散とは?

超頻出!


特徴

行ごとに分割する。


イメージ

社員テーブル
↓
行で分割


サーバA

社員ID氏名部署住所
1田中営業東京

サーバB

社員ID氏名部署住所
2鈴木開発大阪

ポイント

重要!


列構造は同じ


行だけが分かれる。


垂直分散と水平分散の違い

超頻出!

比較垂直分散水平分散
分割単位列行
英語Vertical PartitioningHorizontal Partitioning
テーブル構造異なる同じ
主な目的アクセス効率化負荷分散

イメージで理解


垂直分散

氏名列
部署列
住所列

に切る。


水平分散

社員1~1000
社員1001~2000

に切る。


利用例

重要!


垂直分散

よく使う項目だけ高速化。


例

氏名
部署

だけ頻繁に参照。


水平分散

大量データの負荷分散。


例

東日本
西日本

で分割。


シャーディングとの関係

発展知識!


水平分散の代表例。


顧客ID
地域
年月

などで分割する。


正規化との違い

頻出!


正規化

重複排除が目的。


分散

性能向上が目的。


応用情報で超頻出

かなり狙われる👇

  • 垂直分散
  • 水平分散
  • 分散データベース
  • シャーディング
  • 負荷分散

よくあるひっかけ

「垂直分散は行で分割する」

→ ❌違う!

垂直分散は

列で分割

する。


1分で復習!

垂直分散

列を分割


水平分散

行を分割


垂直分散

アクセス効率向上


水平分散

負荷分散


超重要

Vertical=列

Horizontal=行


練習問題

問題

水平分散の説明として最も適切なものはどれか。

ア

テーブルを列単位で分割する

イ

テーブルを行単位で分割する

ウ

データを圧縮する

エ

主キーを削除する


解答

正解:イ

解説

水平分散は、テーブルの行(レコード)単位でデータを分割して複数のサーバへ配置する方式です。


まとめ

垂直分散とは

「列を分割する」


水平分散とは

「行を分割する」


超重要

  • 垂直分散=列
  • 水平分散=行
  • 負荷分散
  • 分散データベース
  • シャーディング

まずは、

「垂直=縦(列)に切る」

「水平=横(行)に切る」

このイメージを持つとかなり理解しやすくなります!


知識に自信ができた方は、今度は自身のキャリアアップに向けて準備してみませんか?

未経験から、ITエンジニアへ。
「IT業界に興味はあるけれど、自分にできるか不安」「何から始めればいいのか分からない」そんな方のために、Tech GO は未経験からのIT転職を専門的にサポートします。求人を紹介するだけではなく、あなたの強みを整理し、応募準備から入社後の成…

まずは無料でキャリア相談

コメント