タグ

ブックマーク / zenn.dev/levtech (2)

  • SQLチューニングとは宣言型言語でリファクタリングをするということ

    これはなに ども、レバテック開発部のもりたです。 タイトルの通りなんですが、SQLチューニングってつまり宣言型言語でリファクタリングするってことだよね、というのを書きます。なお具体的なリファクタの方法とか実行計画の読み方とかはスコープ外です(別で書く予定)。 SQLチューニングはリファクタリング まずSQLチューニングというと、パフォーマンス改善みたいな意味合いが強いと思います。ただ、SQLチューニングは質的にはリファクタリング的な行為であるはずです。リファクタリングの定義を確認すると、 リファクタリングとは、ソフトウェアの外部の振る舞いを保ったままで、内部の構造を改善していく作業を指します。 引用元: 『リファクタリング 既存のコードを安全に改善する 第2版』 雑にいえば、結果を変えないでコードを改善することです。ここでいう改善とは内部品質を向上させることで、例えば保守容易性であったり

    SQLチューニングとは宣言型言語でリファクタリングをするということ
  • スロークエリを改善したらECSの負荷が爆下がりした話(TypeORM)

    TL;DR TypeORMで発生していたスロークエリを改善 スロークエリを改善したらECSの負荷も減少 はじめに スロークエリを改善したら、ECSコンテナ側の負荷も下がってなんでだろ?と思ったので記事にしようと思います。 環境 TypeORM v0.3.20 Node.js v18.x バックエンドインフラ ECS on Fargate => Amazon Aurora MySQL 負荷改善の前と後 まずはどのくらい改善したのかを示します。 この時ECSコンテナ8台動いてました。(4vCPU 8GBMem) 改善前 改善後 改善前と改善後は一日前の同じ時間帯のものです。 ちゃんと動いてるのか不安になるくらい下がってました笑 どのような対応をしたのか スロークエリの出ていたクエリでMySQLの実行計画を確認しました。 TypeALL,index, Using Filesort等はなかったので

    スロークエリを改善したらECSの負荷が爆下がりした話(TypeORM)
  • 1