TOP / ナレッジ / CS-Cart

CS-Cart国際版が公式にInnoDBに対応

CS-Cart国際版(公式)は長年、MySQLのストレージエンジンとしてMyISAMを使っていました。 このため、我々も何度もCS-Cartに対してInnoDBへの対応を求めてきましたが、なかなか対応が進みませんでした。

スポンサードサーチ

CS-Cart国際版(公式)は長年、MySQLのストレージエンジンとしてMyISAMを使っていました。

このため、我々も何度もCS-Cartに対してInnoDBへの対応を求めてきましたが、なかなか対応が進みませんでした。

以前ご紹介したCS-Cartの公式ブログ、CS-Cartの速度最適化のためのサーバ調整と推奨事項の記事の中で、「すべてのテーブルをMyISAMからInnoDBに変換する」というのがありました。

CS-Cartの速度最適化のためのサーバ調整と推奨事項パフォーマンス向上と CS-Cart の速度最適化について話を始める前に、何をどのように改善したいのか、そしてその理由を明確にすることが重要です。あらゆる最適化はプロジェクトのコー…resource-sharing.co.jp

しかし、依然として2025年7月段階で、CS-Cartのテクニカルサポートチームからは以下のように、cscart_cache_handlersのテーブルのみはMyISAMでないといけない、という回答がされていました。

CS-Cartの最新バージョンでは、InnoDBのサポートが改善されました。デフォルトのストレージエンジンはMyISAMのままですが、テーブルの種類をInnoDBに変更することで、パフォーマンスが向上する可能性があります。ただし、cscart_cache_handlersはMyISAMのままにしておく必要があるため、このテーブルの変換は推奨しません。

InnoDB support has been improved in the latest CS-Cart versions. While MyISAM remains the default storage engine, you can change the type of tables to InnoDB, which may offer better performance. However, cscart_cache_handlers must remain MyISAM, so we don’t recommend converting this table.

ところが、先日、CS-Cartのテクニカルサポートチームに確認をしたところ、CS-Cart国際版(公式)が公式にバージョン 4.18.1からInnoDBに対応しており、上記の問題も解消しているため、インストール時点からInnoDBを利用できるとの回答が得られました。

ストレージエンジンとは何か?

CS-Cart国際版(公式)は、現在、利用できるDBとしては、MySQL Version 4.1以降とMariaDB 5.5 以降、PerconaServer 5.5 以降のサポートがされています。

動作環境サーバ環境 OS OSで推奨されているのは、Linux、FreeBSD、OS XなどのUNIX系OS。 PHP PHPの対応バージョンは、PHP Version 7.1 以降。 C…resource-sharing.co.jp

また、MySQLやMariaDBは、複数のストレージエンジンをサポートしています。

ストレージエンジンとはデータの保管と出し入れの方法

MySQL や MariaDB では、「データをどうやって保管して、どうやって出し入れするかの仕組み」をストレージエンジンを選ぶことで変えることができます。

データベースとストレートエンジンを、物を保管する倉庫で例えると

  • データベース = 倉庫
  • ストレージエンジン = 倉庫の管理ルール

になります。

このストレージエンジンの違いで、同じ倉庫でも

  • 出し入れは早いけど雑な倉庫
  • 整理整頓が得意な倉庫

など、それぞれ性格が違っていますが、InnoDB と MyISAM の違いを、倉庫の性格で表すと以下のようになります。

ストレージエンジン例えるなら
InnoDBきちんと管理されている「現代的な倉庫」
MyISAM昔ながらでシンプルな「物置」

InnoDB と MyISAM の違い

MyISAMは、シンプルで高速に動作し、フルテキスト検索に対応しているため、大容量テーブルに向いていますが、トランザクションがテーブルレベルでロックをかけるという点でロックの粒度が荒い点があります。

一方、InnoDBは、フルテキスト検索ができなかったり、パフォーマンスが悪いという点はありますが、トランザクションをサポートしており、外部キー制約が装備されていて、クラッシュ時のリカバリに対応、列レベルでロックを実施ができます。

このため複数人で一つのテーブルに更新をかける場合や整合性を求められることの多い現在のECにおいては、InnoDBが適している場面も多くなってきています。

データ管理や拡張性を重視する際にもシームレスに対応が可能

従来のCS-Cart国際版(公式)では、シンプルで実績のあるストレージエンジンとしてMyISAMを前提に運用されてきました。

一方で、近年はトラフィック増加や運用の高度化に伴い、よりデータ管理や拡張性を重視した構成が求められるケースも増えています。

今回のCS-Cart国際版(公式)がInnoDBに正式に対応したという発表により、ECサイトやマーケットプレイスサイトの構築をCS-Cart国際版(公式)を使ってスモールスタートから始めて、段階的にスケールアウトしていく場合でも、シームレスに対応ができるようになります。

低コストで多機能なECサイトやマーケットプレイスサイトを構築したい、とお考えであればCS-Cart国際版(公式)を検討してみてはいかがでしょうか?

スポンサードサーチ