SQL ServerとMySQLリレーショナルデータベースの比較


MySQLとMicrosoft SQL Serverのリレーショナルデータベースには長所と短所があります。SQL ServerとMySQLの機能、コスト、機能などの違いを調べて下さい。

SQL ServerとMySQLは、市場で最も一般的なリレーショナルデータベース管理システムの2つです。MicrosoftのRDBMSは、OracleのMySQLよりも優れた選択肢であり、その逆もあります。

たとえば、Microsoft Windows、UNIX、Linux上で動作するため、MySQLはマルチプラットフォーム環境に最適です。一方、SQL Serverは、深い分析を実行する必要があるWindowsの店舗や、データセンターからAzureクラウドにワークロードを移動する必要がある場合には、より良い選択肢となりそうです。

重要な機能、価格設定、コンプライアンス、その他リレーショナルデータベース管理システム(RDBMS)の考慮事項など、SQL ServerとMySQLの違いを見てみましょう。

Microsoft SQL Serverの機能、価格

MicrosoftのRDBMSの最新バージョンは、6月にリリースされたSQL Server 2016です。Microsoftは、SQL Server 2016の4つのエディションと、Webホスティングプロバイダ向けのWebエディションを提供しています。これらのエディションの2つ、ExpressとDeveloperは無料で利用できます。Express Editionは、最大10GBのデータをサポートできる軽量SQL Serverデータベースで、Developer Editionは開発環境およびテスト環境専用のライセンスを受けています。

その他のSQL Serverのバージョンには、Enterprise、Standard、Webがあります。Enterprise Editionには、ミッションクリティカルなデータベースや高度な分析ワークロードに適したすべての機能が搭載されています。Standard Editionには、小規模な設定に適した機能が限られています。Web Editionは公開Webサイトで使用するためのもので、価格設定をするサードパーティのホスティングサービスプロバイダのみで利用できます。

Microsoftは、Standard EditionとEnterprise EditionをCPUコアごとにライセンスしており、ライセンスは2コアパックで販売されています。SQL Serverがサーバの物理的なOS環境で実行されている場合は、すべてのプロセッサコアのライセンスを購入する必要があります。2コアのSQL Server 2016 Enterprise Editionライセンスは14,256ドルで、2コアのStandard Editionライセンスでは、3,717ドルです。しかし、いずれの技術と同様、実際のライセンス費用は、通常、数量割引などの多くの要因に基づいています。

またMicrosoftは、データベースに接続するユーザまたはデバイスの数を容易に数えることができる場合や、複数のデータベースにアクセスする必要がある場合に使用する、SQL Server Standard Editionの従来のServer + CALライセンスモデルも提供しています。このモデルでは、SQL Serverに接続する各ユーザまたはデバイスに931ドルのサーバライセンスリストとクライアントアクセスライセンス(CAL)が必要です。SQL Server 2016および10クライアントライセンスを含むパックは、Microsoftのオンラインストアで3,189ドルで販売されています。これは、CALあたり約225ドルです。

Oracle MySQLの機能、価格

MySQLは、2010年にSun Microsystemsを買収してこの技術を買収したOracleが所有しています。Sunは、2年前に元の開発者であるMySQL ABを購入しました。バージョン5.7のMySQLデータべースは、商用レベルのRDBMSまたはオープンソースデータベースとして利用できます。MySQL Standard Edition、MySQL Enterprise Edition、およびMySQL Cluster Carrier Grade Edition(CGE)の3つの主要なバリエーションがあります。

また、独立系のソフトウェアベンダーやOEMにしか利用できない組み込みデータベースであるMySQL Classicもあります。 MySQL Community Editionは、GNU一般公衆利用許諾契約書を通じて利用可能なオープンソースのデータベースです。 ただし、管理ツールを含む3つの主要なエディションは、Oracleを通じて商用ライセンスが付与されています。

商用MySQLライセンスはサブスクリプションとして利用でき、価格はMySQL版、通信ソケット数、加入期間によって大きく異なります。 たとえば、MySQL Standard Edition(1〜4ソケット)は1年間2,000ドル、MySQL Enterprise Edition(1〜4ソケット)は1年間5,000ドルのリストです。 MySQL Cluster CGE(5台以上のソケットサーバ)の1年間のサブスクリプションは20,000ドルで販売されます。

SQL ServerとMySQLのパフォーマンスとスケーラビリティ

一度に、MySQLは競合するデータベースよりも能力が劣るという評判を得ました。 しかし、今日では、MySQLは成熟したフル機能のデータベースであり、多くの有名な組織で使用されています。

MySQLは、データベースのスケーラビリティとパフォーマンスを重視しています。 MySQLデータベースは、ほとんどのマルチテラバイトのデータベースに容易に拡張でき、高速トランザクショナルワークロードや1日に最大10億件の膨大な作業負荷を処理するように最適化できます。 MySQLはメモリテーブル、Bツリーインデックス、ハッシュインデックスなどの機能を使用して、非常に高いレベルのパフォーマンスとスケーラビリティを実現します。

他のエンタープライズグレードのデータベースの場合と同様に、MySQLも高可用性のために設計されています。 RDBMSはフェイルオーバークラスタとして構成できますが、高速レプリケーションもサポートしています。 また、MySQLに高可用性オプションを提供する多くのサードパーティベンダーがあります。

マイクロソフトのSQL Serverもまたかなり進化しており、SQL Server 2016は1990年代初めのSQL Serverバージョンとほとんど似ていません。

MySQLと同様に、SQL Serverは高可用性を実現し、最も要求の厳しいワークロードを処理できます。

SQL Server 2016 Editions Chart -- What's New

SQL Server 2016には、データベースのメモリ内OLTP機能を使用するアプリケーションで、パフォーマンスの向上とスケーラビリティの向上を実現するように設計されたメモリ最適化テーブルの拡張されたメモリの最適化テーブルの拡張された高可用性と改善が含まれています。ただし、SQL Serverには、SQL Server 2016よりずっと前のスケーラビリティ、パフォーマンス、および可用性の機能がありました。その結果、Standard Edition 2016の新機能はほとんどは、ビジネスインテリジェンス、セキュリティ、およびクラウドポータビリティなどの機能に焦点を当てています。

たとえば、ストレッチデータベースと呼ばれる機能を使用すると、頻繁にアクセスされないデータをMicrosoft Azureクラウドに格納してコストを削減しながら、必要に応じてクエリを使用できるようにします。 また、Rプログラミング言語のサポートや、HadoopクラスタとAzure BLOBストレージに格納されたデータをユーザーが照会できるようにするツールPolyBaseの完全な統合も含まれています。

SQL Server 2016で導入された注目すべきセキュリティ機能の2つは、行レベルのセキュリティと、常時暗号化されたデータであり、権限のないユーザーが機密データにアクセスすることを防止します。

SQL ServerとMySQLの実装

SQL ServerとMySQLはどちらも、リレーショナルデータベースの標準プログラミング言語であるSQLをサポートしていますが、それぞれ独自の拡張機能を使用しています。

リレーショナルデータベース管理システムを決定する際のもう1つの重要な考慮事項は標準準拠です。 SQL標準はSQL-86標準が導入され、SQL標準が進化し続けている1986年以来存在していました。

MySQLは現在のSQL標準とオープンデータベース接続レベル0〜3.51をサポートしています。さらに、MySQLはANSI、STRICT TRANS TABLES、TRADITIONALなどのさまざまなSQLモードで動作します。 MySQLがいくつかの拡張機能を使ってSQL Server標準を強化していることは注目に値する。そのため、MySQLアプリケーションをMicrosoft SQL Serverまたは競合するSQLデータベースエンジンに移植するには、かなりの労力が必要です。

対照的に、マイクロソフトは、SQL Serverが業界標準に準拠している程度を示していません。 SQL Serverには互換性設定が含まれているため、データベースインスタンスを以前のバージョンのSQL Serverと下位互換性が得られます。マイクロソフトはまた、SQL Serverがデータセンター、クラウド、またはその両方に存在するかどうかにかかわらず、クラウドポータビリティをサポートし、ユーザーに一貫したエクスペリエンスを提供するようにSQL Server 2016を設計しました。

さらに、Microsoftは2017年にLinuxシステム上でSQL Serverを実行するためのサポートを追加する計画をしています。これは、Windowsをはじめて超えるデータベースの動きで、MySQLのマルチプラットフォームの利点を少なくともある程度は鈍らせる可能性があります。

関連したトピックス