MENU
Archives

MariaDBとは?MySQLとの違いや特徴、DWH利用などを解説!

みなさまは、”データベース”と聞くとどんな製品を思い浮かべるでしょうか。
「業務でもデータベースからデータを抽出してるけど、どんな製品があるかや製品ごとの特徴はあまり知らない。」
「オープンソースで利用できるMySQL、PostgreSQLはプライベートでも利用しているよ。」
と様々かと思います。

オープンソースは、有志の開発者コミュニティで開発され、無償で自由に利用ができるものですが、そんなオープンソースRDBMSであるMySQLから派生したMariaDBはご存じでしょうか。

本記事では、オープンソースRDBMSであるMySQLから派生した「MariaDB」にフォーカスし、MariaDBの概要やMySQLとの違いなどを解説いたします。

目次

MariaDB とは

MariaDBを一言で表すと、MySQLから派生し、MySQLよりも処理速度や堅牢性が向上したリレーショナル型データベース(RDB)です。

MySQLは、世界で最も利用されているオープンソースのRDBMSですが、MariaDBは、MySQL5.5をベースに開発が進められたリレーショナル型データベース(RDB)となっています。
また、MariaDBは、MySQLとの互換性を保ちつつ、MySQLよりも処理速度や堅牢性が向上してるため、検索エンジンである「Google」に採用されたり、「Red Hat Enterprise Linux」や「Fedora」などのLinuxディストリビューションにおいても、MySQLに代わりMariaDBが標準データベースとして利用されているなど普及が広がっています。

ちなみに、MySQLとMariaDBの由来は、MySQL AB社の創立者でありMariaDB Corporation Abの現CTOであるミカエル・ウィデニウス氏の長女「My(ミー)」からMySQL、次女「Maria(マリア)」からMariaDBと命名されたという噂があります。

補足:RDBMS (リレーショナルデータベース管理システム) とは

RDBMSは、リレーショナル・データベース・マネジメント・システムの略称で、RDB(リレーショナルデータベース)を管理するためのソフトウェアです。
RDB(リレーショナルデータベース)は、テーブル(1つのデータのかたまり)にデータを列と行の形式(Excelのような表形式)で格納し、行(レコード)単位でデータを操作するデータベースです。
なお、RDB(リレーショナルデータベース)はテーブル間にリレーション(関係性)を持たせることができるため、顧客データと受注データを「顧客ID」で紐づけることもできます。
データベースには、「階層型データベース」や「ネットワーク型データベース」がありますが、
データベースといえば、RDB(リレーショナルデータベース)を指すことも多く、RDBが主流となっています。

また、RDBMSには、その他のシステムライセンスと同様に「商用データベース管理システム」と「オープンソースデータベース管理システム」があります。
文字通り、以下の違いがあります。
・商用:企業から提供されている製品(有償)
・オープンライセンス:有志の開発者コミュニティで開発され、自由に利用ができる(無償)

なお、代表的なRDBMSは以下があります。
〇商用データベース管理システム
・Oracle Database(Oracle)
・Microsoft SQL Server(Microsoft)
・IBM DB2(IBM)

〇オープンソースデータベース管理システム
・MySQL
・Postgre SQL

補足:データベース とは

RDBMS (リレーショナルデータベース管理システム)の概要を説明しましたが、
「そもそもデータベースってなに?」
という方もいらっしゃると思います。
データベースを一言で表すと、「使いやすい形で整理されたデータの集まり」です。

データベースを単にデータの集まりと考えた場合、データの集まりを「山」として、「この山に生えている杉の木を教えてください。」と聞かれた場合に困ってしまいますよね。
では、「山」が「杉の木エリア」、「松の木エリア」、「キノコエリア」・・・と分かれていたらどうでしょう。
すぐ「杉の木エリア」に杉の木が生えていることが分かりますよね。
このように、データベースは、「必要な時に必要なデータをすぐに取り出せる」使いやすく整理されたデータの集まりです。

補足:データベースの種類

前述の通り、データベースには、RDB(リレーショナルデータベース)以外にも「階層型データベース」や「ネットワーク型データベース」、「NoSQL」があります。
階層型データベースとネットワーク型データベースの概要、特徴は以下の通りです。

〇階層型データベース
・概要
ツリーのようにデータを関連付けて格納するデータベース
・特徴
特定のデータに紐づくデータは、1:多のため、データの抽出(検索)速度が早い。
・その他
他のデータとの関連付けを行う際は、データの重複登録が必要。(データ構造に依存したDB利用が必要。)

〇ネットワーク型データベース
・概要
関連性のあるデータを相互に関連付けて格納するデータベース
・特徴
特定のデータに紐づくデータは、基本的に多:多のため、データの重複登録を回避することができる。
・その他
データの重複登録は回避できるが、データ構造に依存したDB利用が必要。

〇リレーショナルデータベース(RDB)
・概要
テーブル(1つのデータのかたまり)にデータを列と行の形式(Excelのような表形式)で格納し、行(レコード)単位でデータを操作するデータベース
・特徴
表形式で柔軟なデータの取り扱いをすることができる。
・その他
プログラムが複雑化しやすい。

〇NoSQL
・概要
上記以外のデータベースで、RDBのような表形式などではなく、データを様々な形式で格納するデータベース。
・特徴
RDBでは対応できないデータや大容量データを処理できる。
・その他
データの整合性や一貫性は保証されない。

MariaDB と MySQL の違い

MariaDB、MySQLの概要を理解したところで、MariaDB と MySQL の違いを大きくライセンス形態と機能面で解説します。

MariaDB と MySQL の違い:ライセンス形態

ライセンス形態でMariaDB と MySQLには、以下のような違いがあります。
・MariaDB
完全なオープンソースとして提供。(GPLライセンスが主体)
※GPLライセンスは、GNU General Public Licenseにより公開・管理されているソフトウェアに関するライセンス形態の1つでソースコード開示などの義務があるライセンスとなっています。

・MySQL
Oracle社よりGPLライセンスと商用ライセンスのデュアルライセンスで提供。
そのため、商用ライセンスを使用して再配布する際には料金が発生。

MariaDB と MySQL の違い:機能面

機能面ではMariaDB と MySQLには、以下のような違いがあります。

〇動作環境
・MariaDB
Ubuntu、Debian、CentOSを含む多くのLinux環境で動作。
・MySQL
LinuxやWindowsだけでなく、OSX、Solaris、FreeBSDなどで動作。

〇クエリ最適化
・MariaDB
Viewへのクエリ実行時に関連するテーブルのみにクエリ実行するようViewが最適化。
・MySQL
不要なテーブルへもクエリ実行してしまう(オーバーヘッドが増える可能性あり)。

〇カラム型ストレージ
・MariaDB
ストレージエンジン(ColumnStore)搭載により、大容量データ処理が可能。
・MySQL
機能なし

MariaDB の特徴

MySQLとの互換性が高い

まず1つ目は、MySQLとの互換性が高いことです。
前述の通り、MariaDBは、MySQLを元に開発されたため、互換性が高く、MySQLからMariaDBへの移行もスムーズに行うことができます。

カラム型データベースエンジンでDWHとしても利用できる

2つ目は、カラム型データベースエンジンでDWHとしても利用できることです。
カラム型データベースエンジンは、一般のデータベースエンジンと異なり、列単位(縦方向)でデータ処理を行うため、データ圧縮効率が高く、集計速度が高速、並列処理が可能などの特徴があります。
そのため、大容量データの分析や集計といったDWHとしての利用もできるようになっています。

スケーラビリティ(拡張性)が高い

最後は、スケーラビリティ(拡張性)が高いことです、
前述の通り、大容量データの分析や集計も可能であり、オープンソースであるため、小規模なプロジェクト利用にも適しています。

まとめ

オープンソースRDBMSであるMySQLから派生した「MariaDB」にフォーカスし、MariaDBの概要やMySQLとの違いについて紹介しました。

ビジネスデータが集まっているERP製品内のデータや業務システムで利用しているデータベース内のデータを活用して、
「まずはデータを蓄積したい。」
「自社に最適なデータベースを検討している。」
といった方はMariaDBの導入を検討してみてはいかがでしょうか。

KUIXではただ導入・開発するだけでなく、導入後の利活用を実現することに着眼した、データレイク・DWH・データマート・BIツールの選定・導入からレポート作成、運用、啓蒙・展開までトータルのコンサルテーションなどを行っています。
「データマート/データレイク/DWH/BIツールを導入したい」
「すでに導入しているがデータ活用、展開が進んでいない」など
お困りの方は、ぜひお気軽にご連絡ください!お問い合わせはこちらから

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

目次