Spiderストレージエンジンのバージョン 2.5(beta)とVertical
Partitioningストレージエンジンのバージョン 0.5(alpha)をリリースしました。
Spiderストレージエンジンは、database sharding用のストレージエンジンです。
http://spiderformysql.com/
Vertical Partitioningストレージエンジンは、テーブルのVertical
Partitioning用のストレージエンジンです。
http://launchpad.net/vpformysql
今回の主な変更は以下です。
・Vertical Partitioningストレージエンジン単独でのコンパイルが可能になりました。
・VPが多段で重ねられるようになりました。
例:
create table a(a int primary
key)engine=myisam;
…
先週金曜日、BPStudy#25で、「パフォーマンスとスケーラビリティのためのデータベースアーキテクチャ」という題目で話をさせていただきました。その際に使用した発表資料は以下のとおりです。
1. Happy Optimization
最初に、最適化の考え方として、上限値を予測し、それを元にリソース配分を考える、という手法を説明しました。
Happy OptimizationView more presentations from kazuho.
2. Scaling?
…
[さらに読む]
Spiderストレージエンジンのバージョン 2.4(beta)とVertical
Partitioningストレージエンジンのバージョン 0.4(alpha)をリリースしました。
Spiderストレージエンジンは、database sharding用のストレージエンジンです。
http://spiderformysql.com/
Vertical Partitioningストレージエンジンは、テーブルのVertical
Partitioning用のストレージエンジンです。
http://launchpad.net/vpformysql
今回の主な変更は以下です。
・SpiderストレージエンジンとVertical
Partitioningストレージエンジンの組み合わせで「engine-condition-pushdown」が利用可能になりました。
…
「けんすう」って打ったら件数でなくケンスウが出てくる僕はどうみてもKOF厨です本当にry
select count(*)する時にselect count(index_key)した方が早くなると聴いてやってみた.
・before
select
dt.document_id,
dt.term_id,
-- TF
(
-- 文書Djにおける単語Wiの出現回数
(
select sum(frequency)
from document_terms dt1
where dt1.document_id = dt.document_id and dt1.term_id = dt.term_id
)
/
-- 文書Djに出現する単語の総数(種類数ならcount(*)にする)
(
select sum(frequency)
from document_terms dt2
where dt2.document_id = dt.document_id
)
)
*
-- IDF
log(
-- 文書の数
(
select count(distinct document_id)
from …[さらに読む]
ぬるおたなので,普段SQLを書いたり中々しなかったのですが,
使ってみると色々便利だなぁと思い関心中.
group byしたあとに更に絞り込むのがhavingだったとか,
http://homepage2.nifty.com/sak/w_sak3/doc/sysbrd/mysql_10.htm
insertする際に既に同じレコードあった場合に無視するにはinsert ignore into〜ってすれば良いとか,
http://www.rottel.net/kuwa/book/10/17983
便利すぎる.
DBIx::Classとか使わないで, …
[さらに読む]
MySQL全機能バイブル
~現場で役立つAtoZ~
鈴木 啓修
あの名著「MySQL全機能リファレンス」がMySQL 5.0,
5.1に対応して、装いも新たに登場! 現在Amazonで予約が可能です。内部動作にまで言及する部分がありますが、マニアックになりすぎず、うまく全体を見通せる作りになっています。(私も原稿のチェックなどで少しお手伝いさせていただきました)
著者はInterDB代表の鈴木啓修(すずき☆ひろのぶ)さんです。
…
Vertical Partitioningストレージエンジンのバージョン 0.3をリリースしました。
http://launchpad.net/vpformysql
今回の主な変更は以下です。
・テーブルパラメータに「choose_table_mode_for_lock」を追加しました。
・サーバパラメータに「vp_choose_table_mode_for_lock」を追加しました。
このパラメータは、デッドロック対策としてロックの順番をテーブルリストの並び順に固定するために利用します。
それ以外の変更については、ダウンロードドキュメント中の「99_change_logs.txt」をご確認下さい。
ある日、オフィスに行くとキムラデービーの木村さんに面白いマシンがあると言うので見せて貰った。
マシンと言っても、小さい白い箱からプラグがニュッと出ているだけである。そう、一昔前に話題になったあのSheevaplugである。
Sheevaplugはニュースで見て知って居たが、実物を見るのは初めてだ。とはいっても、実際に稼働しているものを見たわけではなく箱から出したばかりのものを見せて貰っただけである。実物を見た第一印象は、軽い!小さい!の一言だ。この小さな箱でサクサクとUbuntu …
Spiderストレージエンジンのバージョン 2.3(beta)をリリースしました。
Spiderストレージエンジンは、database sharding用のストレージエンジンです。
http://spiderformysql.com/
今回の主な変更は以下です。
・UDFパラメータに「connection_channel」を追加しました。
このパラメータを利用すると、1サーバに対して複数接続を確立し、バックグラウンドの並列性を高めることができます。
それ以外の変更については、ダウンロードドキュメント中の「99_change_logs.txt」をご確認下さい。
For couple of months I have been writing middlewares for database shards, and today I made a presentation covering them. It includes the following.
- Incline - a trigger and queue based distributed materialized view manager
- Pacific - a set of perl scripts to manage MySQL shards, a MySQL shard can be split into two in less than 10 seconds of write blocking (and no read blocks)
- DBIx::ShardManager - a client API for accessing database shards using Incline and Pacific
With these middlewares I think it is no more difficult to write web applications that runs on database shards. In fact IMHO it is as easy as writing a webapp that runs on a standalone database.
The presentation slides are available from slideshare. If you have any question or suggestions, please leave a comment. Thank you.
…
[さらに読む]