データベース入門
データベースとは、管理しやすいように整理されたデータ群です。
なぜデータベースが欲しいのか??
一つにデータの永続性が欲しいからです。
これまではサーバーが再起動するたびにデータが消えてしまうので、使い物になりません。
メリットとして下記のことが挙げられます。
・大量のデータを効率的に扱い、保存が可能
・データの照会、挿入、更新を容易にするツールもある
・データへのアクセスを制限するセキュリティ機能もある
・スケールする
データベースの世界では、大きく2種類に分類することができます。
SQLデータベース・・・
MySQL/Postgre/SQLite/Oracle/Microsoft SQL server
No SQLデータベース・・・
Mongo DB/Couch DB/Neo4j/Cassandra/Redis
・SQLデータベース
SQLという言語を用います。リレーショナルデータベースであり、すべてのデータはテーブルというものにいれ、そのテーブルの形をあらかじめ決めておき、データを挿入するものになります。
形というものは必ず守らないといけません。
「リレーション」
簡潔にまとめると、テーブル同士の関係を設定し、関連付けるものである。(Excelで言うところの別シートのデータを紐づける意味)
ちなみにSQL文の例
・No SQLデータベース
文字通り、SQL言語を使いません。
その代わりに多種多様な方法でデータを扱います。そして関係テーブルとは異なる方法
でデータを保存します。
NoSQLデータベースには、データモデルに基づいたさまざまなタイプがあり、主なタイ
プは、ドキュメント、キーバリュー、ワイドカラム、グラフです。
その中の例として、上記のMongo DB/Couch DB/Neo4j/Cassandra/Redis が挙げられるのです。
今後はドキュメントデータベースでもある、Mongo DBについて詳しく記述します。
ドキュメントデータベース・・・
JSON(JavaScript Object Notation)オブジェクトに似たドキュメントにデータを保存します。
そしてスキーマレスでデータ構造が柔軟なものです。
あらかじめ形を決めておく必要がないので、幅広い使用例に適しており、汎用的なデータベースとして使うこ
とができます。