はじめまして。htと申します。シエルプレザンには昨年の秋頃中途採用で入社いたしました。前職でも開発系のエンジニアをしており、エンジニア歴はだいたい4年程になります。まだまだ一人で業務をこなしていくには知識や経験が不足していますので、今後も精進していこうと思います。

今回は「データベース」について初心者の方にも分かるようにお話させていただこうと思います。

データベースとは

データベースとは、「一定のルールによって整理された情報の集まり」を指します。商品情報をExcelにまとめたものや、PC内で資料や画像を使用用途でフォルダ分けされたものもルールに則り整理させているのであれば、データベースと呼べます。ちなみにデータベースというと電子的なイメージがありますが、紙媒体でも「一定のルールで整理された情報の集まり」という条件が揃っていればデータベースと呼ぶことが出来ます。辞書・電話帳等が該当します。

データベースを作るメリット

データベースを作る目的として、膨大なデータを複数のユーザーがデータを共有し、必要なときにデータを素早く取り出す事、そして格納したデータの修正(更新・削除など)を行う事が挙げられます。また、これらの目的を達成するためにはデータベースの作り方(構造)が重要になり、多種多様で複雑化した情報の山を出来るだけスマートに整理していく必要があります。この整理の仕方にもいくつか種類がありそれについては次回お話しできればと思います。

データベースを管理する

データベースが出来上がったとして、それをどのように管理していくかについてお話します。

まず、管理したい情報量が1~100程度かつ内容もシンプル、そして2~3人程で情報共有するのであれば、上記で述べたようにExcelで作ったデータベースでも容易に管理ができます。しかしこれが1万~100万といった膨大な情報量で多種多様な情報、さらにはそれらを大人数で共有し、同時に使用するといった状況が起こるとしたら、Excelでは処理速度が低下したり、一人が編集してるとき、もう一人は編集できなかったりと何かと不都合が生じます。

そこで、データベースを効率よく管理・使用する為に「データベース管理システム(以下、DBMS)」を導入します。DBMSではデータの「保管」「新規追加」「更新」「削除」そして「データの引き出し」等をスマートに操作することができます。さらに複数人が同じデータベースに対して同時にアクセスし、同時にデータを編集したとしても、行単位でロックすることが出来るので、データが壊れることもありません。それ以外にもDBMSには管理するための便利な機能が搭載されていますので、データベースの管理には欠かせません。

ちなみに、「整理された情報の集まり」と「DBMS」を合わせて「データベース」と表現する場合もあります。実際の現場ではほとんど一括りにして呼ばれています。厳密には概念が異なるのですが「ゲーム機本体」と「ゲームソフト」をまとめて「ゲーム機」と呼ぶような感覚です。

主なデータベース管理システム

実際によく使われている製品をいくつか簡単に紹介します。製品によって特徴が異なります。なので使用目的に合わせて選別する必要があります。

1.Oracle Database

主に大規模なデータを大規模な人数で共有するときに使われます。(もちろん小規模も対応してます。)高機能なDBMSのため様々な活用法が可能になります。ただ高機能なため高度な知識も必要になります。

2.SQL Server

Microsoftが提供しているDBMSです。そのためWindows環境下での相性がとてもいいです。GUI(ユーザーインターフェイス)も用意されているので視覚的な操作ができ、初心者の方にも扱いやすい仕様になっています。

3.MySQL

オープンソース(有志の開発者によって作られた無償のシステム)のデータベースです。低コストで導入できる上、セキュリティ面にも定評がありますので、あらゆるシステムで導入されています。オープンソースなので使用時に困ったときは自分で調べてどうにか解決していく必要があります。

4.PostgreSQL

こちらもオープンソースのデータベースです。一番の特徴は拡張性が高いことです。開発したいシステムに沿って独自に機能を追加したり改修したりする事ができます。またハードウェアを用意せずとも動かす事ができるので、テスト環境(試験的に作ったシステム)でも利用できます。そしてこちらも困ったときは自分で解決していく必要があります。

いかがでしょうか。今回は導入としてデータベースの概念を理解していただければ幸いです。次回はデータベースの構造や情報のまとめ方についてお話しいたします。ご覧いただきありがとうございました。

The following two tabs change content below.

ht

前職にて未経験からプログラミング技術を習得いたしました。まだまだわからない事だらけですが、勉強の積み重ねで少しずつ1人で作業できるよう精進しております。仕事は真面目ですが、普段はぽやぽやと漂う空気のように生きています。

最新記事 by ht (全て見る)