遅いSQLのチューニングをしており、色々分析を進めた結果、新しいインデックスを作成すれば改善する見込みがたちました。 そこで新しいインデックスを作成する準備をしていたところ、QAチームの人から 「インデックスを作成するとINSERTとUPDATEが遅くなるは…
SQLチューニングをしている中で、なぜかインデックスをうまく使ってくれないクエリがあり、色々調べたところ『最もカーディナリティの高いカラムをインデックスの一番左に置けばよいわけではない』ということがわかったので、メモとして残したいと思います。…
最近あるプロダクトの性能改善をおこなっており、その中で特にMySQLのチューニングを担当しています。 RDBのチューニングといえばまずはインデックスです。「インデックスを作成すれば早くなる!」というのは感覚的にはわかっているのですが、インデックスが…
今まではMySQLの接続情報を .my.cnf に保存して楽をしていましたが、 .mylogin.cnf という形式があるというのを恥ずかしながら最近知りました。 .my.cnf と .mylogin.cnf は、どちらも MySQL サーバーへの接続に使用される設定ファイルです。認証情報を保存…
✨目的や背景 MySQLのパフォーマンスチューニングをする際に、pt-query-digestでスロークエリログ(以下、スローログとする。)を分析をするのはわりと一般的だと思います。 pt-query-digestを使用するには生のスローログファイルが必要ですが、AWS RDSのスロー…
✨目的や背景 AWSのコスト削減のために、本番環境以外のECSとRDSについて、平日夜間と休日は自動で停止するようにしたい。というありふれた目的です。 実はその仕組みはLambdaで構築済みなのですが、最近はLambdaでコードを書かなくても実現ができそうだった…
私が所属している会社ではソース管理にGitHub Organizationを使っており、会社のルールでリポジトリの可視性設定は必ずプライベートにしなければなりません。 自分のチームではよくTerraformを触るのですが、GitHub Actionsでterraform initする際に、別のリ…
私が担当しているプロダクトの検証環境はIP制限をしています。更にはその前段に、全プロダクト共通の認証基盤があり、認証基盤の検証環境も同様にIP制限がされている状態です。開発者が検証環境にアクセスできるように全社VPNのIPはもちろん許可していますが…