タグ

2009年9月26日のブックマーク (30件)

  • Free Coding PNG Images with Transparent Backgrounds - FastPNG.com

    Download Coding PNG images for any device and screen size. High quality Coding PNG and images! Customize your desktop, mobile phone and tablet with our wide variety of cool and interesting Coding PNG in just a few clicks.

  • 認証がかかっています

    こちらのブログには認証がかかっています。 ユーザー名 パスワード Powered by Seesaa

  • MySQL 複合インデックスだそうです : にぽたん研究所

    livedoor Blog の商売仇かと思われる Seesaa BLOG の中の人「しーさーのパパ」さんが書いている Seesaa開発日記に、「MySQL - 複合インデックスのすすめ」という興味深いエントリがあった。 ちなみに、おいらは今の会社に入社するまでの間、MySQL 自体は自宅で遊ぶ程度にしか使ったことなかったのです。 まともに使って速さにビクーリしたりしていましたが、それでもロクにパフォーマンスチューニングとかしたことがないので、もっと速くしようとする努力を怠ってました。 特にインデックスなんつーものは WHERE 節で使うものに個別に張ればいいんじゃないかと思ってましたし。 でも、WHERE 節と違う ORDER BY が入ると filesort が入ってきて遅くなるんですねぇ。 目からウロコでした。 ということで自宅サーバで実験してみた。 嫌なテーブル名だけど。。。 ちな

    MySQL 複合インデックスだそうです : にぽたん研究所
  • MySQLについて 伍 - インデックスについて

    通常、MySQLでは、selectコマンドを実行した場合、1レコード目から最終レコードまで、シーケンシャルに検索を行っていきます。 しかしながら、レコード数が大量になってくると、検索速度の問題が生じます。 そこで、より高速な検索を行うために、インデックスを作成するのが一般的です。 インデックスを作成することによって、検索速度は劇的に改善されます。 但し、MySQLでは、1,000件以下であればシーケンシャルに検索した方が速いとされています。 さて、インデックスとはどのようなものであるかというと、直感的には、図書の巻末に付されている索引(インデックス)と同じです。 索引語はアイウエオ順、あるいは、アルファベット順に並べられていて、各々の索引語には、その索引語が登場するページ数(位置情報)が示されています。 読者はその位置情報を頼りに、ページを捲って、目的のキーワードのある部分を読

  • ゆーすけべー日記

    サキとは彼女の自宅近く、湘南台駅前のスーパーマーケットで待ち合わせをした。彼女は自転車で後から追いつくと言い、僕は大きなコインパーキングへ車を停めた。煙草を一吸ってからスーパーマーケットへ向かうと、ひっきりなしに主婦的な女性かおばあちゃんが入り口を出たり入ったりしていた。時刻は午後5時になる。時計から目を上げると、待たせちゃったわねと大して悪びれてない様子でサキが手ぶらでやってきた。 お礼に料理を作るとはいえ、サキの家には材が十分足りていないらしく、こうしてスーパーマーケットに寄ることになった。サキは野菜コーナーから精肉コーナーまで、まるで優秀なカーナビに導かれるように無駄なく点検していった。欲しい材があると、2秒間程度それらを凝視し、一度手に取ったじゃがいもやら豚肉やらを迷うことなく僕が持っているカゴに放り込んだ。最後にアルコール飲料が冷やされている棚の前へ行くと、私が飲むからとチ

    ゆーすけべー日記
  • MySQL/チューニング - がしまっくす

    統計情報を取る † 定量的な情報収集のススメ mysql> show global status; (5.0.2以上の場合) mysql> show status; (5.0.2未満の場合) ↑ ファイルオープン数の調整 † 高負荷なときに以下のコマンドを実行 $ mysqladmin -u root -p extended-status | grep Open Enter password: | Open_files | 515 | | Open_streams | 0 | | Open_tables | 256 | | Opened_tables | 45281 | Open_files, Open_tablesの数が多い場合は /etc/my.cnf の以下を調整。この値が大きすぎると「Error in accept: Too many open files」エラーが発生し、MyS

  • プロファイリングで快適MySQLチューニング生活

    MySQL 5.1からデフォルトで有効になっている便利な機能としてプロファイリングというものがある。MySQL 5.0でも利用出来たのだが、実験的な機能という位置づけであり、搭載されていたのはGPL版のMySQL Community Server限定だった。MySQL 5.1からは全てのエディションでプロファイリングを利用することができる。 プロファイリング機能を利用すると、クエリの状態(特に状態遷移やリソースの消費状況)を詳細に分析できるのでとても便利だ。MySQLエンジニア必携の機能といって良いだろう。というわけでプロファイリング機能の使い方を説明しよう。 MySQLサーバにログインしたら、まずは次のようにしてプロファイリングを有効にする。 mysql> SET profiling=1; すると、クエリの情報が記録されるようになる。次に、分析したいクエリを実行する。クエリはなんでもいい

    プロファイリングで快適MySQLチューニング生活
  • MySQLのパフォーマンスチューニング - モノノフ日記

    とある勉強会でSunのエンジニアの人のプレゼンを直接聞く機会があったのでメモったことを公開します。基的な事が多いんだろうけど、非常に参考になりました。 パフォーマンスとは スループット レスポンスタイム/レイテンシ スケーラビリティ 上記のコンビネーション アーキテクチャとは Connection Thread Pool Query Cache Parser SQLクエリをパース Optimizer Storage Engines アプリによって最適なエンジンを選択すべき サーバのコネクション&スレッド my.cnf max_connection (100) 多すぎるとメモリを消費しきる可能性あり thread_cache_size (8) スレッドをコネクションの切断後にもキャッシュしておく数 一般的には max_connections / 3 sort_buffer_size(2M)

    MySQLのパフォーマンスチューニング - モノノフ日記
  • DSAS開発者の部屋:5分でできる、MySQLのメモリ関係のチューニング!

    MySQLのチューニングにおいて非常に重要となるメモリ(バッファ)関連のパラメータについて、 チューニングのポイント DSASのとあるDBサーバ(実メモリ4GB)の実際の設定値 をまとめてみます。 また、必要メモリの総量の計算や限界値を越えてないかチェックしてくれるスクリプトも紹介します。 是非、参考にしてみてください! まず最初に注意点を。 バッファには2つのタイプがあります。 グローバルバッファ スレッドバッファ グローバルバッファはmysqld全体でそのバッファが1つだけ確保されるもので、 これに対し、 スレッドバッファはスレッド(コネクション)ごとに確保されるものです。 チューニングの際にはグローバル/スレッドの違いを意識するようにしましょう。 なぜなら、スレッドバッファに多くのメモリを割り当てると、コネクションが増えたとたんにアッという間にメモリ不足になってしまうからです。 in

    DSAS開発者の部屋:5分でできる、MySQLのメモリ関係のチューニング!
  • Kazuho@Cybozu Labs: MySQL の高速化プチBK

    « システムコールの最適化 | メイン | キャッシュシステムの Thundering Herd 問題 » 2007年09月20日 MySQL の高速化プチBK 鴨志田さんに教えていただいたのですが、MySQL のクエリは数値をクォートしない方が高速になるらしいです。たとえば以下の例では、160万件の整数から4の倍数を数えていますが、数値をクォートしないほうが約50%も高速になっています。 mysql> show create table numbers; +---------+----------------------------------------------------------------------------------------+ | Table | Create Table | +---------+--------------------------------

  • MySQLの高速化 Tips - memo.xight.org

    Summary my.cnf [client] # セキュリティ面から変更すべき port = 3306 [mysqld] # インデックスをバッファに保存する際のメモリサイズ # MyISAMならOSキャッシュも使用するため,全メモリの30-40%を当てると良い. key_buffer = 256M # InnoDBはOSキャッシュを使用しないため,全メモリの70-80%を当てると良い. innodb_buffer_pool_size =512M # データのキャッシュサイズ.I/Oを減らす. # 数百のテーブルであれば,1024が良いらしい. table_cache = 256 # スレッドの作成,削除は負荷が大きい. # Threads_Createdの動きを見ながら変更. thread_cache = 16 # あまり効果は無いらしい. #innodb_additional_poo

  • 漢(オトコ)のコンピュータ道: MySQLを高速化する10の方法

    ちょっとキャッチ−なタイトルをつけてしまったが、今日は独断と偏見でMySQLを高速化する方法を10個紹介しよう。MySQLサーバをチューニングするときや初期導入する場合などに参考にしてもらいたい。 1. バッファを増やす、または減らす チューニングの基中の基であるが、適切なバッファサイズを設定することはパフォーマンスチューニングの要である。主なバッファは次の通り。 innodb_buffer_pool_size・・・InnoDBだけを利用する場合は空きメモリの7〜8割程度を割り当てる最も重要なバッファである。余談だが、実際にはここで割り当てた値の5〜10%ぐらいを多めにメモリを使うので注意が必要だ。 key_buffer_size・・・MyISAMだけを利用する場合は、空きメモリの3割程度を割り当てるといい。残りはファイルシステムのキャッシュ用に残しておこう。 sort_buffer_

    漢(オトコ)のコンピュータ道: MySQLを高速化する10の方法
  • さらにMySQLを高速化する7つの方法

    MySQLを高速化する10の方法という記事がとても好評だったようである。記事を読んで頂いた皆さん、ありがとう。 この記事に対する便乗(?)でWeb屋のネタ帳: PostgreSQLを高速化する16のポイントという記事を書いて頂いたようだが、そちらの方もかなり人気だったようである。他人が作ったソフトウェアに改良を加えるというフリーソフトウェアやオープンソースソフトウェアの精神も基は便乗であるので、便乗については大いに賛成したいというかむしろ取り上げてくれてありがとう!!と思うわけであるが、ここでさらに俺はこう考える。 と。 Web屋のネタ帳さんの記事では16のポイントが紹介されているが、漢(オトコ)のコンピュータ道の記事は10の方法だったのであと6つ足りない。オトコは数で勝負!!というわけで今日はネタを振り絞ってさらに7つのMySQL高速化テクニックを紹介しよう。 1. インテルコンパイラ

    さらにMySQLを高速化する7つの方法
  • DB復旧・最適化やチートシート等、MySQL関連の開発リファレンス集:phpspot開発日誌

    DB復旧・最適化やチートシート等、MySQL関連の開発リファレンス集をまとめてみました。 Roundup of MySQL Cheat Sheets & Free Quick Reference Guides - Webmaster & Web Design Tools Blog MYSQLのコマンドやセキュリティに関するチートシート集いっぱい SayNoToFlash ? 25 Point Basic MySQL Setup/Optimization Checklist MySQL最適化のための25のチェックリスト How To Change MySQL Root Password MySQLのrootパスワードを変更する方法色々 Recovery after DROP [ TABLE | DATABASE ] | MySQL Performance Blog MYSQLでDROPテーブ

  • MySQLの最適化

    限りなく眠気を誘うPHP Internalsのセッションから逃げる。こっちの 講師はMySQL.comの人。講演慣れしていて、ずっとまともでプロフェッショナルな 感じ。午前中を逃したのが惜しいが、詳しいプレゼン資料は後日公開される らしい。 DELETEのコストはかなり高い 読みだしがすごく多い場合は無効化を示すフィールドを作りUPDATEすべき、 index更新のコストが馬鹿にならないSHOW STATUSの表示結果の解析方法 起動ごとに初期化、全データベースに共通rnd と rnd_next の割合Key_reads : Key_read_requests 、ディスクから読まれた回数:総回数 この割合が1:100より悪くなったら要注意Key_write_requests:Key_writes 総書き込み要求回数:ディスクに書き込ま れた回数 キャッシュの効果などMax_used_con

    rin1024
    rin1024 2009/09/26
    DELETEはコスト高.読みだしがすごく多い場合は無効化を示すフィールドを作りUPDATEすべき、 index更新のコストが馬鹿にならない // selectの最適化.LEFT JOIN, STRAIGHT JOINとUSINGの組み合わせはWEREより早い WHERE field INはかなり早い
  • MySQL :: MySQL 8.0 Reference Manual :: 15.2.7.1 INSERT ... SELECT Statement

    SAVEPOINT, ROLLBACK TO SAVEPOINT, and RELEASE SAVEPOINT Statements

  • 「ちょっと待て」 真・MySQLのクエリを最適化する10のTips

    Jaslabs: High performance phpで紹介された「MySQLのクエリを最適化する10のTips」に対して、反論している人がいる。ブログ「20bits」のJesse氏だ。彼は「10 Tips for Optimizing MySQL Queries (That don’t suck)」というエントリーで、Jaslabs氏の記事は適切でないとしている。 Jesse氏の経験によれば、SQL最適化で最も重要なことはSQLDBの基をしっかりと理解することであり、60%がこれで解決するという。残り35%はDBやクエリの特殊な性質に対する対処であり、最後の5%で発想の転換などを求められる。Jaslabs氏はここにばかり力を入れており、それはまったくもって時間の無駄だと述べている(Jesse氏は「SQL_SMALL_RESULTなんて、生まれてこの方使ったことすらない」とまで言っ

    「ちょっと待て」 真・MySQLのクエリを最適化する10のTips
  • ウノウラボ Unoh Labs: MySQL最適化のミニtips

    yukiです。 今回はWebサイトを製作する上で欠かせないデータベース(DB)のお話です。Linux、Apache,MySQL,PHPを組み合わせたLAMPという言葉が登場して久しいですが、Webサービスを構築する上で欠かせないのがDBの存在ですね。 運用後Webサイトが順調に拡大し規模も大きくなってきた頃、パフォーマンスに悩むことも出てくるものです。 ハードウェアや構成に問題がある場合、ロジックに問題がある場合など様々ですが、DBを見直してみるのも手かもしれません。 銀行の預金残高などのようにミッションクリティカルである場合や、ともかくパフォーマンス性を求められるなど様々あり、一概に言えるものでもありませんが、 Webサービスにおいては有名な8秒ルールも、最近では6秒、3秒、1秒と求められるパフォーマンスはどんどん短くなって来ています。 パフォーマンスだけでなく、メンテナンスコ

  • MySQLのクエリを最適化する10のTips - PHPプロ!ニュース

    平素より「PHPプロ!」をご愛顧いただき、誠にありがとうございます。 2006年より運営してまいりました「PHPプロ!」ですが、サービスの利用状況を鑑みまして、2018年9月25日(火曜日)をもちましてサービスを終了させていただくことになりました。 サービス終了に伴いまして、2018年8月28日(火曜日)を持ちまして、新規会員登録ならびにQ&A掲示板への新たな質問、回答の投稿を停止させていただきます。 なお、ご登録いただいた皆様の個人情報につきましては、サービス終了後、弊社が責任をもって消去いたします。 これまで多くの皆様にご利用をいただきまして、誠にありがとうございました。 サービス終了に伴い、皆様にはご不便をおかけいたしますこと、心よりお詫び申し上げます。 件に関するお問い合わせはこちらよりお願いいたします。

  • MySQL/最適化/サーバパラメタ - Linux Tips

    ここでは、サーバパラメタの最適化によるMySQLのチューンについて紹介する。 _ パラメタのチェック 現在の設定値を確認するには、 # mysqld --help とする。 MySQL-5.xでは、 # mysqld --verbose --help としないと、確認できなかった。 あるいは、クライアントから、 mysql> SHOW VARIABLES; でもOK。 ↑ key_buffer_size † MyISAM テーブルのインデックスを保存しておくバッファの大きさ。サーバ全体で共有される。メモリに余裕があれば、MyISAMのみのMySQL専用サーバなら、RAMの1/2、Apache などと共用なら、RAM の1/4程度とする。ただし、サイズを大きくすると、OSのページングのために、逆に遅くなることもあるので注意。 set-variable = key_buffer=256M M

  • はてなブログ | 無料ブログを作成しよう

    超絶品!死ぬまでに一度はべてほしい煮込み10選 ああ。いかにもインターネット!みたいなタイトルをつけてしまった。 「超絶品!死ぬまでに一度はべてほしい煮込み10選」て。読んでほしすぎて大仰な形容詞をつけて数字を入れて読み手の注意を引くタイトル、もうネット記事まるだしである。 でも、わかってほしい。…

    はてなブログ | 無料ブログを作成しよう
  • [ヅラド] MySQLのテーブルから大量のデータを削除

    This page moved.

  • ミックのブログ

    日、新著が発売となります。書の初版は処女作ということもあり、色々と書き手として未熟な部分も多く出てしまったなのですが、幸運にも長い期間読んでいただいたことでこのたび改訂版の刊行にこぎつけることが出来ました。 さすがに10年経過すると内容も古くなっており、多くのコードをリバイスしています。特に初版刊行時にはまだサポートが不十分だったウィンドウ関数が、現在では主要なDBMSではほぼ利用できるようになったことを受けて、全面的にこれを採用しました。これにより性能と表現力を両立させるモダンなSQLコーディングが可能になったので、ぜひ書でその素晴らしさを確認いていただければと思います。 以下に書の前書きを引用しますので、購入の際の参考にしてください。 書の初版が刊行されてから、10年が経過しました。筆者にとって、初版は初めて書いた、いわゆる処女作であり、自分の知見や文章がどのような受け取

    ミックのブログ
  • MySQL 高速化メモ

    ●はじめに MySQLでSELECT文が遅いと感じたり、INSERT処理だけで1日かかった!なんて事ありませんか? そんな時はページのメモを参考に高速化してみてください。 ちょっとした設定だけで1日かかる処理が数分で終わる(!?)なんて事も。 ぜひお試しあれ。 ●SELECT文の高速化 1.テーブルを分ける。 同じ構造のテーブルをいくつかに分割する。例えば、wordというテーブルがあるとすると、 ja_word,en_wordなど国別に分割したり、word2005,word2006など年月日で分割してみる。 2.テーブルにインデックスを設定する。 create index インデックス名 on テーブル名 (フィールド名); 文字列の場合はインデックスに設定する文字数を指定可能。 create index インデックス名 on テーブル名(フィールド名(要素数)); 私がやってみた感じで

  • mysql:2178

    rin1024
    rin1024 2009/09/26
    updateとdeleteが遅いとか言う話
  • 愛と苦悩の日記: MySQLのINSERT文を高速化する

    70年代生まれの人々のためのWebサイト think or die の「愛と苦悩の日記」をブログ化 1997/12/13から現在まで、日常生活をテツガクするエッセー集 中国の歌やドラマ関係も。ジェイド・イン(Jade Yin)、alan「懐かしい未来」、『地下鉄の恋』など。 仕事で「MySQL」を使うことになったのだが、Notes/DominoのLotusScript(Visual Basic互換の言語)のForループの中から、ADODBオブジェクトを使って、ODBC接続でINSERT文をくりかえしMySQLサーバへ発行すると、処理速度が遅いのが気になった。 MySQLのドキュメントで「INSERTクエリの速度」の部分を読むと、「複数ステートメント」を利用すると高速になるという。「INSERT INTO table_a VALUES (1, 23), (2, 24), (3, 2

  • MySQL 4.1 リファレンスマニュアル :: 6.3.1.4 フロー制御関数 ifnull

    CASE value WHEN [compare_value] THEN result [WHEN [compare_value] THEN result ...] [ELSE result] END CASE WHEN [condition] THEN result [WHEN [condition] THEN result ...] [ELSE result] END 1 番目のバージョンでは、value=compare_value の場合に result が返されます。2 番目のバージョンでは、true である最初の条件の結果が返されます。一致する結果値がなかった場合は、ELSE のあとの結果が返され、ELSE 部分がない場合は、NULL が返されます。 mysql> SELECT CASE 1 WHEN 1 THEN 'one' -> WHEN 2 THEN 'two' ELSE

    rin1024
    rin1024 2009/09/26
    case, if
  • wrong, rogue and log : Webでお気楽に数式を表現する

    いやいや、いままでWebで数式書くのに非常に苦労をしていたわけですよ、このブログも含めて。LaTeXからjpeg, gifの画像を出力したり、mimetexを使ったり、MathML使ったりと。しかし、画像だとあまりに汚いし、mimetexでもインテグラルの形だとかフラクションの大きさといった数式のバランスが悪くて気持ち悪くてしかたないし、その気持ち悪い数式にも関わらず個人的な相性がよくないはてな(mimetexがデフォルトで利用できる)に移るのはかなりビミョウだし。更に、MathMLにするとプラグイン入れていないと見えないし、通常の標準ブログではMathML自体をサポートしていないし。 だが、ここでようやく満足ができるレベルのLaTex->Webツールを見つけた。codecogsのこれである。 これなら例えばRiemann-von Mangoldtの明示公式は、 <img src="htt

    wrong, rogue and log : Webでお気楽に数式を表現する
    rin1024
    rin1024 2009/09/26
    数式を表現する記法
  • はてなブログ ヘルプ

    はてなブログのヘルプです

    はてなブログ ヘルプ
  • rottel.net

    This domain may be for sale!

    rin1024
    rin1024 2009/09/26
    重複キーがあれば無視したり,updateする方法