(2014.12.3追記:以下の書籍にも記述した。) (2014.4.16)微妙に反応があるので、PostgreSQLネタ追記。 PostgreSQLには古くから配列型や複合型というのがあって、似たようなことができる。 あと、MariaDBのダイナミックカラムをJSONで取り出すcolumn_jsonなんてのもあるが、PostgreSQLはネイティブなデータ型としてJSON型があるので、わざわざBLOBを使わずとも、最初からJSON型でデータ処理できる。 そもそも、こんな感じで自由にデータ型も追加できたりと、中の作りはPostgreSQLのほうが圧倒的に出来が良い。 以下、本文。 MariaDB 5.3で導入されたダイナミックカラムという機能が、MariaDB 10.0でかなり使いやすくなった*1。 これは、BLOB型のカラムの内部を独自フォーマットで分割し、一つのカラムに複数のデータを格
2014年3月末にMariaDB 10.0.10 GAがリリースされて、並列レプリケーション(Parallel replication)が目玉の1つっぽく書かれているので、簡単に解説。(2014.12.3追記:以下の書籍にも記述した。) 並列レプリケーションとはスレーブ側の機能で、従来はSQLスレッド1つで処理していたrelayログの再生を、複数のスレッドで並列に処理しようというもの。MySQLにもパラレルworkerという機能があるが、MariaDBのそれとは並列化の粒度が全く異なる。(注:MySQL5.7でMariaDBと同レベルの機能が実装された。) MariaDBのマスタがコミットしてバイナリログを書く際に、並列実行できるかどうかをバイナリログに書き込んでいる。スレーブはそれに応じて、並列に実行できるSQLは並列に実行する。 具体例をみてみよう。 マスタでbinlog_commi

(2014.12.3追記:このblogの内容は、以下の書籍にも反映させた。)SQLレベルの差異 MariaDB5.5とMySQL5.5ではSQLレベルでの違いはほとんどなかった。autoincrementの最大値の扱いくらい。 ただし、MariaDB10.0でREGEXPがマルチバイト対応になったので、アプリ側は注意。 項目MySQL MariaDB Autoincrement 最大値に達すると、以降は最大値を繰り返す。Warningのみ。エラーにならない。tinyintなら…,125,126,127,127,127… 最大値-1まで。以降はエラーを返す。tinyintなら…,125,126,ERROR,ERROR,… EXPLAIN文 JSON形式 バージョン5.6から 未対応 Optimizer Trace バージョン5.6から 未対応(ただし、MariaDBのほうがオプティマイザ

データベースのスケーラビリティを改善する代表的な方法として、データを分割して複数のサーバで処理する「シャーディング」があります。そのシャーディング機能を持つMySQLストレージエンジンが「Spider」が、MySQL互換のMariaDBにバンドルされると、開発者である斯波健徳(しばけんとく)氏のブログにポストされた記事「[MariaDB][Spider]SpiderがMariaDBにバンドルされました」(8月23日付け)で紹介されています。 Spiderストレージエンジンの概要は、MySQLについていつも詳しい解説をしてくれるブログ「漢のコンピュータ道」の2010年3月のエントリ「Not Only NoSQL!! 驚異的なまでにWRITE性能をスケールさせるSPIDERストレージエンジン」などで分かりやすく説明されていますが、簡単に言えばデータベースに対する参照や更新などの処理を複数のデー
さくらインターネット研究所さんの「MariaDB Galera Clusterを試す」という記事を読んで居ても立ってもいられなくなり、さっそくAWS で構築してみました。 上記の記事によれば 簡単にまとめると次のようになります。 Galera Replicationが複数のRDBMをレプリケーションするwsrepAPIを提供し、同期をとります 完全同期型であるため、すべてのノードがアクティブかつマスターとなります クラスターノードのどれに対してもリード/ライトが可能です ノードの追加/削除は自動で行えます クライアント接続は通常のMySQLとなんら変わりなく使えます via. MariaDB Galera Clusterを試す (1) « さくらインターネット研究所 おー!スレーブ/マスター形式のレプリケーションよりも、断然使いやすそうやんか! ってわけでAWS の ELB 配下に複

1リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く