これは「Rubyist近況[1] Advent Calendar 2021」の6日目の記事です。 adventar.org 自称Rubyist なので近況を書きます。 2021年10月末で30年ほど勤めた富士通グループを退職しました。 11月からはSmartHR という会社で働いてます。 3年ほどRuby は仕事ではあんまり使ってなかったのですが、またRuby を仕事で使うようになりました。 会社から配布されたPC は Core i7 メモリ32GB のMacBook Pro なんでかなり人権がある感じなんですが、人生初Mac で1ヶ月位経ってもまだ慣れなくて、VM で Ubuntu Desktop 入れようか迷ってます。 近況は以上です。以下は富士通グループの入社〜退職までのメモ。長いので読まなくていいです。 1991〜 設立7年目の今はなき「富士通長野システムエンジニアリ
仕事やらなんやらでMySQLのクエリの良し悪しを判断する必要があるとき、EXPLAINの内容だけだとどのぐらい良くなったり悪くなったのか分からないので SET long_query_time = 0; してrows_examined (そのクエリでrows_sent行の結果を返すために何行に触ったのか)も一緒に提示するようにしている(少なくともMySQL 5.7時点ではrows_examinedはslow_query_logでしか確認できないはずperformance_schemaが有効ならevents_statements_historyやその仲間たちで確認できるとのこと*1MySQL ::MySQL 5.6 リファレンスマニュアル :: 22.9.6 パフォーマンススキーマステートメントイベントテーブル)。 例: 上の例のBeforeは、もともとDBAが書いた温かみのあるSQLでO

こんにちは、サービス開発部の荒引 (@a_bicky) です。 突然ですが、RDBMS の既存のテーブルを見てみたら「何でこんなにインデックスだらけなの?」みたいな経験はありませんか?不要なインデックスは容量を圧迫したり、挿入が遅くなったりと良いことがありません。 そんなわけで、今回はレコードを検索するために必要なインデックスの基礎知識と、よく見かける不適切なインデックスについて解説します。クックパッドではRails のデータベースとして主にMySQL 5.6、MySQL のストレージエンジンとして主に InnoDB を使っているので、MySQL 5.6 の InnoDB について解説します。 InnoDB のインデックスに関する基礎知識 インデックスの構造 (B+ 木) InnoDB では B+ 木が使われています。B+ 木は次のような特徴を持った木構造です。 次数を b とすると、

「第7回 日本OSS奨励賞」の受賞理由について木下さんはこう説明してくれた。 「2010年末にリリースされたMySQL 5.5(GA)からInnoDB-Plugin がデフォルトの InnoDB になりました。それまでは、性能改善の開発版という形で従来のInnoDBとは別にInnoDB-Pluginとしてソースコードに含まれていて、性能改善はこのInnoDB-Pluginを対象に行われてきました。5.5 になってそれまで議論された性能改善の成果が一気に一般ユーザーも享受するところとなりました。なので、このタイミングで評価を受けたのだと思います」 デフォルトストレージエンジンの変更はInnoDB以外を使っていたユーザーには性能改善でインパクトがある変化だったそうだ。そして「Contributor of the Year」受賞をうけ、OSS奨励賞にもつながったという。しかし木下さんは「貢献は業

20年越しの大規模リニューアルが進行中。「わくわく時間100%」を目指すDMM通販モダナイズプロジェクトの全貌

MySQL PerformanceBlogの翻訳。Perconaのサポートエンジニアである筆者が、InnoDBのパフォーマンスチューニングの基礎について、ハードウェアやOSの選定からパラメータの推奨値まで解説する。 最近、2007年にPeter Zaitevが書いた「InnoDBパフォーマンス最適化の基礎」という記事を見つけた。これは素晴らしい記事で、読んでいると、MySQLとPercona Serversそして今日利用可能な全ての基盤技術に関して、6年近くの間に何が変わってきたのかを見直してみたいと思わせるものだ。本当にたくさんのことが変わったものだ!この記事では、InnoDBの使用に効果的なパラメータの多くに、特にパフォーマンスの観点から焦点を当てる。私はサポートエンジニアで、Percona SupportではInnoDBパラメータの適切なサイズに関する質問がたくさん寄せられている
MySQL Workbenchの次期バージョンである6.0のベータ版が公開された。例によってMySQLのダウンロードサイトで公開されているので、新機能が気になる人はゲットして試してみて頂きたい。見た目が若干今流行りのフラットデザインっぽくなってシャレオツ(笑)な感じに仕上がってる。 ベータ版が公開されたのを記念して、Workbenchに搭載されているナイスな機能について紹介したい。そう、Visual Explainだ。Visual Explainとは読んで字のごとく、SQLの実行計画を視覚的に表現したものだ。SQLが複雑になると、その実行計画は理解し辛いものとなる。 今日はVisual Explain基本的な使い方と、それがどのように見えるかを紹介しようと思う。 Visual Explainを使用するには、対象のMySQLのバージョンが5.6以上であり、なおかつWorkbenchのバージョ

いつの頃からかは知りませんが、Linux(CentOSとか)をインストールするとデフォルトでSELinuxが有効(Enfocing)になっていました。GUIインストーラ作業時にDisabledにするか、あるいは/etc/selinux/configでSELINUX=disabledにしておけばいいのですが、そのままにしておくと/etc/init.dからのmysqlの起動に失敗します。 こんな感じ。 [root@centos52 ~]# servicemysql start StartingMySQL..Manager of pid-file quit without updating f[失敗]mysqld_safeを直接叩くと起動できたり、 [root@centos52 ~]# whichmysqld_safe /usr/bin/mysqld_safe [root@centos5
UPDATE:Oracle officially released memcached daemon plugin that talks with InnoDB. I'm glad to see that NoSQL+MySQL has become an official solution.It's still preview release but will be very promising. Let's tryit to makeit better! Most of high scale web applications useMySQL + memcached. Many of them use also NoSQL like TokyoCabinet/Tyrant. In some cases people have droppedMySQL and have sh

モバゲーで知られるDeNAは、バックエンドデータベースにNoSQLを使っていません。なぜか? それはMySQL/InnoDB 5.1の環境で秒間75万クエリという、多くのNoSQLでも実現できないような高性能を実現しているから。DeNAの松信嘉範(まつのぶよしのり)氏は、自身のブログにこんな内容のエントリ「UsingMySQL as a NoSQL - A story for exceeding 750,000 qps on a commodity server」(英語)をボストしています。 Yoshinori Matsunobu'sblog: UsingMySQL as a NoSQL - A story for exceeding 750,000 qps on a commodity server 松信氏が指摘するように、大規模なネットサービスを提供している企業の多くは分散環境で

FullMySQL Support Sequel Pro is a fast, easy-to-useMacdatabase management application for working withMySQLdatabases. Perfect Web Development Companion Whether you are aMac Web Developer, Programmer or Software Developer yourworkflow will be streamlined with a nativeMac OS X Application! Flexible Connectivity Sequel Pro gives you direct access to yourMySQLDatabases on local and remote se

1リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く