ColumnStore を yum コマンドでインストール/更新

2019年5月31日にデータウェアハウス用列指向RDBMS MariaDB ColumnStore 1.2.4 がリリースされました。今回はビルド済み実行バイナリRPMをアーカイブした tarball からではなく,CentOS 7 上で yum レポジトリ設定を行った上で yum コマンドによるインストールを行ってみます。

yum レポジトリ設定

/etc/yum.repos.d/mariadb-columnstore.repo というファイル名で以下のレポジトリ設定ファイルを作成します。

[mariadb-columnstore]
name=MariaDB ColumnStore
baseurl=https://downloads.mariadb.com/MariaDB/mariadb-columnstore/latest/yum/centos/7/x86_64/
gpgkey=https://downloads.mariadb.com/MariaDB/mariadb-columnstore/RPM-GPG-KEY-MariaDB-ColumnStore
gpgcheck=1

/etc/yum.repos.d/mariadb-columnstore-api.repo というファイル名で以下のレポジトリ設定ファイルを作成します。

[mariadb-columnstore-api]
name=MariaDB ColumnStore API
baseurl=https://downloads.mariadb.com/MariaDB/mariadb-columnstore-api/latest/yum/centos/7/x86_64/
gpgkey=https://downloads.mariadb.com/MariaDB/mariadb-columnstore/RPM-GPG-KEY-MariaDB-ColumnStore
gpgcheck=1

/etc/yum.repos.d/mariadb-columnstore-tools.repo というファイル名で以下のレポジトリ設定ファイルを作成します。

[mariadb-columnstore-tools]
name=MariaDB ColumnStore Tools
baseurl=https://downloads.mariadb.com/MariaDB/mariadb-columnstore-tools/latest/yum/centos/7/x86_64/
gpgkey=https://downloads.mariadb.com/MariaDB/mariadb-columnstore/RPM-GPG-KEY-MariaDB-ColumnStore
gpgcheck=1

インストール可能なパッケージを確認します。

sudo yum search mariadb-columnstore
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: ftp.iij.ad.jp
 * epel: ftp.riken.jp
 * extras: ftp.iij.ad.jp
 * updates: ftp.iij.ad.jp
============================================================= N/S matched: mariadb-columnstore ==============================================================
mariadb-columnstore-api-cpp.x86_64 : MariaDB ColumnStore API: A SDK to rapidly ingest data into MariaDB ColumnStore
mariadb-columnstore-api-cpp-devel.x86_64 : MariaDB ColumnStore API: A SDK to rapidly ingest data into MariaDB ColumnStore
mariadb-columnstore-api-java.x86_64 : MariaDB ColumnStore API: A SDK to rapidly ingest data into MariaDB ColumnStore
mariadb-columnstore-api-pyspark.x86_64 : MariaDB ColumnStore API: A SDK to rapidly ingest data into MariaDB ColumnStore
mariadb-columnstore-api-pyspark3.x86_64 : MariaDB ColumnStore API: A SDK to rapidly ingest data into MariaDB ColumnStore
mariadb-columnstore-api-python.x86_64 : MariaDB ColumnStore API: A SDK to rapidly ingest data into MariaDB ColumnStore
mariadb-columnstore-api-python3.x86_64 : MariaDB ColumnStore API: A SDK to rapidly ingest data into MariaDB ColumnStore
mariadb-columnstore-api-spark.x86_64 : MariaDB ColumnStore API: A SDK to rapidly ingest data into MariaDB ColumnStore
mariadb-columnstore-client.x86_64 : MariaDB ColumnStore: A Scale out Columnar storage engine for MariaDB
mariadb-columnstore-common.x86_64 : MariaDB ColumnStore: A Scale out Columnar storage engine for MariaDB
mariadb-columnstore-gssapi-server.x86_64 : MariaDB ColumnStore: A Scale out Columnar storage engine for MariaDB
mariadb-columnstore-libs.x86_64 : MariaDB ColumnStore: A Scale out Columnar storage engine for MariaDB
mariadb-columnstore-platform.x86_64 : MariaDB ColumnStore: A Scale out Columnar storage engine for MariaDB
mariadb-columnstore-rocksdb-engine.x86_64 : MariaDB ColumnStore: A Scale out Columnar storage engine for MariaDB
mariadb-columnstore-server.x86_64 : MariaDB ColumnStore: A Scale out Columnar storage engine for MariaDB
mariadb-columnstore-shared.x86_64 : MariaDB ColumnStore: A Scale out Columnar storage engine for MariaDB
mariadb-columnstore-storage-engine.x86_64 : MariaDB ColumnStore: A Scale out Columnar storage engine for MariaDB
mariadb-columnstore-tokudb-engine.x86_64 : MariaDB ColumnStore: A Scale out Columnar storage engine for MariaDB
mariadb-columnstore-tools.x86_64 : MariaDB ColumnStore: A Scale out Columnar storage engine for MariaDB

  Name and summary matches only, use "search all" for everything.

アップグレードを行う場合

すでに MariaDB ColumnStore をインストールされている場合は,不測の事態に備えてバックアップを行うことを強く推奨いたします。

Backup and Restore for MariaDB ColumnStore 1.1.0 onwards

MariaDB ColumnStore のインストール

以下のコマンドで ColumnStore 本体の各RPMをインストール可能です。レポジトリ設定を行いましたので,今後新たなバージョンがリリースされた際に,tarball をダウンロード,展開,インストールする必要はありません。

sudo yum -y install epel-release
sudo yum -y install jemalloc boost
sudo yum --enablerepo=mariadb-columnstore clean metadata
sudo yum groups mark remove "MariaDB ColumnStore"
sudo yum groupinstall "MariaDB ColumnStore"

 

columnstoreBackup / columnstoreRestore のインストール

sudo yum -y install mariadb-columnstore-tools

 

1ステップ クイック インストーラによる初期設定

過去の記事で解説させて頂いた1ステップ クイック インストーラで初期設定を行います。
(single combined構成の場合)

/usr/local/mariadb/columnstore/bin/quick_installer_single_server.sh

 

getSystemStatus によるステータス確認

ColumnStore の管理コマンド,mcsadmin(ma)で getSystemStatus サブコマンドを実行し,ColumnStore システムのステータス確認を行います。

mcsadmin> getSystemStatus
getsystemstatus   Fri May 31 13:03:09 2019

System columnstore-1

System and Module statuses

Component     Status                       Last Status Change
------------  --------------------------   ------------------------
System        ACTIVE                       Fri May 31 12:58:20 2019
Module pm1    ACTIVE                       Fri May 31 12:58:16 2019

Status がすべて ACTIVE となっていれば問題ありません。

mcsmysql(MariaDB monitor) の利用

ColumnStore の場合は mysql コマンドではなく,mcsmysql という alias が利用可能となっております。

# mcsmysql
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 10
Server version: 10.3.15-MariaDB-log Columnstore 1.2.4-1

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]>

 

ColumnStore のアップグレード

以下の yum コマンドで ColumnStore 関連のRPMを更新することが可能となります。なお,更新前にバックアップを行うことを強くお奨めします。

yum update -y "mariadb-columnstore-*"

 

まとめ

今回は tarball を用いず,yum レポジトリから直接 MariaDB ColumnStore の各RPMをダウンロード,インストールを行う手順に関して解説いたしました。