【プログラミング用語】データベースとは?




どうも高妻です。Twitterでプログラミングのことや暗号通貨のことをつぶやいているのでよかったらフォローしてください。  

データベース

DB:データベースを簡単に説明すると、WEBサービスで使用しているデータを保存して置くサーバーのことです。

データにはどんなものがあるのか

インスタグラムを例にデータにはどのような種類があるかざっと並べます。

  • ユーザー名やEmailアドレスなどのログイン情報
  • ユーザーのフォローとフォロワー情報
  • 動画や写真などの投稿情報
  • 投稿された動画、写真い対するいいねとコメントの回数

ユーザー名やコメントなどのテキスト情報、フォロー/フォロワー数の数値情報、写真/動画などのコンテンツなどです。

サービスの機能が多くなればなるほどこのデータの種類が増えるので非常に複雑になります。

スマホゲームになるとこのデータの種類は100を超えるのでデータベースの設計がすごく大変になります。

データベースの種類

では次にデーテベースの種類についてです。

データベースには非常に多くの種類がありますそれぞれ用途が分かれます。有名なものを並べると

  • MySQL
  • Oracle
  • PostgreSQL
  • MongoDB
  • Redshift
  • BigQuery
  • Cassandra
  • DynamoDB
  • Redsis
  • Memcached

まだまだ書きたいですがここに書ききれなくなるのでこれくらいにしておきます。

これらのデータベースはそれぞれに特徴がありサービスの性質によって使い分けなければいけません。

なので一言でデータベースと言っても学ぶべきことはものすごく多く、それぞれのデータベースを実業務で使えるようになるにはかなりの学習時間を必要とします。

データベースを大きく2つに分けるとRDB:リレーショナルデーテベースとNoSQLと呼ばれる種類に分けることができます。

RDBにはMySQLやOracle、PostgreSQLなどがあり多くのサービスで使われます。NoSQLにはMongoDB、DynamoDB、Redis、Memcachedなどがあります。

RDBとNoSQLの違いですが、データの持ち方が全然違います。RDBにはテーブルと言われるデータの集まりがあり、テーブル間で関係のあるデータを紐付ける使い方が基本となります、。

NoSQLにもテーブルというものがありますが、テーブル間でデータを紐付けるということをしません。NoSQLでは基本的にテーブル内でデータが完結します。

まとめ

一言にデータベースといっても非常に多くの種類があることがわかったかと思います。

この分野にはデータベーススペシャリストという資格もあるほど高度な知識を必要とします。なので、地道に学習してデータベースの力を最大限扱えるようになっていきましょう。

 







コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です