![[PostgreSQL] Planner, Optimizer (ํ๋๋, ์ตํฐ๋ง์ด์ )๋? Planner, Optimizer (ํ๋๋, ์ตํฐ๋ง์ด์ )์ ๊ฐ๋
๊ณผ ์๋๋ฐฉ์](/images/posts/71/img.png)
[PostgreSQL] Planner, Optimizer (ํ๋๋, ์ตํฐ๋ง์ด์ )๋? Planner, Optimizer (ํ๋๋, ์ตํฐ๋ง์ด์ )์ ๊ฐ๋ ๊ณผ ์๋๋ฐฉ์
1. Planner / Optimizer (ํ๋๋ / ์ตํฐ๋ง์ด์ ) ๋? Planner / Optimizer๋ ์ฟผ๋ฆฌ์ ์ต์ ํ๋ ์คํ ๊ณํ์ ๋ง๋ค์ด๋ธ๋ค. ํ ๊ฐ์ SQL ์ฟผ๋ฆฌ๋ ๊ฒฐ๊ณผ๋ ๊ฐ์ง๋ง,ย ๋ค์ํ ๋ฐฉ๋ฒ๊ณผ ์์๋ก ์คํ๋ ์ ์๋ค. Planner / Optimizer (์ดํ๋ Planner๋ก ๋ช ์นญ)๋ ์คํ ๊ฐ๋ฅํ ๊ฐ๊ฐ์ ํ๋์ ๊ฒ์ฌํ์ฌ ๊ถ๊ทน์ ์ผ๋ก ๊ฐ์ฅ ๋น ๋ฅด๊ฒ ์คํ "๊ธฐ๋"๋๋ ํ๋์ ์ ํํ๋ค.ย 1-1. Genetic Query Optimize ๊ฐ๋ ์ฟผ๋ฆฌ์ ์คํ ๊ฐ๋ฅํ ๋ฐฉ์๋ค์ ๊ฒ์ฌํ๋ ๋ฐ๋ง๋ ๊ต์ฅํ ํฐ ์๊ฐ๊ณผ ๋ฉ๋ชจ๋ฆฌ๊ฐ ์๋ชจ๋๋ค. (ํนํ, ๋ง์ ์์ join์ ํฌํจํ ์ฟผ๋ฆฌ๋ฅผ ์คํํ ๋ ๋ฐ์) ํฉ๋ฆฌ์ ์ธ ์ฟผ๋ฆฌ ํ๋(์ต๊ณ ์ผ ํ์๋ ์๋ค)์ ํฉ๋ฆฌ์ ์ธ ์๊ฐ ๋ด์ ์ฐพ๊ธฐ ์ํด, PostgreSQL์ join์๋์ด ์๊ณ์น๋ฅผ ์ด๊ณผํ๋ฉด Genetic Query Optimizer๋ฅผ ์ฌ์ฉํ๋ค. Genetic Query Optimize๋ ์ต์ ์ ์กฐ์ธ ์์๋ฅผ ์ฐพ๊ธฐ ์ํด, ์ผ๋ถ ์กฐ์ธ ์์๋ฅผ ์๋ ํ ์ ํฉ์ฑ ํจ์๋ฅผ ํตํด ์กฐ์ธ ์์์ ์ ํฉ์ฑ์ ํ๊ฐํ์ฌ ์ต์ ์ plan์ ์ ํํ๋ค. ๋ฉ๋ชจ๋ฆฌ์ ์๊ฐ์ ์ ์ฝํ ์ ์์ง๋ง, ํญ์ ์ต์ ์ ๋ต์ ์ฐพ๋ ๊ฒ์ ์๋๊ธฐ์ ํจ์จ์ฑ์ ๋ณด์ฅํ์ง ๋ชปํ๋ค. ...
![[PostgreSQL] Index-Only ์ค์บ๊ณผ Covering ์ธ๋ฑ์ค, Index-only์ค์บ์ ํจ์จ์ ์ธ ์ฌ์ฉ](/images/posts/70/%ec%8a%a4%ed%81%ac%eb%a6%b0%ec%83%b7%202024-03-13%20%ec%98%a4%ed%9b%84%206.43.10.png)
![[PostgreSQL] ์ธ๋ฑ์ค(INDEX)์ ์ค๋๋ฐ์ด(ORDER BY), ORDER BY ์ฑ๋ฅ๊ฐ์ , ํจ์จ์ ์ธ ์ธ๋ฑ์ค ์ ์ฉ](/images/posts/69/%ec%8a%a4%ed%81%ac%eb%a6%b0%ec%83%b7%202024-03-12%20%ec%98%a4%ed%9b%84%206.14.28.png)
![[PostgreSQL] 2๋จ๊ณ ์ปค๋ฐ ํ๋กํ ์ฝ(Two-Phase Commit Protocol), Prepare transaction](/images/posts/68/img.png)
![[PostgreSQL] ํธ๋์ญ์
(Transaction)์ ์๋์๋ฆฌ](/images/posts/67/img.png)