ORACLE/Tunning4 [Oracle] ์กฐ์ธ์ ์ข ๋ฅ - Nested,Sorted,Hash Join RDBMS์์๋ ์ ๊ทํ์ ์ํด ์ฐ๊ด๋ ๋ฐ์ดํฐ๋ฅผ ์ฌ๋ฌ๊ฐ์ ํ ์ด๋ธ๋ก ๋๋๊ฒ ๋ฉ๋๋ค. ๊ทธ๋์ ์ํ๋ ํ์์ ๋ฐ์ดํฐ๋ฅผ ๋ฐ์์ค๊ธฐ ์ํด ์ฌ๋ฌ๊ฐ์ ํ ์ด๋ธ์ ์ฐ๊ฒฐํ์ฌ ์ฌ์ฉํ๋๋ฐ ์ด๋ฅผ Join์ ํตํด์ ํ ์ ์์ต๋๋ค. Join์์ ์ ํ ๋๋ ์ตํฐ๋ง์ด์ ๋ ์ด๋ค ๋ฐฉ์์ผ๋ก ์กฐ์ธ์ ํ ์ง ์คํ๊ณํ์ ์ธ์ฐ๊ฒ ๋ฉ๋๋ค. ์ด๋ฒ ๊ธ์์๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ด๋ถ์ ์ผ๋ก ์ด๋ป๊ฒ ์กฐ์ธ์ ํ๋์ง ์๋ 3๊ฐ์ง ๋ฐฉ์์ ๋ํด์ ์์๋ณด๊ฒ ์ต๋๋ค. Nested Loop Join Sorted Merge Join Hash Join ์ค์ตํ๊ฒฝ OS : Red Hat Enterprise Linux Server release 6.10 DB : Oracle 11.2.0.1 SID : orcl user : jamong ํ ์ด๋ธ ๊ตฌ์กฐ SYS@orcl> create tab.. 2020. 10. 7. [Oracle] Index ํ์ ๋ฐฉ์ - Unique,Range,Full,Fast,Skip Index ์ธ๋ฑ์ค๋ ํ ์ด๋ธ์ ๋ํ ๋์ ์๋๋ฅผ ๋ํ๊ธฐ ์ํด ์ฌ์ฉ๋๋ ์ค๋ธ์ ํธ์ ๋๋ค. ์ ๋ ฌ๋ ์ํ๋ก ๋ฐ์ดํฐ๊ฐ ์ ์ฅ๋์ด ๋น ๋ฅธ ์๋๋ก ์ํ๋ ๋ฐ์ดํฐ์ ์ ๊ทผํ ์ ์์ต๋๋ค. ํ์ง๋ง, ์ธ๋ฑ์ค๋ฅผ ์ฌ์ฉํ๋ค๊ณ ํด์ ๋ฌด์กฐ๊ฑด ์๋๊ฐ ๋น ๋ฅธ ๊ฒ์ ์๋๋๋ค. ํ ์ด๋ธ์ ์ ์ฒด ๋ฐ์ดํฐ๋ฅผ ์ถ๋ ฅํ๋ ๊ฒฝ์ฐ์๋ ์ธ๋ฑ์ค์ ํ์๋ณด๋ค๋ ํ ์ด๋ธ์ ์ ์ฒด ํ์ํ๋๊ฒ์ด ๋น ๋ฆ ๋๋ค. ๊ทธ๋์ ์ฃผ๋ก ํ์ํ๋ ๋ฐ์ดํฐ๊ฐ ๋ง์๋ฐ ๋ฐํ๋๋ ๋ฐ์ดํฐ๊ฐ ์ ์ ๊ฒฝ์ฐ ์ธ๋ฑ์ค๋ฅผ ์ฌ์ฉํ๊ฒ ๋ฉ๋๋ค. ์ด๋ฐ ์ธ๋ฑ์ค๋ฅผ ์ฌ์ฉํ ๋ ์ตํฐ๋ง์ด์ ๋ ๊ฐ์ ์ต์ ํ๋ ๋ฐฉ๋ฒ์ผ๋ก ํ์์ ํฉ๋๋ค. ์ธ๋ฑ์ค์๋ ์๋์ ํ์ ๋ฐฉ์์ด ์๊ณ ํ๋์ฉ ์ดํด๋ณด๋๋ก ํ๊ฒ ์ต๋๋ค. Index Unique Scan Index Range Scan Index Full Scan Index Fast Full Scan Index Sk.. 2020. 10. 5. [Oracle] ์คํ๊ณํ ํ์ธ ๋ฐฉ๋ฒ XPLAN, AutoTrace, SQL Trace ์คํ๊ณํ ์๊ณ ๋ฆฌ์ฆ ๋ฌธ์ ํ๋๋ฅผ ๋ ์ฌ๋ ค๋ด ์๋ค. ๋ฌธ์ ๋ฅผ ์ฝ๊ณ ์ด๋ค ๋ฐฉ์์ผ๋ก ํ์ด์ผ ์ ํ๋์ ํจ์จ์ฑ์ ์ก์ ์ ์์์ง ๊ณ ๋ฏผํฉ๋๋ค. ์์ ํ์์ ํด์ผํ๋์ง, ์ด๋ถํ์ผ๋ก ์๊ฐ๋ณต์ก๋๋ฅผ ์ค์ผ ์ ์๋์ง, ํน์ ์๋ฃ๊ตฌ์กฐ๋ฅผ ์ด๋ค ๊ฒ์ ์ ํํด์ผํ๋์ง ๋ฑ ์ฌ๋ฌ ๊ณ ๋ฏผ์ ํ๊ณ ์ต์ ์ด๋ผ๊ณ ์๊ฐํ๋ ๋ฐฉ๋ฒ์ ์ ํํฉ๋๋ค. ์คํ๊ณํ๋ ์๊ณ ๋ฆฌ์ฆ ๋ฌธ์ ๋ฅผ ํธ๋ ๊ณผ์ ๊ณผ ๋น์ทํฉ๋๋ค. ์ตํฐ๋ง์ด์ ๊ฐ ์ด๋ค ๋ฐฉ์์ผ๋ก ์ฟผ๋ฆฌ๋ฅผ ์คํํด์ผ ๋น ๋ฅธ์๋๋ก ๊ฒฐ๊ณผ๋ฅผ ๋ฐํํ ์ ์๋์ง ๊ณ ๋ คํ์ฌ ๊ฒฐ๊ณผ๋ฅผ ์ป๊ธฐ๊น์ง์ ๊ณผ์ ์ ์๋ ค์ค๋๋ค. ์ฐ๋ฆฌ๋ ์ด๋ฌํ ์คํ๊ณํ์ ํ์ธํ๋ฉด์ SQL ์ฟผ๋ฆฌ๋ฌธ์ด ํจ์จ์ ์ผ๋ก ์ฌ์ฉ๋๊ณ ์๋์ง ํ์ธํ ์ ์์ต๋๋ค. ๋ฐ์ดํฐ๊ฐ ๋๋์ผ๋ก ๋์ด๋๋ฉด์ ํนํ ์๋๊ฐ ์ค์ํ ์์๊ฐ ๋์์ต๋๋ค. ๊ฐ๋จํ ํ๋์ ํตํด์๋ ์์ฒญ๋ ํจ์จ์ ์ป์ ์ ์๊ธฐ ๋๋ฌธ์ ํ๋์ ๊ธฐ๋ณธ์ธ ์ค.. 2020. 10. 4. [Oracle] ON์ ๊ณผ WHERE์ ์กฐ๊ฑด ์ฐจ์ด, JOIN ๋์ ์ฐจ์ด ON์ ๊ณผ WHERE์ ์ฐจ์ด ์กฐ์ธ๋ฌธ์ ์ฌ์ฉํ ๋ ON์ ์ ์ด์ฉํด์ ํด๋น ์กฐ๊ฑด์ผ๋ก ํ ์ด๋ธ ์กฐ์ธ์ ํ๊ฒ๋ฉ๋๋ค. ๊ทธ๋ฐ๋ฐ JOIN์ ํ๊ธฐ ์ํด ON์ ์ด ์๋ WHERE์ ์ ์ฌ์ฉํ ๋๋ ์์ต๋๋ค. ๊ฐ์ ๋ด์ฉ๊ฐ์ง๋ง ํ์คํ ๋๊ฐ์ง ์ ์ ์ฐจ์ด๋ ์์ต๋๋ค. ์ด๋ฒ ๊ธ์์๋ ON์ ๊ณผ WHERE์ ์ ์ฐจ์ด์ ์ด๋ค ์ํฉ์์ ๊ฐ๊ฐ ์ฌ์ฉํด์ผํ๋์ง ์์๋ณด๋๋ก ํ๊ฒ ์ต๋๋ค. SQL๋ฌธ ์์ ON JOIN ์ ์ด ์ถ๊ฐ๋ SQL๋ฌธ์ ์์๋ FROM ์ ๋ค์์ผ๋ก ์งํํฉ๋๋ค. ์ฆ ON์ ์ WHERE์ ๋ณด๋ค ์์์์ผ๋ก ๋ ๋น ๋ฆ ๋๋ค. ๊ทธ๋ผ ์ด๊ฒ ์ค์ ์ฟผ๋ฆฌ๋ฅผ ์คํํ์ ๋ ์ด๋ค ์ฐจ์ด๊ฐ ์๋์ง ํ์ธํด๋ณด๊ฒ ์ต๋๋ค. WHERE์ ON์ ์ค์ต OS : Red Hat Enterprise Linux Server release 6.3 DB : Oracle 12.1.0.2 u.. 2020. 8. 9. ์ด์ 1 ๋ค์