データベースとは何か、データベースの種類、データベース関連の用語について、プログラミング初心者向けに説明します。
この記事は、世界最大級のオンライン学習プラットフォームUdemyにて公開中のオンライン講座「はじめてのSQL・データ分析入門 – データベースのデータをビジネスパーソンが現場で活用するためのSQL初心者向コース」のサポート記事です。
データベース(DB)とは
- 検索や蓄積が容易にできるよう整理された情報の集まり。
- すべてのシステムがデータを取り扱っている。
- データを取り扱う手段として、ほぼ全てのシステムが何かしらの、データベースを使用。
Webサービスを開発するうえで、データベースの学習は必須といえます。
データベースマネジメントシステム(DBMS)とは
- データベースを管理するコンピュータシステムのこと。
後述しますが、たとえばMySQLやOracle Databaseなどがあります。
あらゆるところにデータベースが利用されている
- ECサイト (アマゾン、楽天、ヨドバシカメラ …)
- SNS(Facebook, Twitter, Instagram … )
- オンライン学習サイト (Udemy、 こどもちゃれんじ … )
- 会計ソフト(弥生会計、freee、 MFクラウド… )
- 銀行の預金情報管理(三菱東京UFJ銀行、三井住友銀行、みずほ銀行… )
- 住民票管理(地方自治体)
- ブログ (アメブロ、ライブドアブログ、 WordPressを使ったサイト…)
- スマートフォン(アドレス帳などの管理、アプリのデータ管理… )
などなど。
データベースを使っていないIT機器を探す方が難しいです。
ECサイトを例に考えると
- ユーザー情報 : 山田 太郎, yamada@example.com, 090-0000-0000, 東京都千代田区xxxx, ・・・
- 商品情報 : はじめてのJavaScript入門, 3,800, ・・・
- 売上情報 : 誰が、何を、いくらで、いくつかった, ・・
⇒ このようなデータを保存して扱うために、データベースを利用しています。
データベースが必要な理由
- 大量のデータから必要なデータを取り出すため
- 多人数でデータを共有して利用するため
- データの保護
DBMSの種類
DBMS には次のものがあります。
– リレーショナルデータベース(Relational Database : RDB)
– キー・バリュー型データストア(Key-Value Store : KVS)
– オブジェクト指向データベース(Object Oriented Database : OODB)
– XMLデータベース(XML Database : XMLDB)
現在一番良く使われるのが、RDSで、次に利用頻度が高いのはKVSです。
OODBとXMLDBは一般的では無いと思います。
一つ一つのDBMSについて、もう少し詳しく説明していきます。
リレーショナルデータベース(RDB)
- 現在もっとも広く利用されているデータベース
- エクセルのシートのように列と行からなる2次元の表形式でデータを管理。
- SQLという専用の言語を使ってデータを操作する。
代表的な製品
オープンソース
- MySQL(マイエスキューエル) : オープンソースのRDBMS ☆本コースで使用
- MariaDB (マリアディービー): MySQLから派生したオープンソースのRDBMS
- PostgreSQL(ポストグレスキューエル, ポストグレス, ポスグレ): オープンソースのRDBMS
商用データベース
- Oracle Database(オラクルデーターベース、オラクル) : Oracle社のRDBMS
- SQL Server (エスキューエルサーバー):Microsoft社のRDBMS
- DB2(ディービーツー) : IBM社のRDBMS※補足:RDMBS(リレーショナル・データベース・マネジメント・システム)
キー・バリュー型データストア(KVS)
- 検索に使う(Key)と値(Value)の組み合わせだけの単純な形でデータを保存する。
イメージ)name : 中村, prefecture : 東京, gender : 男
主な製品
- memchaed (メムキャッシュディー ): オープンソースのKVS
- Redis(レディス): オープンソースのKVS
オブジェクト指向データベース(OODB)
- データとそれを操作する処理をまとめて「オブジェクト」という単位で管理する
※現在はあまり使われていない
XMLデータベース(XMLDB)
インターネット上でやり取りされるデータの形式XMLを、大量かつ高速に扱うことができる。
※現在はあまり使われていない
おわりに
この記事では、プログラミング初心者の方に向けて、データベースとは何か、データベースの種類、データベース関連の用語について説明しました。
データベースに関するスキルは、Webエンジニアにとって必須のスキルとなっていますので、確実に身につけましょう。
データベースについて学べるオンライン講座
動画でプログラミング入門をしよう
オンライン学習サービスProglus(プログラス)でプログラミングを学び、創れる人になろう!
プレミアムプランを2週間無料体験しよう
今すぐ詳細を確認する