タグ

tuningに関するhdkINO33のブックマーク (10)

  • innodb_buffer_pool_sizeのチューニング:どれくらい割り当てる?

    結論としてはinnodbテーブルの全データ量だそうです。 ここ最近はデータベースサーバのリプレースの案件の担当をしているのですが、サーバのサイジングをしていてふと、「どれくらいメモリあれば足りるんだろう」と疑問に思いました。 よく「サーバの全メモリの50%から70%くらい」とか「80%」くらいとか言われますが、それはどちらかというとスワップしないための限界値を示すものであって、理想値ではないですよね。それでいろいろ調べてみたところ、なかなか日語で良いまとめがなかったので、まとめてみようと思います。 目次 そもそもinnodb_buffer_poolとは? 使用状況を確認する(SHOW ENGINE INNODB STATUSでの計測) 適切なinnodb_buffer_pool_sizeは?(チューニング方法) そもそもinnodb_buffer_poolとは? InnoDB maint

  • MySQLマイスターに学べ! 即効クエリチューニング

    Copyright © 2004-2023 Impress Corporation. An Impress Group Company. All rights reserved.

  • The annotated table of contents

    前書き - インデックスの作成はなぜ開発者のタスクなのか インデックスの 内部構造 - インデックスは何に似ているか インデックス リーフノード - 二重連結リスト 検索 ツリー(Bツリー) - バランス木 遅いインデックス パートI - インデックスを遅くする2つの原因 where 句 - 検索のパフォーマンスを改善するためにインデックスを作成 等価 演算子 - 一致するキーの検索 プライマリキー - インデックスの使い方を確認 複合インデックス - 複数列に対するインデックス 遅いインデックス パートII - 前の問題点が再び 関数 - where句の 中での関数 大文字・小文字を区別する 検索 - UPPERと LOWER ユーザ定義 関数 - 関数インデックスの制限 インデックスの作り過ぎ - 冗長性の排除法 パラメータ化 クエリ - セキュリティとパフォーマンスのために 範囲 検

    The annotated table of contents
  • Railsアプリを66%スピードアップ ― Railsキャッシュの完全ガイド | POSTD

    (訳注:2016/3/2、頂いた翻訳フィードバックをもとに記事を修正いたしました。) Railsアプリでのキャッシングは、「たまに夕を一緒にするけれど、当はもっと頻繁に一緒にいるべき友達」に少し似ています。パフォーマンスをまじめに考えるRailsアプリのほぼ全てで、もっとキャッシングを使えるはずですが、ほとんどのRailsアプリでは、完全にキャッシングを避けています。それでも普通は、Railsで高速なサーバ応答を達成するための唯一の道は、キャッシングの知的な利用なのです。約250msの応答時間を、簡単に50~100msに高速化できます。 定義についての注意 ― この記事は、アプリケーション層のキャッシングのみを対象としています。HTTPキャッシング(これは全く別の難物で、あなたのアプリケーションに実装する必要はありません)は、別の機会で扱いましょう。 するべきキャッシングをしない理由

    Railsアプリを66%スピードアップ ― Railsキャッシュの完全ガイド | POSTD
  • 「Railsアプリのレスポンス遅いからなんとかしてよ」と無茶振りされたので、急遽計測エンジニアになってみたけどめちゃ苦労してる話 | FiNC Developers Blog

    Railsアプリのレスポンス遅いからなんとかしてよ」と無茶振りされたので、急遽計測エンジニアになってみたけどめちゃ苦労してる話 はじめに初登場、FiNCエンジニアインターンでサーバーサイド開発に携わっている坂井と申します。 私は今FiNCのメインアプリである「FiNC ダイエット家庭教師」のバックエンドのRuby on Railsによる開発に関わっているのですが、 特に最近はアプリケーション全般のパフォーマンスを改善するのがメインの任務になっています。 そこで今回は私が「ダイエット家庭教師」におけるパフォーマンスの向上を目論見、実行時間の計測をした件について述べていきたいと思います。 注1: 12月5日現在途中でかつ未解決です。ベストソリューションを探しに来た方には申し訳ないです。 注2: 失敗談メインです。 「ダイエット家庭教師」の現状と問題点とは「ダイエット家庭教師」って専門家がアプ

    「Railsアプリのレスポンス遅いからなんとかしてよ」と無茶振りされたので、急遽計測エンジニアになってみたけどめちゃ苦労してる話 | FiNC Developers Blog
    hdkINO33
    hdkINO33 2016/06/14
    "今やるべきことに力を注入する、これが出来る人と出来ない人の差は大きいと感じました。"
  • MySQL 5.6のインストール後にチューニングすべき項目 | Yakst

    MySQLコミュニティマネージャのMorgan Tocker氏による、MySQL 5.6をインストールした後にデフォルト値から変更した方がよいパラメータの解説。 数々のデフォルト値の改善によって、過去のバージョンと比べてMySQL 5.6では設定しなくてはならない値がかなり減った。とは言え、変更すべきものについてここで書いておきたい。 InnoDBの設定 innodb_buffer_pool_size - デフォルトは128M。これは、メモリにロードされるデータとインデックスのためにInnoDBがどのくらいメモリを使うかを指定するものなので、設定すべき重要な値だ。MySQLの専用サーバなら、搭載されているメモリの50%から80%が推奨される設定値だ。例えば、64GBのRAMを搭載しているサーバなら、バッファプールは50GB程度にすべきだろう。 innodb_log_file_size -

    MySQL 5.6のインストール後にチューニングすべき項目 | Yakst
  • MySQLの大きなテーブルでのパフォーマンスを改善する10の方法 | Yakst

    MySQLコミュニティマネージャのMorgan Tocker氏による、テーブルサイズが大きくなるにつれてINSERTのパフォーマンスが落ちてきてしまうことを防ぐ様々な方法についてのまとめ。 今日は、パフォーマンス問題を引き起こす原因になる、サイズの大きいテーブルのパフォーマンスを改善することについて書いてみようと思う。このアドバイスのうちのいくつかは、たくさんのテーブルをまとめて大きくなっているデータベースにも適用できるが、大抵の場合、独立した大きなテーブルというのは特に問題になりやすいものだ。 一般的に知られていると思われるのは、テーブルを変更する時のスピードは、そのサイズが大きくなるにつれて遅くなることだ。以下の図は、一般的なB+ツリーインデックスのパフォーマンスを時系列で見たものだ。 このグラフは、MySQL@Facebookの記事から拝借したものだ。これは、insert buffe

    MySQLの大きなテーブルでのパフォーマンスを改善する10の方法 | Yakst
  • 雑なMySQLパフォーマンスチューニング

    【第26回Elasticsearch勉強会】Logstashとともに振り返る、やっちまった事例ごった煮Hibino Hisashi

    雑なMySQLパフォーマンスチューニング
  • MySQL のチューニング (ボトルネックの検出) - onk.ninja

    MySQL のチューニング (ボトルネックの検出) こんにちは! onk です。 SAPさんが各社とも「ソーシャルアプリは負荷対策が大事」って言っていますね。 弊社でも mixi アプリ(PC),mixi アプリモバイルをリリースしたときはお祭り状態だったので, ふりかえりも兼ねて MySQL のボトルネックを調べる方法を書いてみました。 (幸い,モバゲーオープンゲームのリリース時はこれらの経験が役に立ったので何ともなかったです) といっても 9 割方 そもそもサーバの設定がおかしい 更新が多いテーブルなのに MyISAM エンジン for 文の中でクエリを発行 INDEX 張ってない データ量がえらいことになってる 辺りなんですけどねー。 基は下から まず,ボトルネックを調べるときは下の層から上がっていくのが基です。たぶん。 なので ssh でサーバに入って (LoadAverage

    MySQL のチューニング (ボトルネックの検出) - onk.ninja
  • MySQLクエリーチューニングことはじめ

    はじめに はじめまして、yoku0825といいます。とある企業のDBAです。 この連載を始めるにあたり、簡単に筆者の背景(この連載が、どんな仕事をしている人間によって書かれたか)を説明しておきたいと思います。 筆者は「とある企業でDBA(データベースを専門で面倒を見る人)」として雇用されています。「データベースの面倒を見る」というと、サーバーサイドアプリケーション(データベースの上のレイヤー)を書く人が担当している場合やインフラエンジニア(データベースよりも下のレイヤー)と呼ばれる人たちが担当している場合を多く耳にしますが、筆者はこれを専門的に、仕事をしている時間はほぼデータベースのことを考えていたり検証したりチューニングしたりしています。 このような背景から、筆者はたしなみ程度にしかプログラムが書けません。サーバーサイドアプリケーションはほぼブラックボックスです(見ようと思えば見られると

    MySQLクエリーチューニングことはじめ
  • 1