目次
データベースとは
- データベース(英: database, DB)とは、検索や蓄積が容易にできるよう一定のルールで整理された情報の集まり。
紙の上で管理する「電話帳」や「住所録」なども、データベースといえるが、通常はコンピュータによって実現されたものを指す。 - コンピュータを使用したデータベース・システムでは、データベース管理用のソフトウェアであるデータベース管理システム(DBMS:Database Management System)のことや、そのシステム上で扱うデータ群のことを、単に「データベース」と呼ぶ場合もある。
- データベースの例としては、住所録、検索エンジン、電子カルテ、オーダリングシステム、企業データベース、CDDB (Compact Disc DataBase) などCDの曲名やアーティスト名の情報が格納された音楽データベース、化学データベース、OPAC、IPDL、将棋や囲碁などの棋譜データベースなどがある。
データベース:用語の起源
第二次大戦後1950年代に米軍(DoD - Department of Defence : 米国国防総省)が、点在していた膨大な量の資料を
ひとつの基地に集約して効率化を図った際に誕生したと言われている。
すなわち、一ヶ所に集められた情報基地=Data(情報)のBase(基地)がデータベースという用語の起源とされる。
データベースの特徴・メリット
- データを一か所でまとめて蓄積・管理できる(データの蓄積)
- 目的のデータを簡単に検索・抽出・編集・共有することができる(データの活用)
- システムとデータを分離・独立させて管理することができる(データ独立)
データベースの活用
データベース・マーケティング
- データベース・マーケティングとは、顧客の年齢や住所、職業、家族構成、年収や性別、学歴や趣味などといった属性情報や購買履歴などをデータベース管理し、特定の属性の人たちが好んで購入する商品やサービスはどのようなものか、という傾向を明らかにし、その傾向に沿った商品やサービスを積極的に提供していくマーケティング手法のこと。
- 属性情報によって顧客の切り分けを行うことをターゲットセグメンテーションと言う。
特定の属性を持つ顧客にダイレクトにアプローチできることは極めて効果的な方法。 - データベース・マーケティングの典型的な例:
アマゾンでは購買履歴情報がデータベース化されており、ある商品を購入した人の購入傾向を購買履歴情報により分析し、「合わせて買いたい」「この商品を購入した人はこちらの商品も購入しています」といった商品情報をその人の購入傾向に合わせて紹介している。
データモデル
データモデルとは、データベースに格納するデータをどのように配置するかを論理的・物理的な側面から規定するものである。
データモデルの種類
- 概念データモデル
- 論理データモデル
- 物理データモデル
主な論理データモデル
論理データモデルの例は以下に示す通りである。
- 階層型データモデル(ハイアラキカル・データモデル)
- ネットワーク型データモデル
- リレーショナルデータモデル (関係モデル、関係データベース)
- オブジェクトデータモデル (オブジェクト指向、オブジェクトデータベース)
- カード型データモデル
- XMLデータベース
- キー・バリュー型データストア
1960年代から70年代にかけては階層型データモデルやネットワーク型データモデルが主流であった。
リレーショナルデータモデルがイギリスの計算機科学者エドガー・F・コッドによって考案されてからは、それがもっとも広く普及している。
リレーショナルデータモデル
IBMのエドガー・F・コッドによって考案された現在もっとも広く用いられているデータモデルである。
数学の集合論に基づき、複数の関係(リレーション)を基本的なデータ型とする。
格納されたデータを獲得するための問い合わせは関係代数ないし関係論理の演算によって行う。
関係モデル
★数学の集合論を元に構築されたモデル。
- 関係モデルでは、データ、データ間の関連をリレーション(関係)とタプル(行、組)で表現する。
リレーション(関係)
- ドメイン(定義域) ・・・ 集合のこと。例)原料{米, 小麦} 製品 {もち, パン}
- ドメインの直積(すべての組合せ)
米, もち
米, パン
小麦, もち
小麦, パン - 上記の1行1行をタプル(行、組)、縦の列をカラム(列、属性)といい、上記から必要なタプルのみを選んだ直積の部分集合のことをリレーション(関係)という。
米, もち
小麦, パン
3値論理
- 2値論理 ⇒ 真(true)、偽(false)
- 3値論理 ⇒ 真(true)、偽(false)、NULL
NULL
NULLは値ではなく、以下の内容を示すもの。
- 不明・未知(Unknown)
- 非存在・適用不能(Inapplicable)
システム開発とデータベース
システム開発で目的のシステムを作っていく手法には大きく以下の3つがある。
- プロセス中心アプローチ
ソフトウェアの機能(プロセス)を段階的に細分化して最小機能に落とし込んでいく。
図法:DFD、状態遷移図 - データ中心アプローチ
業務で扱うデータ全体をモデル化し、データベースを中心に設計する。
図法:E-R図 - オブジェクト指向アプローチ
プログラム、データをオブジェクトとしてとらえて組合せ、システムを構築する。
図法:UML
データ中心アプローチ
- 概念設計
- トップダウンアプローチ
- ボトムアップアプローチ
- 概念データモデル
- 論理設計
データベースとユーザやデータベース以外とを結びつけるための設計。これにより作成されるデータモデルを論理データモデルという。 - 物理設計
データベースとDBMS・ハードウェアを結びつけるための設計。これにより作成されるデータモデルを物理データモデルという。
- 論理設計
- データ独立
- 論理データ独立
- 物理データ独立
- 3層スキーマアーキテクチャ
データベースを3層に分ける方式は、他にANSIで標準化されたANSI/X3/SPARCの3層スキーマアーキテクチャがある。
- 外部スキーマ
ビュー - 概念スキーマ
- 内部スキーマ
インデックス
データ分析とデータベース
- BI(Business Intelligence)
企業などの組織に関するデータを収集・蓄積・分析・報告し、経営上の意思決定を効率的に行うための方法。
データウェアハウスを用いて分析・データマイニングを行い意思決定に活用する。
- OLTP(OnLine Transaction Processing)
トランザクション中心のオンライン処理。
- OLAP(OnLine Analytical Processing)
複雑で分析的な問い合わせを行うオンライン処理。
OLTPのデータのスナップショットを取り、分析可能な多次元データの集合(データウェアハウス)に再構成し利用する。
- データウェアハウス
意思決定のため、目的別に編成され統合されたデータであり、時系列で、削除や更新を行わないデータの集合体。
ビル・レイモンが提唱した概念。
- データマイニング
ビッグデータに対して統計学、パターン認識、AI等の技法を適用することにより新たな知識を得る方法。
- ビッグデータ
以下の3Vと呼ばれる特徴を持つ大量データ。RDMSでは扱い切れないデータ。
①データの量(Volume)が多い
②データの種類(Variety)が多い
③データ発生・処理の頻度・速度(Velocity)が多い
- AI(Artificial Intelligence)
人工知能。人間の一部の機能を代替する「弱いAI」は実用化されてきている。
画像認識、音声認識、テキスト翻訳等。
AIの学習にビッグデータが利用される。利用前にデータの重複誤記等を除外しデータの品質を高めるデータクレンジングが行われる。
ページ一覧
'IT系/インフラ系/DB/基礎/データベースとは/' には、下位層のページがありません。
リンク集
重複を恐れないリンク集。
- データベース - Wikipedia
- RDBの歴史をディグってみた - Zeals TECH BLOG
- データベースとは パソコン初心者講座
- データベースとは - 意味の解説|ITトレンドのIT用語集
- データベースとは | クラウド・データセンター用語集/IDCフロンティア
- データベースとは - コトバンク
- データベースとは | MLAB
- データベースとは (database, DB): - IT用語辞典バイナリ
- データベースの役割は?メリット・管理システムもわかりやすく解説|ITトレンド
- 今さら聞けない「データベース」とは?どんな役割を担っているの? | データのじかん
- 【初心者向け】データベースとは何か? わかりやすく簡単に意味を図解 | 初心者向け完全無料プログラミング入門
- 初心者向けの解説書でSQLとリレーショナルデータベースの基本を押さえよう:CodeZine(コードジン)
- データベースとは - BitArts
- データベース01 - データベースとは - 立命館大学 情報理工学部「データベース」講義スライド
- リレーショナルデータベース | IT用語辞典 | 大塚商会
- [SQL] 1. データベースの概要 1 | TECHSCORE(テックスコア)
- データベースとは - 株式会社ミチノシステムズ
- そもそも、リレーショナルデータベースとは何か?:ゼロからのリレーショナルデータベース入門(1) - @IT
- SQL講座|データベースとは|データベースの概要と種類
- データベースの意義、位置付けと利用方法 | 日本OSS推進フォーラム
- データベース,DBMS とは何か? - プログラミング日記
- 誰でもすぐわかるデータベース基礎の基礎~ - Qiita
- 5分で絶対に分かるデータベース - ITmedia エンタープライズ
- 【データベース設計基礎】-データベースとは
- データベース_その1 | KENスクールブログ
- データベースとは? | 技術ブログ| レック・テクノロジー・コンサルティング株式会社
- DB651-1.pdf
- データベースの基礎 - 高田 良宏(金沢大学)
- そもそもデータベースとは?基礎から分かるデータベース入門 | サービス | プロエンジニア
- データベースの基礎知識 ~データモデル、RDBMS、NoSQLの概要~ - KDE BLOG
- データベースにRDBを選択するときの注意事項について考える(追記あり) - Qiita
- 2020年現在のNewSQLについて - Qiita
- GraphQLの全体像とWebApp開発のこれから - Qiita
- RDBの限界とNoSQLの登場 - Qiita
- [[xxxx :xxxx]]
動画
- データベースとは - YouTube
- データベースとSQLとは何ですか? - YouTube
- データモデル - YouTube
- 関係データベースで起こる問題 - YouTube
- 基本情報技術者試験対策 68 データベースとは - YouTube