SQLiteのデータベースのメリットやデメリットとは?


データベースの方式に「SQLite(エスキューライト)」というものがあります。

このページではデータベースにSQLiteを採用するメリット・デメリットの解説を解説していきますが、その前段階として「データベースとは何か?」ということの簡単な解説もしていきます。
ですので、上から順番に読んでいけばSQLiteというものがどのようなものかをだいたい理解できると思います。

なお、データベースにはこのSQLite以外の方式もいろいろありますが、それらの編集方法についてはこのページでは解説しません。
あくまでもSQLiteのみに絞って要点だけを解説します。

データベースとは?


Wikipediaで「データベース」の解説を見ると、

データベース(英: database, DB)とは、検索や蓄積が容易にできるよう整理された情報の集まり。 通常はコンピュータによって実現されたものを指すが、紙の住所録などをデータベースと呼ぶ場合もある。コンピュータを使用したデータベース・システムでは、データベース管理用のソフトウェアであるデータベース管理システムを使用する場合も多い。
データベース – Wikipedia

ということが書かれており、「何を言ってんだ!?」となりかねません。
もっと簡単に言いますと、データベースというのは「データの保存場所」のことです。

例えばわかりやすい例として、現在多くのサイトで使われているWordPressは簡単に言ってしまえば「ブログのシステム」です。
これをWebサイトに組み込むことで、ブラウザ上の操作でページの追加や削除、編集などができるようになります。

その際に、書いたブログ記事(タイトルや本文など)を保存する場所が「データベース」です。
つまり、WordPressというソフト(プログラム)とデータベースは別物になります。

データベースの種類について


データベースの種類はたくさんあります。
特定の企業が開発した有料のものもあれば、無料で誰もが利用・開発できるもの(オープンソース)なものもあります。

例えば先ほどの例で挙げたWordPressはデータベースに「MySQL(マイ・エスキューエル)」や「MariaDB(マリア・ディービー」という方式を採用しています。

なぜWordPressがそれらの方式を採用しているのかと言いますと、WordPress自体がオープンソースなプログラムなので特定の企業のデータベースに依存する構造は好ましくなく、そのためにオープンソースであるMySQLやMariaDBを採用していると言えるでしょう。

そして「SQLite」という方式もオープンソースなデータベースになります。
「オープンソースで無料なものだから品質が悪い」とは決して言えないことは、WordPressのクオリティや普及率を見れば明らかでしょう。

【オープンソースな有名ソフト】
これは余談になりますが、ブラウザのFirefoxやメールクライアント(ソフト)のThunderbirdもオープンソースなプログラムです。

他にも、ブラウザのChromeはGoogleの製品ですが、元々はChromiumというオープンソースなブラウザにGoogle流のアレンジを加えた製品になります。

SQLiteのデータベースのメリット

データベースにSQLite方式を採用するメリットは以下のような点が挙げられます。(小さなメリットは省略)

  • 動作が軽い。
  • 著作権がない。
  • ファイルが1つだけなので、バックアップや復元が簡単。
  • サーバ側でデータベースを用意する必要がない。

その中でも私が個人的に最大のメリットとして感じるのは「サーバ側でデータベースを用意する必要がない」という点です。

WordPressを設置した人ならわかるかと思いますが、前述のMySQLやMariaDBはサーバ管理画面でデータベースの作成や設定を事前にしておく必要があります。
しかしSQLiteならその必要がないのです。
このメリットは大きい!プログラムの設置難易度が大幅に下がるからです。

また、レンタルサーバでMySQLやMariaDBのデータベースを使うためにはある一定以上の料金プランにする必要がありますが、SQLiteはそれ以下の料金プランでも使うことができたりします。

(例:さくらインターネットの月額129円のプランロリポップの月額100円のプランような安いプランはMySQLやMariaDBは使えませんが、SQLiteなら使えます)

SQLiteのデータベースのデメリット

SQLiteのデメリットとして大きなものは以下のような点が挙げられます。(小さなデメリットは省略)

  • パスワードが存在しない。
  • 複数の同時書き込みができない。

ただ、前者に関してはデータベースファイルが設置してあるディレクトリに.htaccessでアクセス制限をかけたり、ドキュメントルートより上位の階層に設置することで簡単にカバーできます。

後者のデメリットをカバーするためにはプログラム側での機能の実装が必要になると思います。

結論


私のような個人が開発するような小規模のプログラムではSQLiteのデメリットを感じる機会がほとんどありませんが、WordPressぐらいの中規模~以上のプログラムになるとちょっと問題あるかもしれません。
Wikipediaのページにも以下のように書かれていました。

サーバとしてではなくアプリケーションに組み込んで利用される軽量のデータベースである。 一般的なRDBMS(データベース管理システム)に比べて大規模な仕事には不向きだが、中小規模ならば速度に遜色はない。
SQLite – Wikipedia

というわけで、当サイトで配布・販売しているプログラムでは、

の3つがこのSQLiteを採用しています。
そのため、これらのプログラムでは前述した「サーバ側でデータベースを用意する必要がない」というSQLiteの大きなメリットを享受することができます。

つまり設置作業が楽だったり、安いサーバでも使えるわけです。
ぜひお試しください。

サポートBBS

サポートBBS

サイト内を検索
アップデート情報

この「アップデート情報」欄はコンテンツ・メーカーを使用して更新・表示しています。

サイト運用事例
提供サポートなど
メールフォーム

ダウンロード一覧へ

カレンダー

これはビジネスカレンダーのサイト組み込みサンプルです。
サンプル管理画面から定休日の変更操作ができます。
ご自由にお試しください。(ユーザ名はtani、パスワードは0000です)

ダウンロード一覧へ

スレッド式BBS

ダウンロード一覧へ

レスポンシブBBS

ダウンロード一覧へ

新着情報欄の更新

ダウンロード一覧へ

その他おすすめ

ダウンロード一覧へ

Web制作のブログ

ブログ記事一覧へ

カテゴリ別