MariaDB Spider Mroonga 20140218

50 %
50 %
Information about MariaDB Spider Mroonga 20140218
Technology

Published on February 23, 2014

Author: Kentoku

Source: slideshare.net

Description

Talking about Spider and Mroonga with MariaDB 10.0

MariaDB 10.0と Spider, Mroonga スパイラルアーム / チームラボ 斯波健徳

Spiderストレージエンジン

Spiderストレージエンジンとは? Spiderストレージエンジンは、 MySQL/MariaDBのプラグインで、 別のサーバにあるテーブルもしくはビューを、 ローカルのDBにあるテーブルもしくは パーティションとして利用できる機能を 提供します。 MariaDB 10.0.4から、標準でバンドル されています。

Spiderストレージエンジンの用途 Spiderを利用すると 大量のデータを複数サーバに分散させて ①大量のトラフィックを処理したり(DBシャーディング) ②並列処理したり(パラレル処理) することができるようになります。 また、複数の別々のアプリケーションで利用しているDBを ③1つのDBとして利用することも可能 になります。

Spiderの構成例 3.Response 1.Request AP AP AP AP AP 2.Just connect to spider SPIDER SPIDER SPIDER (MySQL/MariaDB) (MySQL/MariaDB) (MySQL/MariaDB) tbl_a tbl_b tbl_c DB1 DB2 DB3 アプリケーションは、1つのデータベースに接続すれば、 他のデータベースを意識せずに利用できる。

Spiderの使い方 (1/5) ①Spiderがバンドルされた MySQL/MariaDBをインストール ②MySQLにログインし、 Spiderをプラグインとしてインストール (install_spider.sqlを実行) ③テーブルを作成

Spiderの使い方 (2/5) 1対1リンクテーブルなら CREATE TABLE t1( c1 int, c2 varchar(100), PRIMARY KEY(c1) )ENGINE=spider DEFAULT CHARSET=utf8 COMMENT ' table "rt1", database "test", port "3306", host "データノードのホスト名", user "データノードログイン用ユーザ名", password "パスワード" '; ストレージエンジンにSpiderを指定し COMMENTに接続情報(パラメータ)を記述すればOK

Spiderの使い方 (3/5) MariaDBだと、Spiderテーブルを作成する場合にカラムの 情報を省略しても、データノードの定義を引き継いで、 テーブルが作成されます。 CREATE TABLE t1 ENGINE=spider DEFAULT CHARSET=utf8 COMMENT ' table "rt1", database "test", port "3306", host "データノードのホスト名", user "データノードログイン用ユーザ名", password "パスワード" ‘;

Spiderの使い方 (4/5) 分割(sharding)テーブルなら CREATE TABLE t1( c1 int, c2 varchar(100), PRIMARY KEY(c1) )ENGINE=spider DEFAULT CHARSET=utf8 COMMENT 'table "rt1", database "test", port "3306", user "データノードログイン用ユーザ名", password "パスワード"' PARTITION BY RANGE(c1) ( PARTITION p0 VALUES LESS THAN (100000) COMMENT 'host "h1"', PARTITION p1 VALUES LESS THAN (200000) COMMENT 'host "h2"', PARTITION p2 VALUES LESS THAN (300000) COMMENT 'host "h3"', PARTITION p3 VALUES LESS THAN MAXVALUE COMMENT 'host "h4"' ); テーブルのCOMMENTに共通する接続情報、 各パーティションにパーティション固有の接続情報を記述すればOK

Spiderの使い方 (5/5) これらの接続情報は、CREATE SERVER構文を使ってあらかじめ 定義しておくこともでき CREATE SERVER srv1 FOREIGN DATA WRAPPER mysql HOST 'データノードのホスト名', DATABASE 'test', USER 'データノードログイン用ユーザ名', PASSWORD 'パスワード', PORT 3306 ; CREATE TABLE t1( c1 int, c2 varchar(100), PRIMARY KEY(c1) )ENGINE=spider DEFAULT CHARSET=utf8 COMMENT 'table "rt1", server "srv1"'; のように利用することができます。

Spiderのその他の機能

Spiderのその他の機能 冗長化機能 テーブル・パーティションの単位で冗長度を設定可能 耐障害性機能 Spider標準のものだけではなく、MySQLで利用可能な 他のソリューションが利用可能 全文検索・位置情報検索対応機能 バックエンドのMySQLの全文検索・位置情報検索 機能がそのまま利用可能

Spiderのその他の機能 NoSQL対応機能(MariaDB未) handlersocketに対応 OracleDB接続機能 データノードとしてOracleDBを利用できる機能です。 ※ソースコードからのビルドが必要です。 パラレル検索機能(MariaDB未、カスタマイズ版 MariaDB 10.0では利用可) shardingされているテーブルの検索時、 複数shardに対して並列に検索を行う機能です。

Spiderが使われているサービス

Spiderが使われているサービス Eight 50万人が使う名刺管理アプリ SpiderとMroongaが使われています。 https://8card.net/ CCM Escape Elastic statistics cluster http://www.slideshare.net/skysql/ccm-escape-casestudy-skysql-paris-meetup-17122013

Mroongaストレージエンジン

Mroongaストレージエンジンとは? Mroongaストレージエンジンは、全文検索、 位置情報検索を提供するストレージエンジンで、 以下の特徴があります。 1. 高速な全文検索 2. 高速な位置情報検索 3. 検索中でも高速に更新が可能 (ロックフリーモデル) 4. 日本語全文検索に対応

Mroongaストレージエンジンとは? 5. 他のストレージエンジンと組み合わせて、 全文検索と位置情報検索の機能を 付加することも可能 6. Spiderと組み合わせて、分散したデータへの 全文検索、位置情報検索が可能 Mroonga’s document is available. http://mroonga.github.com/

Mroongaが使われているサービス

Mroongaが使われているサービス PatentField 無料の特許情報検索サイト 日本、海外主要国の特許情報を4,500万件以上収録。 全文検索、連想検索、権利の死活情報やパテントファミリーに 応じた絞り込みといった高度な特許検索サービスを提供 http://patentfield.com/ 全国最新地価マップ 中古住宅・土地購入の際に参考になる地価履歴やその周辺の 公共施設・交通機関などの基本的な情報を地図から表示する ためのサイト http://ww1.chikamap.com/

Mroongaが使われているサービス nanapi 恋愛から生活ネタ、Webサービスの使い方まであらゆる生活の Howtoを集めているサイト http://nanapi.jp/ rec.to Twitterログ保存サービス http://rec.to/ HONYAKU STAR 日英辞書およびコーパス http://honyakustar.com/

Mroongaが使われているサービス ikea-hikaku.com IKEA製品全9,625件の通販/買い物代行価格を比較紹介する サイト http://ikea-hikaku.com/ sinsai.info 東日本大震災 みんなでつくる復興支援プラットフォーム http://sinsai.info/ Bizreach 年収1000万円以上の転職サイト http://www.bizreach.jp/

MariaDB 10.0

MariaDB 10.0とは? MariaDB 10.0とは、次の最新安定版となるMariaDBで、 現在RC(Release Candidate)で、まもなく安定版に なるというステータスです。 ・マルチソースレプリケーション ・パラレルレプリケーション が利用できるほか、 ・ engine-independent table statistics など、オプティマイザにも力が入っています。

MariaDB 10.0とは? Spiderストレージエンジンが 既にバンドルされているほか、 Mroongaストレージエンジンも 現在バンドル作業中です。

カスタマイズ版MariaDB 10.0

カスタマイズ版MariaDB 10.0とは? カスタマイズ版MariaDB 10.0とは、 これまでSpiderバンドル版MySQL 5.5で加えていた カスタマイズと、 MariaDBの機能をよりよく利用するための カスタマイズを MariaDB 10.0に加えたバージョンです。 カスタマイズは、今後徐々にMariaDB本体に 組み込まれていく予定です。

カスタマイズ版MariaDB 10.0とは? カスタマイズ版MariaDB 10.0では、現在のMariaDB 版では制限となっている、 slave_transaction_retry_errorsを使ったスレーブのリトライ 単一テーブルの更新の最適化 partitionされたSpiderテーブルの ・engine condition pushdown ・fulltext index search ・spacial index search ・全件countの最適化 ・parallel search が、利用できるほか

カスタマイズ版MariaDB 10.0とは? PartitionされたSpiderテーブルでBKA(Batched Key Access)を利用してjoinを高速化することができます。 Batched Key Accessは、「join_cache_level=5」以上を 設定することで有効になります。 効果的なので、ぜひお試しください。 カスタマイズ版MariaDB 10.0 with Spider 3.1は以下から ダウンロードできます。 ソースコード http://spiderformysql.com/downloads/spider-3.1/mariadb-10.0.8-spider-3.1p.tgz バイナリ http://spiderformysql.com/downloads/spider-3.1/mariadb-10.0.8-spider-3.1-linux-x86_64p.tgz

まとめ

まとめ ・ Spiderストレージエンジンは、データベース シャーディングを実現するストレージエンジンです。 ・Mroongaストレージエンジンは、全文検索、位置 情報検索を提供するストレージエンジンです。 ・MariaDB 10.0には、Spiderが既にバンドル されており、Mroongaは現在バンドル作業中です。 ・カスタマイズ版MariaDB 10.0を利用すると Spiderの機能がより多く利用できるようになります。

ご清聴ありがとうございました! Any Questions? You can see me later! Come to visit me!! Kentoku SHIBA (kentokushiba [at] gmail [dot] com) http://spiderformysql.com

Add a comment

Related presentations

Related pages

Spider Storage Engine: The sharding plugin of MySQL ...

The sharding plugin of MySQL/MariaDB Introducing and newest topics ... Patched version of MariaDB with Spider, VP, Mroonga Spider already bundled in MariaDB.
Read more

Spider - MariaDB Knowledge Base

The Spider documentation on the MariaDB Knowledge Base is currently incomplete. ... Mroonga OQGRAPH ScaleDB Sequence ...
Read more

Mroonga - MariaDB Knowledge Base

Mroonga (formerly named ... Spider Information Schema ... Subscribe to get MariaDB tips, tricks and news updates in your inbox: Products.
Read more

Debian -- Details of package mariadb-plugin-spider in sid

mariadb-plugin-mroonga; ltt-bin; libur-perl; melting-dbgsym; Spider storage engine for MariaDB. The Spider storage engine with built-in sharding features.
Read more

MARIADB - Discover, share, present - DOCUMENTS.TIPS

MariaDB Spider Mroonga 20140218 Talking about Spider and Mroonga with MariaDB 10.0 MariaDBのススメ 1. MariaDBのススメ ...
Read more

kentoku shiba

12/20/2013. 12:31 am Mroonga Feature #1964:MariaDB 10あるいは11での mroonga ... [dot]?MariaDB Spider Mroonga 20140218 Kentoku 1398 views ...
Read more

Spider Storage Engine: The sharding plugin of MySQL ...

Spider Storage Engine: The sharding plugin of MySQL/MariaDB Introducing and newest topics Team-Lab / Spiral-Arm Kentoku SHIBA
Read more