์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- t์ฝ๋
- Function Module
- modify
- ๋ชจ๋ํ
- ์คํธ๋ญ์ฒ
- ๋๋น์ฐ์ ํ์
- SAP
- screen program
- structure
- ์ด๋ถํ์
- ์๊ณ ๋ฆฌ์ฆ
- abap dictionary
- tasknumber
- subscreen
- ์ค๋ฒ2
- Import
- select
- Internal Table
- screen
- Export
- ๋ฐฑ์ค
- ๋จ๋ฐฉํฅํ์
- call function
- ์๋ฐฉํฅํ์
- qas
- ABAP
- PRD
- ๊น์ด์ฐ์ ํ์
- ์ค๋ฒ3
- dev
- Today
- Total
CS Student’s SAP&Tech Journey๐ซ
[SAP] ABAP ๋์ ๋๋ฆฌ(Dictionary) (6) ํ ์ด๋ธ ์ฑ๋ฅ ์ต์ ํ - ํค ํ๋ / ์ธ๋ฑ์ค / ๋ฒํผ๋ง ํ์ฉํ๊ธฐ ๋ณธ๋ฌธ
[SAP] ABAP ๋์ ๋๋ฆฌ(Dictionary) (6) ํ ์ด๋ธ ์ฑ๋ฅ ์ต์ ํ - ํค ํ๋ / ์ธ๋ฑ์ค / ๋ฒํผ๋ง ํ์ฉํ๊ธฐ
์ธํฌ๋งํฑ 2025. 2. 14. 21:03SAP ์์คํ ์์ ๋๋์ ๋ฐ์ดํฐ๋ฅผ ๋ค๋ฃฐ ๋ ์ฑ๋ฅ ์ต์ ํ๋ ๋งค์ฐ ์ค์ํฉ๋๋ค. ์ ์ค๊ณ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ตฌ์กฐ์ ์ต์ ํ๋ ๊ฒ์ ๊ธฐ๋ฒ์ ํ์ฉํ๋ฉด ๋ฐ์ดํฐ ์ฒ๋ฆฌ ์๋๋ฅผ ํ๊ธฐ์ ์ผ๋ก ๊ฐ์ ํ ์ ์์ต๋๋ค.
๋ณธ ๊ธ์์๋ ABAP Dictionary์์ ํ ์ด๋ธ์ ๊ฒ์ ์ฑ๋ฅ์ ํฅ์์ํค๋ ๋ฐฉ๋ฒ์ ๋ค๋ฃน๋๋ค. ํค ํ๋ ํ์ฉ, ์ธ๋ฑ์ค ์ค์ , ๋ฒํผ๋ง ๊ธฐ๋ฒ ๋ฑ์ ์ ์ฉํ์ฌ ๋ณด๋ค ๋น ๋ฅธ ๋ฐ์ดํฐ ๊ฒ์์ด ๊ฐ๋ฅํ๋๋ก ์ต์ ํํ๋ ๋ฐฉ๋ฒ์ ์ดํด๋ณด๊ฒ ์ต๋๋ค.
ABAP ๋์ ๋๋ฆฌ(Dictionary) ํ ์ด๋ธ ์์ฑํ๊ธฐ์ ๊ด๋ จ๋ ํฌ์คํ ๋ณด๋ฌ๊ฐ๊ธฐ โฌ๏ธ
[ABAP] ABAP ๋์ ๋๋ฆฌ(Dictionary) (5) ๊ฐ์ฒด ์์ฑ - ๋ฐ์ดํฐ ๋ฒ ์ด์ค(DB) ํ ์ด๋ธ ์์ฑํ๊ธฐ
SAP ์์คํ ์์ ๋ฐ์ดํฐ๋ฅผ ํจ๊ณผ์ ์ผ๋ก ๊ด๋ฆฌํ๋ ค๋ฉด ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ฐ์ฒด๋ฅผ ์ ํํ๊ฒ ์ค๊ณํ๋ ๊ฒ์ด ์ค์ํฉ๋๋ค. ABAP Dictionary์์๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค ํ ์ด๋ธ(DB Table)์ ์ ์ํ์ฌ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๊ณ , ์ด
informatik.tistory.com
1๏ธโฃ ํค ํ๋๋ฅผ ํ์ฉํ ๊ฒ์ ์ต์ ํ
ํ ์ด๋ธ์์ ๋ฐ์ดํฐ๋ฅผ ๊ฒ์ํ ๋ ํค ํ๋(KEY Field)๋ฅผ ์ฌ์ฉํ๋ฉด ์๋์ผ๋ก ์ด๋ถ ๊ฒ์(Binary Search)์ด ์ํ๋ฉ๋๋ค.
SELECT * FROM zstudent_07 WHERE stdnr = '12345678'. " ํค ํ๋ ๊ฒ์ (์ด๋ถ ๊ฒ์ O)"
SELECT * FROM zstudent_07 WHERE stdbirth = '20250214'. " ํค ํ๋๊ฐ ์๋ (์ด๋ถ ๊ฒ์ X)"
- ํค ํ๋(STDNR) ๊ธฐ๋ฐ ๊ฒ์์ ์ด๋ถ ๊ฒ์์ ์ํํ์ฌ ๋น ๋ฅด๊ฒ ๊ฒ์ ๊ฐ๋ฅ
- ์ผ๋ฐ ํ๋(STDBIRTH) ๊ฒ์์ ์ ์ฒด ํ ์ด๋ธ์ ํ์(Full Table Scan)ํ๋ฏ๋ก ์๋๊ฐ ๋๋ฆผ
2๏ธโฃ ์ธ๋ฑ์ค(Index) ํ์ฉ
์ธ๋ฑ์ค(Index)๋ฅผ ํ์ฉํ๋ฉด ํค ํ๋๊ฐ ์๋ ๋ฐ์ดํฐ๋ ๋น ๋ฅด๊ฒ ๊ฒ์ ๊ฐ๋ฅํฉ๋๋ค.
โ ์ธ๋ฑ์ค๋ฅผ ์ค์ ํ๋ฉด ์ผ๋ฐ ํ๋๋ ์ด๋ถ ๊ฒ์ ๊ฐ๋ฅํฉ๋๋ค.
- ์๋ฅผ ๋ค์ด, BIRTH ํ๋๋ฅผ ์์ฃผ ์กฐํํ๋ค๋ฉด ์ธ๋ฑ์ค๋ฅผ ์์ฑํ์ฌ ๊ฒ์ ์๋๋ฅผ ๊ฐ์ ๊ฐ๋ฅ
- ์ธ๋ฑ์ค ํ์ธ ๋ฐฉ๋ฒ: SE11 → ํ ์ด๋ธ ์ ํ → Index ํญ → ๋๋ธ ํด๋ฆญํ์ฌ ํ์ธ
โ ์ธ๋ฑ์ค ์์ฑ ๋ฐฉ๋ฒ
- Create INDEX: ์ง์ ๋ง๋ ํ ์ด๋ธ(ZSTUDENT_07)์ ์ธ๋ฑ์ค๋ฅผ ์ถ๊ฐํ๋ ๊ฒฝ์ฐ, ํญ์ Z์ Y๋ก ์์
- Create Extension INDEX: SAP ํ์ค ํ ์ด๋ธ์ ์ธ๋ฑ์ค๋ฅผ ์ถ๊ฐํ๋ ๊ฒฝ์ฐ
โ ์ธ๋ฑ์ค ์ข ๋ฅ
- Primary Index: ํค ํ๋๋ก ์๋ ์์ฑ๋๋ ๊ธฐ๋ณธ ์ธ๋ฑ์ค
- Secondary Index: ์์์ ์ผ๋ก ์์ฑํ๋ ์ธ๋ฑ์ค (์: ์๋ ์์ผ ํ๋์ ์ธ๋ฑ์ค ์ถ๊ฐ)
CREATE INDEX zidx_birth ON zstudent_07 (stdbirth).
3๏ธโฃ ํ ์ด๋ธ ๋ฒํผ๋ง(Buffering) ํ์ฉ
๋ฒํผ๋ง์ ์ฌ์ฉํ๋ฉด ๋ฐ์ดํฐ๋ฒ ์ด์ค(DB)๋ก ์ ๊ทผํ์ง ์๊ณ , ๋ฉ๋ชจ๋ฆฌ์์ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ ธ์ ์๋๋ฅผ ํฅ์์ํฌ ์ ์์ต๋๋ค.
โ ๋ฒํผ๋ง์ ํ์ฑํํ๋ฉด DB ๋๋น 100๋ฐฐ ์๋ ํฅ์ ๊ฐ๋ฅ
โ ๋จ, ๋ฒํผ ํฌ๊ธฐ๊ฐ ์ ํ์ ์ด๋ฏ๋ก ์ ์ ํ ์ค์ ์ด ํ์
๐ ๋ฒํผ๋ง ์ข ๋ฅ
- Full Buffering (์ ์ฒด ๋ฒํผ๋ง)
- ํ ์ด๋ธ์ ๋ชจ๋ ๋ฐ์ดํฐ๋ฅผ ํ ๋ฒ์ ๋ฉ๋ชจ๋ฆฌ์ ๋ก๋
- ์์ ํฌ๊ธฐ์ ํ ์ด๋ธ์์๋ง ์ฌ์ฉ ๊ฐ๋ฅ (32KB ์ดํ)
- Generic Buffering (๋ถ๋ถ ๋ฒํผ๋ง)
- ํน์ ํค ๊ฐ์ ๊ธฐ์ค์ผ๋ก ์ผ๋ถ ๋ฐ์ดํฐ๋ฅผ ๋ฒํผ๋ง
- ํ ์ด๋ธ์ ์ง๋ฉ๋ฆญ ํค๊ฐ 2๋ก ์ค์ ๋์ด์๋ ์ํ์ด๋ฉด, ๊ฒ์ ์กฐ๊ฑด์ ํด๋นํ๋ ๋ฐ์ดํฐ๋ฅผ ์ฐพ๊ณ ํด๋นํ๋ ๋ฐ์ดํฐ์ ์ 2๊ฐ ํ๋๊ฐ ๊ฐ์ ๋ฐ์ดํฐ๋ค์ด ๋ฒํผ์ ์ ์ฅ๋ฉ๋๋ค.
- ์: ์ง๋ฉ๋ฆญ ํค(Generic Key) = ํค ํ๋ ๊ฐ์ - 1
- Single Record Buffering (๋จ์ผ ๋ ์ฝ๋ ๋ฒํผ๋ง)
- ํน์ ํ ๊ฑด์ ๋ฐ์ดํฐ๋ฅผ ์บ์ฑ
- SELECT SINGLE * ์ฟผ๋ฆฌ๋ฅผ ์ฌ์ฉํ ๋๋ง ์ ์ฉ ๊ฐ๋ฅ
โ ๋ฒํผ๋ง ์ค์ ๋ฐฉ๋ฒ
- SE11 → ํ ์ด๋ธ ์ ํ → Technical Settings → Buffering ์ต์ ์ค์
- buffering allowed but switched off → ์ค์ ํ์ง๋ง ๋์ ์ ํจ (ํ์ฑํ ํ์)
โ ZSTUDENT_07 ํ ์ด๋ธ ๋ฒํผ๋ง ์์
- Generic Buffering ์ฌ์ฉ ๊ฐ๋ฅ (์ง๋ฉ๋ฆญ ํค ๊ฐ์ 1๋ก ์ค์ ํด์ผ ํจ)
- Full Buffering์ ํ ์ด๋ธ์ด ํฌ๊ธฐ ๋๋ฌธ์ ์ฌ์ฉ ๋ถ๊ฐ๋ฅ
4๏ธโฃ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ตํฐ๋ง์ด์ (Database Optimizer)
ABAP์์ ์ฟผ๋ฆฌ๋ฅผ ์คํํ๋ฉด ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ตํฐ๋ง์ด์ ๊ฐ ๊ฐ์ฅ ์ ์ ํ ๊ฒ์ ๋ฐฉ๋ฒ(ํค ๊ฒ์, ์ธ๋ฑ์ค, ๋ฒํผ๋ง ๋ฑ)์ ๊ฒฐ์ ํฉ๋๋ค.
โ ๋ฐ์ดํฐ ๊ฒ์ ์ต์ ํ ๊ณผ์
- ํค ํ๋ ๊ฒ์ → ์๋์ผ๋ก ์ด๋ถ ๊ฒ์ ์ํ
- ์ธ๋ฑ์ค ๊ฒ์ → ๋น-ํค ํ๋๋ ๋น ๋ฅด๊ฒ ์กฐํ ๊ฐ๋ฅ
- ๋ฒํผ๋ง ์ฌ์ฉ → DB ์ ๊ทผ ์์ด ๋ฉ๋ชจ๋ฆฌ์์ ๊ฐ์ ธ์ค๊ธฐ
๐ก ์ฆ, ABAP์์ ๊ฒ์ํ ๋ ์ตํฐ๋ง์ด์ ๊ฐ ์ต์ ์ ๋ฐฉ๋ฒ์ ์ ํํ์ฌ ์คํํฉ๋๋ค.