主な変更点
● ディスクベースの集約により、メモリに収まるよりも大きな集約結果セットが可能になる
・この機能の前は、全ての集約操作はメモリ内で実行されました。
・ディスクベースの集約は、設定によって有効になります。
● 10進精度の向上
・DECIMAL(固定小数点数値データ型)の最大精度は38です。
・このリリース以前は、DECIMALの最大精度は18でした。
・columnstore_decimal_overflow_checkシステム変数を使用すると、Enterprise ColumnStoreは、
精度が18以上のDECIMAL値を操作する時に、10進数のオーバーフローをチェックできます。
● 整数データ型を集約する時にAVG()とSUM()の集計関数で使用されるDECIMAL精度の向上
・AVG()とSUM()の集計関数の最大精度は、38桁です。これにより、AVG()とSUM()は、
オーバーフローのリスクを抑えながら、より大きな整数値を操作できるようになります。
・このリリース以前は、AVG()およびSUM()集計関数の最大精度は18桁でした。
● トランザクションテーブルは、ColumnStoreテーブルのデータで更新できる
・Cross-Engine JOIN機能の拡張により、UPDATEステートメントはトランザクションテーブル
(InnoDBやMyRocksなど)をColumnStoreテーブルのデータで更新できます。
UPDATE innodb_tab i
JOIN columnstore_tab c
ON i.col1 = c.col1
SET i.col2 = c.col2;
・Enterprise ColumnStoreの必須ユーティリティユーザーは、Cross-Engine JOINに使用されます。
必須ユーティリティユーザーには、UPDATE権限が必要です。
・このリリース以前は、トランザクションデータからのColumnStoreデータへのUPDATEは
サポートされていましたが、ColumnStoreデータからのトランザクションデータへの
UPDATE(Cross-Engine JOINを必要とする操作)はサポートされていませんでした。
● LZ4圧縮
・このリリースでは、MariaDB Enterprise ColumnStoreはLZ4およびSnappy圧縮をサポートして
います。設定により、ユーザーはデータセットに最適な圧縮アルゴリズムを選択できます。
・このリリースより前は、Snappy圧縮がサポートされていました。
● OFFSET構文
・このリリースでは、LIMIT .. OFFSETの代わりにSELECT .. OFFSET .. FETCH構文を使用できます。
○構文は次のとおりです:
OFFSET start { ROW | ROWS }
FETCH { FIRST | NEXT } [ count ] { ROW | ROWS } ONLY
○次のクエリは構文の実例です:
SELECT username, purchase
FROM user_purchases
ORDER BY username, purchase
OFFSET 0 ROWS
FETCH NEXT 10 ROWS ONLY;
● 必須ユーティリティユーザーの暗号化されたパスワード
・このリリースでは、cskeysとcspasswdのコマンドラインユーティリティが追加されています。
・cskeysコマンドラインユーティリティは、暗号化キーファイルを生成します。暗号化キーファイルは、
デフォルトで/var/lib/columnstoreディレクトリに保存されます。
・cspasswdコマンドラインユーティリティは、cskeysによって生成された暗号化キーファイルを
使用して、指定されたパスワードを暗号化します。
・使用例:
$ cskeys
$ cspasswd '
$ mcsSetConfig CrossEngineSupport Password '
● ColumnStore選択ハンドラの自動切り替えモード
・columnstore_select_handlerシステム変数のAUTO値は、自動切り替えモードを有効にします。
・以前のリリースと同様に、columnstore_select_handler=ONはカスタム選択ハンドラを有効にし、
columnstore_select_handler=OFFはカスタム選択ハンドラを無効にします。
・columnstore_select_handlerがAUTOに設定されている場合、MariaDB Enterprise ColumnStoreは、
クエリごとにカスタム選択ハンドラを使用するかどうかを自動的に選択します。
● オプティマイザー統計は、ColumnStoreテーブルのNDV(個別値の数)を格納する
・ANALYZE TABLEステートメントを実行することにより、ColumnStoreテーブルの
オプティマイザー統計を収集できます。
・ColumnStoreは、オプティマイザー統計を使用して、循環内部結合を含むクエリのサポートを
追加します。
・以前のリリースでは、循環内部結合を含むクエリが実行された時に、ColumnStoreで
次のエラーが発生しました:
ERROR 1815 (HY000): Internal error: IDB-1003: Circular joins are not supported.
● 接続設定のリソース使用量の削減
・Columnstore.xml設定ファイルの形式を変更すると、リソースのオーバーヘッドが削減されました。
接続定義(PMSnセクション)が簡略化されました。
・新しい形式に切り替えるために手動の操作は必要ありません。この設定はCMAPIによって処理されます。
● このリリースでは、文書化されたCMAPIに対する変更はありません。
プラットフォーム
エンタープライズライフサイクルに合わせて、MariaDB Enterprise ColumnStore 6.1.1は
以下に対して提供されています。
・CentOS 7
・CentOS 8
・Debian 9
・Debian 10
・Red Hat Enterprise Linux 7
・Red Hat Enterprise Linux 8
・SUSE Linux Enterprise Server 12
・SUSE Linux Enterprise Server 15
・Ubuntu 18.04
・Ubuntu 20.04
MariaDB Enterprise ColumnStore 6.6.1のリリースノート(MariaDB社ウェブサイト):
https://mariadb.com/docs/release-notes/mariadb-enterprise-columnstore-6-1-1/
MariaDBプロダクト・サポート・サービス
MariaDBプロダクト・サポート・サービスは、MariaDBおよびその関連製品をご利用されているお客様へ、必要なソフトウェアや専門的なサポートなどを提供するサービスです。