execution-path-of-query
Last updated
Last updated
์ฟผ๋ฆฌ ๋ฌธ์ฅ ๋ฌธ๋ฒ(Syntax) ํ์ธ
์ฟผ๋ฆฌ ๋ฌธ์ฅ์ ์ ์ ํ ํ ํฐ์ผ๋ก ๋๋ ์ ํธ๋ฆฌ ํํ๋ก ๋ง๋ฌ.
์ด๋ ์์ฑ๋๋ ํธ๋ฆฌ๋ >
, <
, =
๋ฑ์ ๊ธฐํธ๋ SQL ํค์๋๋ก ๋ถ๋ฆฌ๋จ.
์ด๋ฌํ ํธ๋ฆฌ ์์ฑํ ๋, ํ๋นํ์ง, ์ ์ ํ ์์น์ ์๋ ํ์ธํจ.
Parser
๊ฐ ์์ฑํ tree์ ๋ํด ํ์๋ ํ ์ ์๋ ์ถ๊ฐ์ ์ธ semantics๋ฅผ ํ์ธํจ.
์๋ฅผ ๋ค๋ฉด ํ ์ด๋ธ์ด๋ ์ปฌ๋ผ์ด ์กด์ฌํ๋ ์ง ํ์ธ
names
๋ aliases
๊ฐ ์ ๋งค๋ชจํธํ๊ฒ ์ ์ธ๋์ด์์ง ์์์ง ํ์ธ
๊ทธ๋ฆฌ๊ณ privileges(์๋ง๋ ๊ถํ ์ฌ๋ถ, ์ฟผ๋ฆฌ ์คํ์ด ๊ฐ๋ฅํ์ง ์ฌ๋ถ์ธ๋ฏ.) ๊ฐ ์๋์ง ํ์ธ
์ฌ๊ธฐ๊น์ง ์์ผ๋ฉด ์ฟผ๋ฆฌ๋ ์คํ ๊ฐ๋ฅํ๋ค๊ณ ๋ด.
์ด์ ์ฟผ๋ฆฌ ์คํ ๊ณํ(query execution plan) ์ ํ๋จํจ.
์ตํฐ๋ง์ด์ ๊ฐ ํ๋ ๊ฑด ์ด ์ฟผ๋ฆฌ๋ฅผ ์คํํ๊ธฐ ์ํ best option์ ๋ฌด์์ธ์ง ํ์ธํ๋ ๊ฒ.
10.499000
๋ ์ซ์๋ 10 random data page๋ฅผ ์ฝ์ด์ผํ๋ค๋ ์๋ฏธ.
https://shashwat-creator.medium.com/mysqls-logical-architecture-1-eaaa1f63ec2f
https://github.com/alstjgg/cs-study/blob/main/%EB%8D%B0%EC%9D%B4%ED%84%B0%EB%B2%A0%EC%9D%B4%EC%8A%A4/SQL%ED%8A%9C%EB%8B%9D%201%20-%20%EA%B8%B0%EB%B3%B8%EC%9A%A9%EC%96%B4.md
mysql ์ cost-based optimizer๋ฅผ ์ฌ์ฉํ๋๋ฐ ์ด ์ด์ผ๊ธฐ๋ ์ฌ๋ฌ๊ฐ์ ์คํ๊ณํ ์ค์์ ๊ฐ์ฅ ๋น์ฉ์ด ์ ๊ฒ ๋๋ ์คํ ๊ณํ์ ์ ํํ๋ค๋ ๊ฒ.