Entries from 2008-04-01 to 1 month

InnoDB Plugin の圧縮率

ファイルサイズが 1/10 になってアクセス速度も大幅改善か。実データでこれはすごいな (いくらインデックスも圧縮されるとは言え zlib によるテキストデータの圧縮としては、そうとう元データが冗長なんじゃないかという気もする) InnoDB Plugin のデータベ…

InnoDB Plugin のデータベース圧縮機能

ファイルサイズが 1/10 になってアクセス速度も大幅改善か。実データでこれはすごいな *1。 I’ve tried to convert this table using COMPRESSED row format. This time conversion took 1,5 hours and results were really surprising: Only 5Gb data file …

ウェブサービスの今後とRDBMS のサーバクライアントモデル

CatalystCon の二次会でもちょっと話したことだけど、RDBMS のサーバクライアントモデルがウェブサービスにあっていないんだろうなと思っている。現状の、SQL とパラメータを RDBMS サーバに投げて、RDBMS サーバ内でパース、認可、バインド、をやるってモデ…

CatalystCon1 に参加して

Catalyst が使えないということがよくわかりました (ぉやっぱり時代は CGI::Application だと思います。コマンドラインから使えるし。

高速なサーバの書き方補遺

Kazuho@Cybozu Labs: 高速なCometサーバを書いてみた件, Kazuho@Cybozu Labs: C++ テンプレートを使って高速な高機能サーバを書く方法 の実装で、やっていることやさぼっていることについて。 epoll や kqueue のような高速な select(2) を使う syscall の数…

Perl における Prepared Statement のベンチマーク

MySQL と SQLite について測定してみた。「np」がプリペアードステートメントを使わない場合、「p」が使った場合。「;srv」というのはサーバサイドプリペアードステートメントを有効にした場合。 $ ./dbi-prepared-bench.pl Rate sqlite:np mysql:np mysql:p…

C++テンプレートで素数計算

re C++のテンプレートで素数計算 - 西尾泰和のはてなダイアリー西尾さんが書くとか言っていたので自分もやるかと思って書いて、経験の分余裕で先着だろうと思っていたら西尾さんもできていたという。すごいなぁ。 #include <stdio.h> template<bool Cond, int N> struct CondPrint { }; </bool></stdio.h>…

Filter::SQL 0.03

やっぱ実アプリ書くとバグ見つかるなぁ。というわけで CPAN に 0.03 あぷろどした。そして、0.02 に Filter-SQL-0.0[12].tar.gz が同梱されている件について。ちなみに 0.03 では SQL 文内で () を含む perl 変数を扱えるようになったので、{} を使わなくて…

Filter::SQL 作った

please see: Kazuho@Cybozu Labs: Perl で埋め込み SQL を使って楽をする話http://coderepos.org/share/browser/lang/perl/Filter-SQLこんな感じで書ける。 use DBI; use Filter::SQL; Filter::SQL->dbh(DBI->connect('dbi:mysql:test;user=root')) or die D…

Perl に Embedded SQL を実現するモジュールってないの?

マジでないのかな。 while (SELECT id,name INTO my $id,$name FROM users) { print "$id:$name\n"; }とか書けて良さそうなものなのに。追記: いや、C 系の記法とは離れるけど、こっちの記法のがいいか。フィルタの実装も簡単そうだし。 while (my ($id,$nam…

並行度を解決する聖杯を求めて

しかし apache とか lighttpd とか fastcgi とか mysqld とか、レイヤ間でいかに並行度を調整するかってのは、永遠のテーマなのかな。なんか解決策がありそうに思うのだが。と思いつつ放置中。今度ゆっくり考えたい点。

MySQL の接続毎のメモリ使用量

むっちゃくちゃラフに調べてみた。以下のスクリプトを実行して、top でメモリ使用量の変動を眺める。 % perl -MDBI -e 'for (my $i = 0; $i < 99; $i++) { last unless fork(); } my $dbh = DBI->connect("dbi:mysql:test;user=root") or die DBI->errstr; p…

re 「MySQL 5.0.51aバグってるんじゃないか疑惑(しらべてみた)」

http://diary.eth.jp/?date=20080405#p01おもしろかった。バグ自体は、MySQL Bugs: #30715: Assertion failed: item_field->field->real_maybe_null(), file .\opt_sum.cc, line だと思う。今のところのステータスは、5.0.52 - 修正済 5.1.23 - 修正済ってこ…

Firefox の XBM デコーダ

http://lxr.mozilla.org/mozilla1.8/source/modules/libpr0n/decoders/xbm/nsXBMDecoder.cpp#134 #define char 8#define1 9これで 8x9 ドットの白画像になる。おもしろい。(sscanf の実装に依存するかも)追記: 応用編 (1x1 の黒画像) #define char 1#define{…

Safari Books Online のスロット数の基準がわからない

よさげな本みつけた - takkan_mのNo planな日常 を見て、Safari Books Online (O'Reilly Media - Technology and Business Training) で読もうと思ったんだけど、手持ちのスロット数が足りない。てか、Safari のスロット数の根拠がわからなくてストレスが溜…