業務システム向けのデータベースとは!現役エンジニアが解説【初心者向け】

業務システム向けのデータベースについて解説しています。まずデータベースとは何か、その種類について説明します。次に業務システム向けのデータベースを選ぶ際の注意点と、実際の導入までの手順について見ていきましょう。

TechAcademyマガジンはオンラインのプログラミングスクールTechAcademy [テックアカデミー]が運営する教育×テクノロジーのWebメディアです。初心者でもすぐ勉強できる記事が2,000以上あります。

業務システム向けのデータベースについて解説します。データベースとはなにか?から選び方・導入手順まで解説しています。

ぜひ参考にしてみてください。

 

なお本記事は、TechAcademyの法人向けIT・プログラミング研修での実績をもとに紹介しています。

 

田島悠介

今回は、ツールに関する内容だね!

大石ゆかり

どういう内容でしょうか?

田島悠介

業務システム向けのデータベースについて詳しく説明していくね!

大石ゆかり

お願いします!

※免責事項
この記事は2019年8月に更新された記事のため情報が古くなっている場合がございます。

 

データベースとは

企業の会計業務や生産業務などを管理するソフトウェア、いわゆる業務システムにおいてデータベースは欠かせません。

データベースとはデータを格納して検索や更新、登録などを行えるようにするソフトウェアのことです。業務システムでよく使われるデータベースはリレーショナルデータベース(RDB)という種類のもので、データが表形式で格納されています。データベースは以下のような要素で構成されます(名称はデータベースの種類により異なる場合があります)。

  • テーブル:データを格納します。Excelなどの表計算ソフトの表を思い浮かべると良いでしょう
  • ビュー:1~複数のテーブルを基に仮想的に作成したテーブルです。特定の形でデータを参照したい場合に使用します
  • インデックス:テーブルを効率よく参照するためのキーを格納します
  • ストアドプロシジャ:データベースに格納するプログラムです。データを効率的に処理できます
  • データベース:上記を格納する器です。業務システムでは数百ギガバイトといった膨大な大きさになることが珍しくありません
  • データベース管理システム:データベースのソフトウェア本体です

 

SQLとは

データベースを操作するためのプログラミング言語がSQLです。エスキューエルと読みます。SQLはデータベースを操作するプログラミング言語として標準的に利用されています。

データベースの種類により若干の誤差(方言)がありますが、一般的に以下のような命令で構成されます。

 

データ定義言語(DDL)

データベースの要素(データベース、テーブル、ビュー、インデックス、ストアドプロシジャなど)を作成・削除・変更する言語です。

  • CREATE:要素の作成
  • DROP:要素の削除
  • ALTER:要素の変更

 

データ操作言語(DML)

データベースの要素を操作する言語です。

  • INSERT:テーブルに行を挿入する
  • UPDATE:テーブルのデータを更新する
  • DELETE:テーブルの行を削除する
  • SELECT:テーブルやビューから行を取得する

例えば、testという名前のテーブルから全ての行を取得するには以下のように記述します。

SELECT * FROM test

 

[PR] プログラミングで挫折しない学習方法を動画で公開中

データベースの種類

データベースには多くの種類があります。主に使用されているデータベースをいくつかご紹介します。なお、文章中のシェアやランキングは DB-ENGINES を参考にしました。

https://db-engines.com/en/ranking

 

Oracle Database

アメリカのオラクル社が開発・販売しているデータベースです。業務システムで最も高いシェアを誇ります。Oracleは有償商品であり、用途やライセンス体系によりいくつもの製品群に別れています。またライセンス体系も複雑なため、導入の際はオラクル製品を専門的に取り扱っている販社に相談するのが一般的です。

加えて製品として購入する他に、オラクル社やAWSなどのクラウドサービスを経由しての利用も可能になっています。最新のバージョンは19cです。Oracle Databaseは基本的に専門知識を持ったデータベース管理者が運用を管理することが前提ですが、最新バージョンからは自律型データ管理という、データベース管理者の代替となるような機能も搭載されはじめています。

https://www.oracle.com/jp/database/

また、オラクル製品を扱う技術者のための認定資格「Oracle Master」も提供されています。

https://education.oracle.com/ja/

Amazon RDS for Oracle(AWSクラウドサービスを経由してのOracle利用)

https://aws.amazon.com/jp/rds/oracle/

 

SQL server

アメリカのマイクロソフト社が開発・販売しているデータベースです。業務システムでは2番目のシェアを有します。最新のバージョンはSQL Server 2019です。長きに渡り、Oracleと業務データベースの首位を争っています。

機能的にはほぼ同等といえますが、Oracleが専門的な知識を持ったエンジニアの導入を前提としているのに対し、SQL Serverはデータベースが自律的に最適な状態を保つような設計思想のもと、開発されているのが特徴です。

こちらも有償商品ですが、無償でダウンロードできるバージョンも提供されています。マイクロソフトなどのクラウドサービスで提供されている点もOracleと同様です。

https://www.microsoft.com/ja-jp/sql-server/sql-server-2019

 

MySQL(MariaDB)

オープンソースのデータベースで世界で最も使用されているのがMySQLです。もともとはスウェーデンの企業が開発していましたが現在はオラクル社が商標を保有しています。オープンソースであり無償で利用できます。ライセンスはGPLです。

またメーカーによるサポートを受けられる有償ライセンスも存在します。かなり昔のバージョン(InnoDBエンジンが主流になる前)ではMyISAMという機能による高速性が売りのシンプルなデータベースでした。しかし今はバージョン5からストアドプロシジャも利用できるようになっており、本格的なデータベースとして問題なく利用できるようになっています。最新のバージョンは8です。

https://www.mysql.com/jp/

 

PostgreSQL

こちらもオープンソースのデータベースで世界的に使用されています。日本ではオープンソースのデータベースとしてMySQLよりも先に広まったため、知っている方も多いでしょう。

幅広い機能を備えた本格的なデータベースとして広く利用されています。最新のバージョンは11です。

https://www.postgresql.org/

 

業務システム向けデータベースを選ぶポイント

それでは次に、業務システム向けデータベースを選ぶ上でのポイントをご説明します。

 

業務システムのパッケージソフトウェアを使用する場合

この場合、ほとんどの製品において、使用するデータベースの製品やバージョンが細かく指定されています。それらの指示に従わないと業務システムの保守を受けることができない、そもそも正しく動作しないなどの問題点が発生するので注意しましょう。

またライセンスについても注意が必要です。ほとんどのデータベースでは利用者が不特定多数かどうかでライセンス体系や料金が変わってきます。具体的には業務システムの販売元に相談しましょう。

 

自社で業務システムを構築する場合

自社で業務システムを構築する場合は、オープンソースを含めて自由にデータベースを選択できます。とはいえ上記でご紹介したようなメジャーなデータベースの中から選択するのが無難です。

オープンソースのデータベースを採用する場合は、開発メンバーにそのデータベースに詳しい人がいないと問題が発生した場合、お手上げ状態になってしまいます。詳しいメンバーが不在の場合はサポートを受けることができるデータベースを選択する方が最終的に低コストです。

 

実際に導入する流れ

最後にデータベースを導入する一般的な流れについて確認しましょう。

 

1.業務システムの選択

パッケージソフトウェアを導入するか、自社/他社に依頼して業務システムを構築するかなどを検討します。

 

2.利用者の選定

業務システムを利用する人数の規模感を想定します。これはデータベースのバージョンやライセンス料金に関係します。

特定できないのであれば不特定多数ということになりますが、ライセンス料金が跳ね上がる場合もありますので注意しましょう。

 

3.構築体制、運用体制の確認

導入時点から、構築時や運用が開始してからの体制を確認しておきます。データベースを導入するには、多少なりとも専門知識を持った管理者が必要です。

例えば、データベースが止まってしまった場合の復旧方法を知らないと、何日も業務を止めることになり莫大な損失を発生させることになってしまいます。社内に該当者が不在の場合には専門知識を持った会社と保守契約を結ぶことも検討すると良いでしょう。

パッケージソフトウェアの場合は販売元にデータベースの保守も含めて相談すると良いでしょう。

 

4.データベースの製品、バージョンの決定

パッケージソフトウェアを選定したのであれば指定されたデータベース製品を選択します。開発する場合は、メジャーなデータベースで安定している最新バージョンを選択します。

 

5.データベースの容量算定、ハードウェアの調達

データベースに格納するデータ量、想定稼働年数、想定データ増加数などを参考にデータベースに必要な最大容量を算出します。また容量とアクセス数に見合ったハードウェアを選定、調達します。

場合によってはクラウドの利用も検討します。

 

6.データベースのインストール、構築、チューニング

ハードウェアにデータベースをインストールし、データベースやテーブルなどの作成を行います。ほとんどのデータベース製品は各種設定値を調整する「チューニング」を行うと、より適切なパフォーマンスを得ることができます。

 

7.データベースの運用保守

業務システムの利用が開始したら、データベースの運用保守も行っていきます。日々データベースの空き容量や負荷を確認し、一定のしきい値を超えたら対策を取っていくのが一般的です。

また不足の事態に備え、最低でも毎日1回はバックアップを取るようにしましょう。運用保守はなるべく自動化し、アラートはメールなどで受け取るようにすると運用コストを低減できます。

 

監修してくれたメンター

太田和樹(おおたかずき)

ITベンチャー企業のPM兼エンジニア

普段は主に、Web系アプリケーション開発のプロジェクトマネージャーとプログラミング講師を行っている。守備範囲はフロントエンド、モバイル、サーバサイド、データサイエンティストと幅広い。その幅広い知見を生かして、複数の領域を組み合わせた新しい提案をするのが得意。

開発実績:画像認識技術を活用した駐車場混雑状況把握(実証実験)、音声認識を活用したヘルプデスク支援システム、Pepperを遠隔操作するアプリの開発、大規模基幹系システムの開発・導入マネジメント。

地方在住。仕事のほとんどをリモートオフィスで行う。通勤で消耗する代わりに趣味のDIYや家庭菜園、家族との時間を楽しんでいる。

 

大石ゆかり

内容分かりやすくて良かったです!

田島悠介

ゆかりちゃんも分からないことがあったら質問してね!

大石ゆかり

分かりました。ありがとうございます!

 

TechAcademyでは、従来の講義型研修とは違い、実務を想定したカリキュラムで実践的スキルを短期間で確実に身につけられる法人向けオンラインIT・プログラミング研修を展開しています。

1名〜数百名規模・業界を問わず、500社以上の企業様の研修を実施しています。 受講生一人ひとりに現役エンジニアのメンターが付き、皆様のニーズにあったサポートを行います。学習時の「わからない」を確実に解消いたします。