六本木ヒルズで開催されたライブドア次世代テクノロジーセミナーに、会社の同僚の秋元さんと一緒に行って来ました。 当社は長い受託ビジネスやWEB開発から蓄積した、膨大な経験と実績を使い、現在UU14,336千人、月間約22億PVというポータルサイト 「livedoor」を構築するまでになりました。そこには飽くなきローコストへの挑戦と、多くの優秀なエンジニア、更には膨大なインフ...
『 cocoaでmysqlだって。少し遠い将来役に立つかなあ。 』 by Yuny
実は最近ちょっとDBIx::Classぐりぐりしてたんですけど、かなりいい感じです。 次からプロジェクト組むときは Class::DBI じゃなくて DBIx::Class にしてみようかなってくらい。 てわけでちょっとずつ比較。チラシ裏モードで書きなぐり。 まず Class::DBI でのページング処理の問題について。 Class::DBI では Class::DBI::Pager が有名ですが、これは検索条件に該当するものを 全部 fetch してきた...
最近は常にInnoDBを利用しているので,MyISAM vs InnoDB にちょっとコメントしてみる. まず「Webアプリならトランザクションはいらないか」について. Webアプリで,トランザクションの重要性が高くないといっても,無いよりはあった方が良いはず. ちょっとしたシステムでも,たとえばユーザのテーブル,プロフィールのテーブル,日記の記事のテーブルなどでわけるわけで,それ...
一昨日から今日まで3日間の日程で開催されていた、MySQL Conference & Expo 2007に行ってきました。日帰り圏内どころか、自転車圏内で、こういうカンファレンスがあるのは、素晴しいです。 詳細は、随時アップされるであろうプレゼン資料と、Planet MySQLに大量の報告があります(全部英語ですけど)。 個人的に注目していたのは、Digg.com、Flickr.comとYoutube.comのDB周りアーキテクチャの...
http://www.mysql.gr.jp/mysqlml/mysql/msg/9530 で話題になっていたように、 ver. 4.1以降、クライアント/サーバー間でキャラクターセットが自動的に 変換されるようになったことに伴い、多くの方が文字化けといった問題に 悩まされていたかと思います。 この点については開発側に改善を要求してきましたが、4.1.15にて "--skip-character-set-client-handshake" というオプションが導入されました。 http:...
『 ルディコープ社のウェブ開発リーダー、カル・ヘンダーソン(CalHenderson)はFlickrのバックエンドを2005年のヴァンクーヴァーでのPHPAssociationでかなり明らかにした 』 by aopico
http://blog.miraclelinux.com/yume/2007/02/mysqllinux_472a.html MySQLのマルチコアスケーラビリティとLinux スラッシュドットの情報。FreeBSDとLinuxでsysbench(MySQLを利用している)の結果が出ている。結論から言うと8コアのAMD64のマシンでスレッド数を上げていくと8スレッドまではLinuxでの性能が良かったが、それ以上になるとがたっと性能が劣化して、FreeBSDのSMPngの実装が勝つ。 下記を参照してほしい...
http://d.hatena.ne.jp/naoya/20060407/1144376197 ではてなおやさんがYouTubeの負荷分散について語っておられる. mixiの負荷分散とは質が違うことについてはおおむね同意だけど, YouTube のシステムを見たときにその焦点になるのは、まず第一にネットワーク帯域。第二にストレージをどうしているかというところじゃないかなと思います。動画配信にリソースがいるポイントは、ネットワーク帯域...
新しいストレージエンジンではないのですが、HEAPが4.1からMEMORYに名前が変わりました。また、4.1からHASHのほかにBTREEインデックスも使用可能になりました。 Pluggable Storage Engine 具体的なストレージエンジンの実装ではないのですが、5.1からPluggable Storage Engineと呼ばれる機構が導入されました。これはMySQL本体をビルドし直すことなく、稼働中のMySQLに動的にストレージエンジン...
『 エンタープライズ向け機能とかって別にいらないんだよなあ。速くなってればそれでokなんだけども。 』 by naoya
ダイナミックWebサイトの構築ではPerlとPHPが広く使われている。では、mod_perlとmod_phpのパフォーマンスはどちらがよいのだろうか。ちょっとしたテストをしてみたので報告する。 2006年08月25日 14時05分 更新 ダイナミックWebサイトの構築ではPerlとPHPが広く使われている。なにしろ、LAMPスタック(Linux、Apache、MySQL、 Perl/PHP/Python)に含まれる「P」の3分の2なのだ。それでは、通常のWeb...
『 機能策定の最終決定には、必ず技術者がからむようにしているとのこと。 』 by hiro_y
『 すごい膨大な数のプレゼン資料。InnoDBの話とか5.0vs4.1のパフォーマンステストとかレプリケーションとかYahoo内PHPの話は読んでおきたいと思った。 』 by lockcole
mod_perl のプロセス内でやるのに POE でイベントループ回せ、ということ? もうちょいkwsk! > b:id:kazuhooku naoyaグループ - naoyaの日記 - 非同期SQLサーバ エントリ全体の趣旨はさておき、ソケット通信を非同期化するためにまた別のソケット通信を行うという使用例に違和感を覚えたのですが、回避策としてブクマコメントで提示した POE::Component::EasyDBI も内部で fork (&プロセス...
の中で、タグの絞り込み機能を実装したのに続いて、「完了」や「finish」と言ったタグがついている場合表示しないというオプションを考えている。 そうなってくると、SQLをどう書けばいいのか、また複雑なSQLを構築したときにパフォーマンスは大丈夫なのかと心配。そこで、上記のURLを参考にしながらMySQLの全文検索に注目。 create table ft_tags( id int unsigned not null auto_increment primary ...
[http://d.hatena.ne.jp/yamaz/20061013:title=前回のシリアル/パラレル処理の視点]に立ってコネクションプールについて考えてみたい. コネクションプールが遅いとは [http://d.hatena.ne.jp/naoya/20060912:title=はてなおやさん]が考察しているように 普通にmod_perl でコネクションプールを素直に張るとコネクション数が爆発する. 図にすると図1のような感じで個々のapacheがコネクションを複数持つので,...
『 Falcon。InnoDBとの違いは、ReadUncommittedの非サポート、データファイルへの非同期I/O、auto_incrementの採番方法、ロストアップデートの自動検出とか。他にもInnoDBの実装よりも改善されていてよさげ。 』 by silver_arrow
で、pgbenchのスケールファクタは「10」、トランザクション数は「1000」としました。 比較するPostgreSQLのバージョンは 8.1beta2 と 8.0.3 で、5回実行した平均値を取っています。で、以下のグラフが比較結果なのですが、、、いやー本当に速いっす。チューニングしきれていないので、32クライアント・64クライアントではtpsが落ちてしまってますが、うまくチューニングすればもっと速...
『 この値を低く(100程度?)することにより、MySQLは(テーブルスキャンではなく)キースキャンを優先するようになります。 』 by miyamuko