はじめに
ITが生活の一部になっている昨今、右を見ても左を見てもITの話題で持ちきりです。AIやらDXやら、アルファベット2,3文字の名前はとりあえずIT用語かぁ?って感じですよね。
特に、最近の若者の間でバズってるのはPG(プログラミング)でしょうか。「俺、プログラミングやってんだよね」って言っとけば何となく強者感が出ますが、文部科学省が必修科目としてプログラミングを学校教育にぶち込むほどなので、どうやら大切なスキルであることに間違いなさそうです。
しかしながら、ITを社会で活かしていくためには、プログラミングよりも重要な項目があると僕は思います。
そう、それが、今回解説する「データベース」です。
そもそも、プログラミングってのは、データベースありきといっても過言ではないですからね。「この大量のデータどうしてやろうか」ってときに、「プログラミング使っていい感じにしようぜ」ってのが元ですから。(多分)
そのため、ITを語るうえでデータベースは避けては通れない概念なのですが、困ったことに、初心者にとって、こいつを理解することは、思春期の女子を理解する以上に難しいのです。世に出回っている本やネットも、「いやこれ絶対理解させる気ねえだろ」ってのばっかりなんですよね。
というわけで、今回はそんな気難しい「データベース」に関して、初心者に向けて丁寧にかつ分かりやすく解説していこうと思います。
また、解説にあたっては「わかりやすさ」を重視しますので、本来の概念とはちょっとばかしずれる箇所があるかもですが、プロの方、そこはいい感じに察してください。
データベースとは
データベースとは、ある一定の規則の元整理されたデータや情報の集まりのことを指します。
とはいっても、こんな抽象的なこと言われてもピンとこないと思うので、よりイメージしやすいもので例えると、図書館なんかがいいでしょう。
本を読まない人でも一度は図書館に行ったことがあると思いますが、データベースとは、まさに図書館なのです。また、本棚にある本がデータになります。
では、なぜ図書館なのかというと、データベースはある一定の規則の元整理された、という点がが重要だからです。図書館には、まずジャンル(科学、IT、医療、教育など)で分かれた本棚があり、その本棚に置いてある本はタイトルや作者のあいうえお順で並んでいます。
データベースにあるデータのも図書館の本と同様に、ジャンルや項目で整理されている必要があります。例えば、個人情報(=本)をデータベースにしよう(=図書館に置こう)と思ったら「名前」「生年月日」「住所」「性別」などの項目(=本棚)を作り、すべての情報をその順番に並べなければいけません。
あくまでも例えではありますが、規則的に整理された情報が集まったもの、という点が重要なのです。
データベースの構造
多くの情報が規則的に並んでいるデータベースですが、当然、これ単体だけでは動きません。図書館の本棚も、それだけで何かを生み出すようなことはないですよね。
実は、データベースはそれ単体で存在することはなく、データベースシステムという一つのシステムとして構築されているのです。
データベースシステムは、3つの要素で構成されています。それは、①データベース、②DBMS(データベースマネジメントシステム)、③プログラムです。
まず、データベースは、上記で解説した一定の規則で整理された情報の集まりのことです。イメージ的には図書館であるという話をしましたね。
次に、DBMSは、データベースの情報を操作してくれる存在(ソフトウェア)のことです。図書館の話で言えば、そこにいる職員さんが当てはまります。本のある場所を聞けば、その場所を教えてくれたり、本を持ってきてくれたりしますよね。DBMSも同様に、データベースにある情報を持ってきたり、または消してくれたりします。ちなみに、データベースでよく聞くMySQLやPostgreSQL(ポスグレ)は、このDBMSのソフトウェア名のことです。
そして最後が、プログラムです。プログラムとは、一言でいえば命令のことですね。先ほどのDBMSですが、情報を操作してくれる存在というだけであって、決して自ら動くことはありません。図書館いる職員さんが、何も言ってないのに自分が求めている本を持ってきたら怖いですよね。必ず、こちら側から「この本もってきてもらっていいですか?」と尋ねるはずです。この尋ねる行為、つまり、DBMSに対して「この情報が欲しい」と命令する行為をプログラムといいます。とはいっても、コンピューターに人間様の命令が通じるはずがありません。そのため、命令にはプログラミング言語を使う必要があます。そして、そのプログラミング言語こそがSQLなのです。
まとめ
さて、今回はデータベースの基礎中の基礎について解説しましたがいかがだったでしょうか。DBMSやSQLなど、データベースの構造に関しても少し触れましたが、今回ここで確実に理解して欲しいことはただ一つ。
それは、データベースは図書館である、ということです。これは重要なイメージですので、忘れないようにしましょう。
次回は、これまたよくわからないリレーショナルデータベース(RDB)について解説していきます。中々に曲者な奴ですが、やはりデータベースの超重要事項ですので、しっかりと学んでいきましょう!
~今日はここまで!~