1. ๋ฌธ์„œ์˜ ๋ชฉ์ 

์ด ๋ฌธ์„œ๋Š” 2016๋…„ S๊ณ ๊ฐ์‚ฌ ERP ํ”„๋กœ์ ํŠธ์—์„œ ์ˆ˜ํ–‰ํ•œ ์ฃผ์š” ์„ฑ๋Šฅ ๊ฐœ์„  ํ™œ๋™ ๋‚ด์šฉ์— ๋Œ€ํ•ด ๊ธฐ์ˆ ํ•˜์˜€๋‹ค.
๋‹น์‹œ S๊ณ ๊ฐ์‚ฌ ERP ํ”„๋กœ์ ํŠธ๋Š” pureScale ํ™˜๊ฒฝ์„ ์ฒ˜์Œ์œผ๋กœ ์‚ฌ์šฉํ•˜๋ฉด์„œ Migration ์„ฑ๋Šฅ ์ด์Šˆ๋กœ ํฐ ์–ด๋ ค์›€์„ ๊ฒช๊ณ  ์žˆ์—ˆ๋‹ค. ์ˆ˜๊ฐœ์›” ๊ฐ„์˜ ๋…ธ๋ ฅ ๋์— ์„ฑ๋Šฅ ์ด์Šˆ๋ฅผ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐฉ์•ˆ์„ ์ฐพ์•„๋‚ด์—ˆ๊ณ , ๊ทธ ๋‚ด์šฉ์„ ๋ณธ ๋ฌธ์„œ๋กœ ์ •๋ฆฌํ•˜์˜€๋‹ค.
ํ–ฅํ›„ ๋น„์Šทํ•œ DB2 purescale ํ™˜๊ฒฝ์—์„œ ์„ฑ๋Šฅ ์ €ํ•˜ ๋“ฑ์˜ ์ด์Šˆ ๋ฐœ์ƒ ์‹œ ์ด ๋ฌธ์„œ์˜ ๋‚ด์šฉ์„ ํ†ตํ•ด ์„ฑ๋Šฅ ์ด์Šˆ๋ฅผ ์กฐ๊ธฐ์— ํ•ด๊ฒฐํ•˜์—ฌ ์‹œ์Šคํ…œ์˜ ์•ˆ์ •์  ์šด์˜์— ๋„์›€์ด ๋˜๋Š” ๊ฒƒ์ด ์ด ๋ฌธ์„œ์˜ ๋ชฉ์ ์ด๋‹ค.

๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ˆœ์„œ๋กœ 3ํšŒ์— ๊ฑธ์ณ SAP on DB2 pureScale ํ™˜๊ฒฝ์—์„œ DB ์„ฑ๋Šฅ ๊ฐœ์„ ์„ ์œ„ํ•œ ์‚ฌ๋ก€๋ฅผ ๊ณต์œ ํ•˜๊ณ ์ž ํ•œ๋‹ค.

1) DB2 purescale ์„ฑ๋Šฅ ๊ฐœ์„  ์‚ฌ๋ก€ ๊ณต์œ  – 1. ํ…Œ์ด๋ธ” ํŒŒํ‹ฐ์…˜

2) DB2 purescale ์„ฑ๋Šฅ ๊ฐœ์„  ์‚ฌ๋ก€ ๊ณต์œ  – 2. LOB Inline, Extent Size, Append Mode

3) DB2 purescale ์„ฑ๋Šฅ ๊ฐœ์„  ์‚ฌ๋ก€ ๊ณต์œ  – 3. CF ์„ฑ๋Šฅ๊ฐœ์„ , ์œ ํ‹ธ๋ฆฌํ‹ฐ

 

2. DB ์„ฑ๋Šฅ ๊ฐœ์„ 

Migration ์ž‘์—… ์‹œ ์„ฑ๋Šฅ ํ–ฅ์ƒ์„ ์œ„ํ•ด pureScale ์˜ 2๊ฐœ ๋ฉค๋ฒ„๋ฅผ ๋ชจ๋‘ ์‚ฌ์šฉํ•˜๋ฉด์„œ ์ž‘์—…์˜ ๋ณ‘๋ ฌ๋„๋ฅผ ๋†’์—ฌ ์ˆ˜ํ–‰ํ•˜๋Š” ๊ฒฝ์šฐ, ์—ฌ๋Ÿฌ ํ…Œ์ด๋ธ”์—์„œ Insert / Merge ๋ฌธ์žฅ์— ๋Œ€ํ•œ ์„ฑ๋Šฅ ์ €ํ•˜๊ฐ€ ๋ฐœ์ƒํ•˜์˜€๋‹ค. ์ด๋Ÿฌํ•œ ์„ฑ๋Šฅ ์ด์Šˆ์˜ ํ™•์ธ ๋ฐ ํ•ด๊ฒฐ์ฑ…์œผ๋กœ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ธฐ๋ฒ•๋“ค์„ ํ™œ์šฉํ•˜์˜€๋‹ค.

 

2.2. Lob Inline

LOB ๋ฐ์ดํ„ฐ์˜ ๊ฒฝ์šฐ ํ…Œ์ด๋ธ”์—๋Š” LOB descriptor ๋งŒ ์ €์žฅ๋˜๊ณ  ๋ฐ์ดํ„ฐ๋Š” LOB descriptor ๊ฐ€ ์ง€์ •ํ•˜๋Š” ์žฅ์†Œ์— ์ €์žฅ๋œ๋‹ค. ์ด๋Ÿฌํ•œ LOB ๋ฐ์ดํ„ฐ๋Š” direct write / read ๊ฐ€ ๋ฐœ์ƒํ•˜์—ฌ ์„ฑ๋Šฅ ์ €ํ•˜์˜ ์›์ธ์ด ๋œ๋‹ค. LOB ๋ฐ์ดํ„ฐ๊ฐ€ ํฌ์ง€ ์•Š์€ ๊ฒฝ์šฐ inline length ๋ฅผ ์ง€์ •ํ•˜์—ฌ ๋ณ„๋„์˜ ๊ณต๊ฐ„์ด ์•„๋‹Œ ํ…Œ์ด๋ธ” ๊ณต๊ฐ„์— ์ €์žฅํ•  ์ˆ˜ ์žˆ๋‹ค. ์ด๋Ÿฌํ•œ ๊ฒฝ์šฐ ์ผ๋ฐ˜ ๋ฐ์ดํ„ฐ์™€ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ๋ฒ„ํผํ’€์„ ์ด์šฉํ•œ ๋น„๋™๊ธฐ ๋ฐฉ์‹์˜ I/O ๊ฐ€ ์‚ฌ์šฉ๋˜๋ฏ€๋กœ ์„ฑ๋Šฅ ์ €ํ•˜ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๋‹ค. ๋‹จ, DB2 ์—์„œ ์ œ๊ณตํ•˜๋Š” ์ตœ๋Œ€ page size ๊ฐ€ 32K ์ด๊ธฐ ๋•Œ๋ฌธ์— LOB ์— ์ €์žฅ๋˜๋Š” ๋ฐ์ดํ„ฐ ํฌ๊ธฐ๋ฅผ ๊ณ ๋ คํ•˜์—ฌ INLINE ์ ์šฉ ์—ฌ๋ถ€๋ฅผ ๊ฒฐ์ •ํ•ด์•ผ ํ•œ๋‹ค.

 

<๊ทธ๋ฆผ 2-1 LOB descriptor ๊ฐ€ LOB ๋ฐ์ดํ„ฐ๋ฅผ ์ง€์ • (์ถœ์ฒ˜: DB2 Knowledge center)>

 

 

<๊ทธ๋ฆผ 2-2 ํ…Œ์ด๋ธ”์— ํฌํ•จ๋œ ์ž‘์€ ํฌ๊ธฐ์˜ LOB (์ถœ์ฒ˜: DB2 Knowledge center)>

 

Inline length ๋Š” ์ตœ์ดˆ ํ…Œ์ด๋ธ” ์ƒ์„ฑ ์‹œ ์ง€์ •ํ•˜๊ฑฐ๋‚˜, alter table ๋ช…๋ น์„ ์ด์šฉํ•˜์—ฌ ์ง€์ •ํ•  ์ˆ˜ ์žˆ๋‹ค. ํ…Œ์ด๋ธ”์— ๋ฐ์ดํ„ฐ๊ฐ€ ์ด๋ฏธ ์กด์žฌํ•˜๋Š” ์ƒํƒœ์—์„œ inline length ๋ฅผ ์ง€์ •ํ•˜๋Š” ๊ฒฝ์šฐ LOB ๋ฐ์ดํ„ฐ๋ฅผ ํ…Œ์ด๋ธ” ๊ณต๊ฐ„์— ์ €์žฅํ•˜๊ธฐ ์œ„ํ•ด offline reorg ๋ฅผ ์ˆ˜ํ–‰ํ•˜์—ฌ์•ผ ํ•œ๋‹ค.

 

# LOB ์ปฌ๋Ÿผ์— inline length ์ ์šฉ DDL

CREATE TABLE โ€œ์Šคํ‚ค๋งˆย  โ€œ.โ€ํ…Œ์ด๋ธ”๋ช…โ€ย ย  (

โ€ฆโ€ฆ

โ€œITEMS_Tโ€ BLOB(1G) INLINE LENGTH 14000 LOGGED NOT COMPACT NOT NULL,

โ€ฆโ€ฆ

<๊ทธ๋ฆผ 2-3. LOB INLINE ์ง€์ • DDL ์˜ˆ์ œ>

 

Inline length ์˜ต์…˜์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ ํ…Œ์ด๋ธ” ๋‚ด LOB ๋ฐ์ดํ„ฐ์˜ 90% ์ด์ƒ์ด inline ๋˜๋„๋ก ํ•˜๋Š” ๊ฒƒ์ด ์„ฑ๋Šฅ์ƒ ์˜๋ฏธ๊ฐ€ ์žˆ๋‹ค. admin_is_inlined ํ•จ์ˆ˜๋ฅผ ์ด์šฉํ•˜๋ฉด ํ•ด๋‹น ๋ฐ์ดํ„ฐ๊ฐ€ INLINE ๋˜์–ด ์žˆ๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ๊ณ , admin_est_inline_length ํ•จ์ˆ˜๋ฅผ ์ด์šฉํ•˜๋ฉด ์ธ๋ผ์ธ ๋˜๋Š”๋ฐ ํ•„์š”ํ•œ length ๋ฅผ ์•Œ ์ˆ˜ ์žˆ๋‹ค.

 

# ์ „์ฒด row ์ค‘ inline ๋˜์–ด ์žˆ๋Š” ๋น„์œจ ๊ณ„์‚ฐ ์ฟผ๋ฆฌ

SELECTย  DECIMAL ( FLOAT(sum(admin_is_inlined(string_tt)) over()) /

ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย  FLOAT(count(1) over()) * 100, 5,2) AS pct_inlined, — inline ๋˜์–ด ์žˆ๋Š” ๋น„์œจ

ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย  SUM(admin_is_inlined(string_tt)) over() AS inlined_cnt, — inline ๋˜์–ด ์žˆ๋Š” row ์ˆ˜

ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย  count(1) over() AS tot_row_cnt โ€“ ํ…Œ์ด๋ธ” ์ „์ฒด row ์ˆ˜

ย ย  FROM ์Šคํ‚ค๋งˆ.”ํ…Œ์ด๋ธ”๋ช…”

FETCH FIRST 1 ROWS ONLY

WITH UR;

 

PCT_INLINED INLINED_CNT TOT_ROW_CNT

—————— ——————- ———————

ย ย ย ย ย ย ย ย ย  2.15ย ย  ย  ย  ย  ย  ย  ย ย  ย  ย  67937ย ย ย  ย  ย  ย  ย  ย  ย  ย ย  3159423

1 record(s) selected.

 

# admin_is_inlined, admin_est_inline_length ๋ฅผ ์ด์šฉํ•œ ๋ฐ์ดํ„ฐ ํ™•์ธ ์ฟผ๋ฆฌ

SELECT admin_is_inlined(string_tt) col1, ย — ์ธ๋ผ์ธ ์—ฌ๋ถ€(1: ์ธ๋ผ์ธ, 0: ์ธ๋ผ์ธ ๋˜์ง€ ์•Š์Œ)

ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย  admin_est_inline_length(string_tt) col2, — ์ธ๋ผ์ธ์‹œ ํ•„์š” ๊ธธ์ด(-1 ์€ ์ธ๋ผ์ธ ํ• ์ˆ˜ ์—†์Œ)

ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย  length(string_tt, OCTETS) col3 โ€“ ๋ฌธ์ž์—ด ๊ธธ์ด๋ฅผ ์‹ค์ œ bytes ๋กœ ํ‘œ์‹œ

ย ย  FROM ์Šคํ‚ค๋งˆ.”ํ…Œ์ด๋ธ”๋ช…”

FETCH FIRST 10 ROWS ONLY

WITH UR;

 

COL1ย ย  COL2ย ย ย ย ย ย ย  COL3

——- ——– ———–

ย ย ย ย  0ย ย ย ย ย ย ย ย ย  -1ย ย ย ย ย ย  32700

ย ย ย ย  0ย ย ย ย ย ย ย ย ย  -1ย ย ย ย ย ย  35508

ย ย ย ย  0ย ย ย ย ย ย ย ย ย  -1ย ย ย ย ย ย  35512

ย ย ย ย  1ย ย ย ย  2386ย ย ย ย ย ย ย  2382

ย ย ย ย  1ย ย ย ย  2386ย ย ย ย ย ย ย  2382

ย ย ย ย  0ย ย ย ย ย ย ย ย ย  -1ย ย ย ย ย ย  35512

ย ย ย ย  0ย ย ย ย ย ย ย ย ย  -1ย ย ย ย ย ย  35516

ย ย ย ย  0ย ย ย ย ย ย ย ย ย  -1ย ย ย ย ย ย  35516

ย ย ย ย  1ย ย ย ย  2386ย ย ย ย ย ย ย  2382

ย ย ย ย  1ย ย ย ย  2386ย ย ย ย ย ย ย  2382

10 record(s) selected.

<๊ทธ๋ฆผ 2-4. INLINE ํ˜„ํ™ฉ ์กฐํšŒ ์ฟผ๋ฆฌ ์˜ˆ์ œ>

 

INLINE ์— ํ•„์š”ํ•œ ๊ธธ์ด๋ฅผ ๊ณ„์‚ฐํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ์•„๋ž˜์˜ ํ”„๋กœ์‹œ์ €๋ฅผ ํ™œ์šฉํ•œ๋‹ค. ์ด ํ”„๋กœ์‹œ์ €๋Š” ํ…Œ์ด๋ธ” ์ „์ฒด LOB ์ปฌ๋Ÿผ์— ๋Œ€ํ•ด 5% ๋‹จ์œ„๋กœ bytes ์ˆ˜๋ฅผ ๊ณ„์‚ฐํ•˜์—ฌ ์ถœ๋ ฅํ•œ๋‹ค.

 

# ์ ์ • inline length ๋ฅผ ๊ณ„์‚ฐํ•˜๊ธฐ ์œ„ํ•œ ํ”„๋กœ์‹œ์ € DDL

CREATE OR REPLACE PROCEDURE profile_lob

(tabschema VARCHAR(128),

tabnameย ย  VARCHAR(128),

colnameย ย  VARCHAR(128))

BEGIN

DECLARE txtย  CLOB(128K) DEFAULT ”;

DECLARE res CURSOR WITH RETURN TO CLIENT FOR STMT;

SET txt =

‘SELECT MIN(len) AS “LENGTH(“”‘ || colname || ‘””)”, ‘ ||

‘ย ย ย ย ย ย  percentile ‘ ||

‘ ย  ย ย ย ย ย ย  FROM ‘ ||

‘(SELECT SMALLINT(TRUNCATE(DECFLOAT(ROW_NUMBER() OVER (ORDER BY LENGTH(“‘ || colname || ‘”) ‘ ||

‘ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย  ASC NULLS FIRST)) ‘ ||

‘ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย  * 200 / COUNT(*) OVER(), -1) / 2) AS percentile, ‘ ||

‘ย ย ย ย ย ย  LENGTH(“‘ || colname || ‘”,OCTETS) AS len ‘ ||

‘ย ย ย ย ย ย  FROM “‘ || tabschema || ‘”.”‘ || tabname || ‘”)’ ||

‘GROUP BY percentile ORDER BY percentile’;

PREPARE stmt FROM txt;

OPEN res;

END

@

# ํ”„๋กœ์‹œ์ € ์ˆ˜ํ–‰ ๊ฒฐ๊ณผ

LENGTH PERCENTILE

———– —————–

ย ย  2382ย  ย  ย  ย  ย  ย  ย  ย  ย  ย ย ย ย ย ย  0

ย  35512ย ย  ย  ย  ย  ย  ย  ย  ย  ย  ย ย ย ย ย  5

ย  35516ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย  10

ย  35516ย ย ย ย ย ย ย ย ย  ย ย ย ย ย ย ย ย ย ย ย ย  15

ย  35516ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย  20

ย  35516ย ย ย ย ย ย ย ย  ย ย ย ย ย ย ย ย ย ย ย ย  25

โ€ฆโ€ฆ

ย  35516ย ย ย ย ย ย ย ย  ย ย ย ย ย ย ย ย ย ย ย ย  70

ย  35516ย ย ย ย ย ย ย ย  ย ย ย ย ย ย ย ย ย ย ย ย  75

ย  35520ย ย ย ย ย ย ย ย  ย ย ย ย ย ย ย ย ย ย ย ย  80

ย  35520ย ย ย ย ย ย ย ย  ย ย ย ย ย ย ย ย ย ย ย ย  85

ย  35520ย ย ย ย ย ย ย ย  ย ย ย ย ย ย ย ย ย ย ย ย  90

ย  35520ย ย ย ย ย ย ย ย  ย ย ย ย ย ย ย ย ย ย ย ย  95

139180ย ย ย ย ย ย ย  ย ย ย ย ย ย ย ย ย ย  100

21 record(s) selected.

<๊ทธ๋ฆผ 2-5. INLINE ๊ธธ์ด ์‚ฐ์ • ํ”„๋กœ์‹œ์ € ์˜ˆ์ œ>

 

Inline length ๋ฅผ ๊ณ„์‚ฐํ•  ๋•Œ ์ปฌ๋Ÿผ์˜ ๋ฐ์ดํ„ฐ ์œ ํ˜•์— ๋”ฐ๋ผ character ์— ํ•„์š”ํ•œ byte ๊ฐ€ ์„œ๋กœ ๋‹ค๋ฅผ ์ˆ˜ ์žˆ๋‹ค. LOB / CLOB ๋“ฑ์€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค code set ์ธ UTF-8 ๋กœ ์ธ์ฝ”๋”ฉ ๋˜์–ด ์˜๋ฌธ 1 byte, ํ•œ๊ธ€ 3 bytes ๋ฅผ ์‚ฌ์šฉํ•˜๊ฒŒ ๋œ๋‹ค. DBCLOB ์€ DBCS(Double Byte Character Set) ๋ฐ์ดํ„ฐ ์œ ํ˜•์ด๋ฏ€๋กœ ๋””ํดํŠธ UTF-16 ์œผ๋กœ ์ธ์ฝ”๋”ฉ ๋˜๋ฉฐ, ์ด์— ๋”ฐ๋ผ ์˜๋ฌธ 2 bytes, ํ•œ๊ธ€ 2 bytes ๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค. Inline length ๋Š” byte ๊ธฐ์ค€์œผ๋กœ ๊ณ„์‚ฐํ•ด์•ผ ํ•˜๋ฏ€๋กœ ์ปฌ๋Ÿผ์˜ ๊ธธ์ด๋ฅผ ๊ตฌํ•  ๋•Œ๋Š” length(์ปฌ๋Ÿผ๋ช…, OCTETS) ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.

 

# VARCHAR ์™€ VARGRAPHIC ์‹ค์ œ bytes ๋น„๊ต

SELECT *

FROM (

SELECT 1 seq, ‘๊ฐ€’ col1 , HEX(VARCHAR(‘๊ฐ€’)) col2 , length(VARCHAR(‘๊ฐ€’) ,OCTETS) col3 FROM SYSIBM.SYSDUMMY1

UNION ALL

SELECT 2, ‘๊ฐ€’, HEX(VARGRAPHIC(‘๊ฐ€’)), length(VARGRAPHIC(‘๊ฐ€’) ,OCTETS) FROM SYSIBM.SYSDUMMY1

UNION ALL

SELECT 3, ‘A’, HEX(VARCHAR(‘A’)), length(VARCHAR(‘A’) ,OCTETS) FROM SYSIBM.SYSDUMMY1

UNION ALL

SELECT 4, ‘A’, HEX(VARGRAPHIC(‘A’)), length(VARGRAPHIC(‘A’), OCTETS) FROM SYSIBM.SYSDUMMY1

)

ORDER BY seq;

SEQย ย ย ย  COL1 ย ย COL2ย ย ย ย ย ย ย  COL3

———– —- ———— ———–

1 ๊ฐ€ย ย  EAB080ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย  3

2 ๊ฐ€ย ย  AC00ย ย ย ย ย ย ย ย  ย ย  ย ย ย ย ย ย ย ย ย ย ย  2

3 Aย ย ย  41ย ย ย ย ย ย  ย ย ย ย ย ย ย ย  ย  ย  ย ย ย ย ย ย ย ย ย ย  1

4 Aย ย ย  0041ย ย ย ย ย ย ย ย ย ย  ย  ย  ย ย ย ย ย ย ย ย ย  2

<๊ทธ๋ฆผ 2-6. VARCHAR vs. VARGRAPHIC ๊ฐ„ ๊ธธ์ด ๋น„๊ต>

 

์œ„ ์ฟผ๋ฆฌ์—์„œ ์˜ˆ๋ฅผ ๋“ค๋ฉด โ€œ๊ฐ€โ€ ๋Š” ์œ ๋‹ˆ์ฝ”๋“œ๋กœ U+AC00 ๋กœ ํ‘œ์‹œ๋œ๋‹ค. ์ด๋ฅผ UTF-8 ๋กœ ์ธ์ฝ”๋”ฉํ•˜๋ฉด EAB080 ์ด ๋˜๊ณ , UTF-16์œผ๋กœ ์ธ์ฝ”๋”ฉํ•˜๋ฉด AC00 ๊ฐ€ ๋œ๋‹ค. ์ด์— ๋”ฐ๋ผ DBCS ํ˜•ํƒœ์ธ VARGRAPHIC ๋ฐ์ดํ„ฐ ํƒ€์ž…์˜ ๊ฒฝ์šฐ ํ•œ๊ธ€/์˜๋ฌธ ๋ชจ๋‘ 2 bytes ๋ฅผ ์‚ฌ์šฉํ•˜๊ณ , VARCHAR ๋ฐ์ดํ„ฐ ํƒ€์ž…์˜ ๊ฒฝ์šฐ ํ•œ๊ธ€ 3 bytes, ์˜๋ฌธ 1 bytes ๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.

 

XML ํ…Œ์ด๋ธ”์˜ STRING_TT ์— ์ž…๋ ฅ๋˜๋Š” ๋ฐ์ดํ„ฐ ๊ธธ์ด๊ฐ€ ๊ณ„์† ์ฆ๊ฐ€ํ•˜์—ฌ INLINE ๊ธธ์ด 20K ๋ฅผ ์ดˆ๊ณผํ•˜๋Š” ๋ฐ์ดํ„ฐ๊ฐ€ ๋Œ€๋ถ€๋ถ„์ด ๋จ์œผ๋กœ ์ธํ•ด, MERGE ๋ฌธ์˜ ์„ฑ๋Šฅ ์ €ํ•˜๊ฐ€ ๋ฐœ์ƒํ–ˆ๋‹ค.(2016-08-21). ํ…Œ์ด๋ธ” ์ŠคํŽ˜์ด์Šค ํŽ˜์ด์ง€ ์ตœ๋Œ€๊ธธ์ด 32K ์ œํ•œ์œผ๋กœ ์ถ”๊ฐ€์ ์ธ INLINE LENGTH ๋ฅผ ์ง€์ •ํ•  ์ˆ˜ ์—†๋Š” ์ƒํ™ฉ์—์„œ SAP ์˜ ์˜ต์…˜์„ ์‚ฌ์šฉํ•˜์—ฌ STRING_TT ์— ๋“ค์–ด๊ฐˆ ๋ฐ์ดํ„ฐ๋ฅผ ์••์ถ•ํ•˜์—ฌ COMP_BODY ์— ๋„ฃ๋Š” ๊ฒƒ์œผ๋กœ ์„ฑ๋Šฅ ์ €ํ•˜ ์ด์Šˆ๋ฅผ ํ•ด๊ฒฐํ–ˆ๋‹ค. (2016-09-05)

 

ํŽ˜์ด์ง€ SIZE ๋Œ€๋น„ LOB ๋ฐ์ดํ„ฐ์˜ ์‹ค์ œ ๊ธธ์ด๊ฐ€ ๋„ˆ๋ฌด ๊ธธ์–ด ๋งŽ์€ ๋ฐ์ดํ„ฐ๊ฐ€ INLINE ๋˜์ง€ ๋ชปํ•˜๋Š” ๊ฒฝ์šฐ๋ผ๋ฉด FILESYSTEM CACHING TABLESPACE๋ฅผ ๊ณ ๋ คํ•ด ๋ณด๋Š” ๊ฒƒ๋„ ๋„์›€์ด ๋  ์ˆ˜ ์žˆ๋‹ค.

 

LOB ๋ฐ์ดํ„ฐ size ๊ฐ€ ์ตœ๋Œ€ page size ์ธ 32K ๋ฅผ ๋„˜์–ด์„œ๋Š” ๊ฒฝ์šฐ์—๋Š” INLINE์„ ์ ์šฉํ•ด๋„ ํ…Œ์ด๋ธ” ๋‚ด์— ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•  ์ˆ˜ ์—†๋‹ค. ์ด๋Ÿฌํ•œ ๊ฒฝ์šฐ FILESYSTEM CACHING ์„ ํ™œ์„ฑํ™” ํ•œ TABLESPACE ์‚ฌ์šฉ์„ ํ†ตํ•ด direct I/O ์— ๋Œ€ํ•œ ์„ฑ๋Šฅ์„ ๊ฐœ์„ ํ•  ์ˆ˜ ์žˆ๋‹ค. (์ผ๋ฐ˜ ๋ฐ์ดํ„ฐ์˜ ํ…Œ์ด๋ธ”์ŠคํŽ˜์ด์Šค๋Š” ๋ฒ„ํผํ’€๋กœ caching ํ•˜๋ฏ€๋กœ FILESYSTEM CACHING ์ด ํ•„์š”ํ•˜์ง€ ์•Š๋‹ค. ์˜คํžˆ๋ ค FILESYSTEM CACHING ์„ ํ•  ๊ฒฝ์šฐ DISK โ†’ FILESYSTEM CACHE โ†’ ๋ฒ„ํผํ’€๋กœ ๋‹ค์ค‘ caching ์ด ๋ฐœ์ƒํ•˜์—ฌ ์„ฑ๋Šฅ์ด ์ง€์—ฐ๋  ์ˆ˜ ์žˆ๋‹ค)

 

Filesystem caching ์€ ํ…Œ์ด๋ธ”์ŠคํŽ˜์ด์Šค ์ƒ์„ฑ์‹œ file system caching option ์œผ๋กœ ์ง€์ •ํ•  ์ˆ˜ ์žˆ๋‹ค.

2017๋…„ 1์›” ํ˜„์žฌ filesystem caching ์‚ฌ์šฉํ•œ long tablespace ๋Š” ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ณ  ์žˆ๋‹ค.

 

CREATE LARGE TABLESPACE โ€œZLARGE_LSโ€ IN DATABASE PARTITION GROUP IBMDEFAULTGROUP

โ€ฆ..

ย ย  FILE SYSTEM CACHING

<๊ทธ๋ฆผ 2-7. FILE SYSTEM CACHING ํ…Œ์ด๋ธ” ์ŠคํŽ˜์ด์Šค DDL ์˜ˆ์ œ>

 

SAP NOTE 29824 ์— ์˜ํ•˜๋ฉด, SAP ํ…Œ์ด๋ธ”์— ๋Œ€ํ•ด DB2 ๋‹จ์—์„œ ์ž„์˜๋กœ INLING LENGTH๋ฅผ ์„ค์ •ํ•˜์ง€ ์•Š๋Š” ๊ฒƒ์„ ๊ถŒ๊ณ ํ•˜๊ณ  ์žˆ๋‹ค. ์ด์œ ๋Š” PAGE SIZE ๋Œ€๋น„ ์—ฌ์œ ๊ณต๊ฐ„์ด ์—†๋„๋ก INLINE LENGTH ๋ฅผ ์„ค์ •ํ•œ ๊ฒฝ์šฐ, ์ถ”ํ›„ SAP upgrade ๋“ฑ์˜ ์ƒํ™ฉ์—์„œ SQL670 ์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์ด๋ผ๊ณ  ํ•œ๋‹ค. SAP ์—์„œ INLINE ๊ธธ์ด๋ฅผ ์ค„์ด๊ธฐ ์œ„ํ•ด์„œ๋Š” DB6CONV REPORT ๋ฅผ ํ†ตํ•ด ๋ฐ์ดํ„ฐ ์ด๋™์ด ํ•„์š”ํ•˜๋‹ค. ํ…Œ์ด๋ธ” ์ปฌ๋Ÿผ์˜ ๋ณ€๊ฒฝ์ด ์—†๋Š” ์ผ๋ถ€ ํ…Œ์ด๋ธ”์„ ์ œ์™ธํ•˜๊ณ ๋Š”, INLINE LENGTH ๋ฅผ ๊ธฐ๋ณธ๊ฐ’์œผ๋กœ ๋‘๋ผ๋Š” ๋‚ด์šฉ์ด๋‹ค.

 

๋”ฐ๋ผ์„œ LOB ์ปฌ๋Ÿผ์˜ INLINE LENGTH ๋ฅผ ์ง€์ •ํ•˜๊ฑฐ๋‚˜, ์ฆ๊ฐ€์‹œํ‚ค๊ธฐ ์œ„ํ•ด์„œ๋Š” TABLE SPACE์˜ PAGE SIZE ์ฆ๊ฐ€๋ฅผ ํ•จ๊ป˜ ๊ณ ๋ คํ•˜๊ฑฐ๋‚˜, PAGE SIZE LIMIT ๋Œ€๋น„ ์ผ์ • ๋น„์œจ์˜ ์—ฌ์œ  ๊ณต๊ฐ„์ด ๋‚จ๋„๋ก INLINE LENGTH ๋ฅผ ์ง€์ •ํ•˜๋Š” ๊ฒƒ์ด ๋ฐ”๋žŒ์งํ•˜๋‹ค.

 

2.3 Extent Size ์ฆ๊ฐ€

ํ…Œ์ด๋ธ”์— ๋‹ค์ˆ˜์˜ ๋Œ€๋Ÿ‰ insert ์ž‘์—…์ด ๋™์‹œ ์ˆ˜ํ–‰๋˜๋Š” ๊ฒฝ์šฐ ๋นˆ๋ฒˆํ•œ extent ํ• ๋‹น์œผ๋กœ ์ธํ•œ ์ง€์—ฐ์ด ๋ฐœ์ƒํ•˜์—ฌ ์„ฑ๋Šฅ์ด ์ €ํ•˜๋˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ์žˆ๋‹ค. ํŠนํžˆ SAP ์—์„œ๋Š” default extent size ๊ฐ€ 2๋กœ ๋˜์–ด ์žˆ์œผ๋ฏ€๋กœ ์ด๋Ÿฌํ•œ ์ง€์—ฐ ํ˜„์ƒ์ด ๋งŽ์ด ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ ์ด๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด, ๋Œ€์šฉ๋Ÿ‰ ํ…Œ์ด๋ธ”์— ๋Œ€ํ•œ extent size ๋ฅผ ์กฐ์ •ํ•ด์•ผ ํ•œ๋‹ค. SQLO_LT_SQLD_PAGE_CACHE__pageCacheLatch latch wait time ์ด ๋Š˜์–ด๋‚˜๋Š” ๊ฒฝ์šฐ extent ํ• ๋‹น์œผ๋กœ ์ธํ•œ ์ง€์—ฐ์„ ์˜์‹ฌํ•  ์ˆ˜ ์žˆ๋‹ค.

 

Page cache ๋Š” ํ…Œ์ด๋ธ” ๋ณ„ extent ๋‹จ์œ„๋กœ ํ• ๋‹น๋˜๋ฉฐ page cache ๋ฅผ ๋ชจ๋‘ ์‚ฌ์šฉํ•˜๊ฒŒ ๋˜๋ฉด ํ…Œ์ด๋ธ”์˜ ์ผ๋ถ€๊ฐ€ ๋˜๋ฉด์„œ ์ƒˆ๋กœ์šด page cache ๊ฐ€ ๋‹ค์‹œ ํ• ๋‹น๋œ๋‹ค.

<๊ทธ๋ฆผ 2-8. Page cache>

 

๊ธฐ์กด ํ…Œ์ด๋ธ”์˜ extent size ๋ฅผ ๋ณ€๊ฒฝํ•˜๋ ค๋ฉด โ‘  ์ฆ๊ฐ€๋œ extent size ์˜ ํ…Œ์ด๋ธ”์ŠคํŽ˜์ด์Šค ์ƒ์„ฑ โ†’ โ‘ก ์ƒˆ๋กœ์šด ํ…Œ์ด๋ธ”์ŠคํŽ˜์ด์Šค์— ํ…Œ์ด๋ธ” ์ƒ์„ฑ โ†’ โ‘ข ๋ฐ์ดํ„ฐ ์ด๊ด€ ๋ฐ rename ์ž‘์—…์ด ํ•„์š”ํ•˜๋‹ค.

 

# extentsize 64 Tablespace ์ƒ์„ฑ ์˜ˆ์‹œ

CREATE LARGE TABLESPACE โ€œZLARGE_G1_TSโ€ IN DATABASE PARTITION GROUP IBMDEFAULTGROUP

PAGESIZE 16384 MANAGED BY AUTOMATIC STORAGE

USING STOGROUP โ€œIBMSTOGROUPโ€

AUTORESIZE YES

INITIALSIZE 500 G

MAXSIZE NONE

ย ย  EXTENTSIZE 64

PREFETCHSIZE AUTOMATIC

BUFFERPOOL โ€œIBMDEFAULTBPโ€

DATA TAG INHERIT

OVERHEAD INHERIT

TRANSFERATE INHERIT

DROPPED TABLE RECOVERY ON;

<๊ทธ๋ฆผ 2-9. EXTENT SIZE 64 ํ…Œ์ด๋ธ” ์ŠคํŽ˜์ด์Šค DDL ์˜ˆ์ œ>

 

Extent Size ์ฆ๊ฐ€์˜ Trade-off ๋กœ๋Š” ํ…Œ์ด๋ธ” ์ƒ์„ฑ์‹œ ๊ธฐ๋ณธ์œผ๋กœ ํ• ๋‹น๋˜๋Š” ์–‘์ด extent size ๋งŒํผ ํ• ๋‹น๋˜๋ฏ€๋กœ, ๊ฑด์ˆ˜๊ฐ€ ๊ฑฐ์˜ ์—†๋Š” ํ…Œ์ด๋ธ”์„ ์ƒ์„ฑํ•  ๊ฒฝ์šฐ ๊ณต๊ฐ„ ๋‚ญ๋น„๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋‹ค.

์ฐธ๊ณ ๋กœ, Extent Size ๋Š” TABLESPACE ๋‹จ์œ„๋กœ ์ง€์ •ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ํ…Œ์ด๋ธ” ์ŠคํŽ˜์ด์Šค ์ƒ์„ฑ์‹œ์—๋งŒ ์ง€์ •ํ•  ์ˆ˜ ์žˆ๋‹ค.

ํ…Œ์ด๋ธ” ์žฌ์ƒ์„ฑ ์‹œ ์„ฑ๋Šฅ ๊ฐœ์„ ์ด ํ•„์š”ํ•œ ๊ฒฝ์šฐ, ๊ธฐ๋ณธ์ ์œผ๋กœ EXTENT SIZE ์ฆ๊ฐ€๋ฅผ ์ ์šฉํ•˜์˜€๋‹ค.

 

 

2.4 Log ์ด์ค‘ํ™” ํ•ด์ œ

๋Œ€๋Ÿ‰ ๋ฐ์ดํ„ฐ delete ์‹œ Log Buffer Full ๋ฐ Log Disk Wait ๋“ฑ์œผ๋กœ ์ธํ•œ ์„ฑ๋Šฅ ์ €ํ•˜๊ฐ€ ๋ฐœ์ƒํ–ˆ๋‹ค.

๋‹น์‹œ Log Write Time ์‹œ๊ฐ„์„ ์ธก์ •ํ•œ ๊ฒฐ๊ณผ ๊ถŒ์žฅ ์†๋„๋ฅผ 4๋ฐฐ์ •๋„ ์ดˆ๊ณผํ•œ ์„ฑ๋Šฅ์„ ๋ณด์—ฌ ๋ถ„์„์„ ์‹ค์‹œํ•œ ๊ฒฐ๊ณผ, Log Mirroring ๊ณผ GAD(Global Active Device ์Šคํ† ๋ฆฌ์ง€ ๋ณผ๋ฅจ ๋ฏธ๋Ÿฌ๋ง ํ™˜๊ฒฝ) ์„ค์ •์œผ๋กœ ์ธํ•ด ๋กœ๊ทธ๊ฐ€ 4์ค‘ํ™” ๋˜์–ด ์žˆ์Œ์„ ํ™•์ธํ•˜์˜€๋‹ค. ํ•ด๊ฒฐ์„ ์œ„ํ•ด ๋กœ๊ทธ ์‚ฌ์šฉ๋Ÿ‰์ด ๋งŽ์€ ์‹œ์Šคํ…œ (ECC / FS-PM) ์—๋Š” MIRROR LOG ์„ค์ •์„ ํ•ด์ œํ•˜๊ณ , MIG ๊ธฐ๊ฐ„ ์ค‘ GAD ๋ฅผ ํ•ด์ œํ•˜๊ธฐ๋กœ ํ•˜์˜€๋‹ค.

 

<๊ทธ๋ฆผ 2-10. Log 2์ค‘ํ™” ํ•ด์ œ ์ „ํ›„ ๋น„๊ต>

 

Log 2์ค‘ํ™”๋ฅผ ํ•ด์ œํ•˜๊ธฐ ์ „์—๋Š” Log Write ์‹œ ์œ„ ์™ผ์ชฝ ๊ทธ๋ฆผ์ฒ˜๋Ÿผ 4๊ณณ์˜ ๋กœ๊ทธ ํŒŒ์ผ์— Write ๋ฅผ ์ˆ˜ํ–‰ํ•ด์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ์—, ๊ถŒ์žฅ ์†Œ์š”์‹œ๊ฐ„์˜ 4๋ฐฐ๊ฐ€ ๊ฑธ๋ ธ๋˜ ๊ฒƒ์ด๋‹ค. 2์ค‘ํ™”๋ฅผ ํ•ด์ œ(GAD ํ•ด์ œ ๋ฐ Log Mirror ์„ค์ • ํ•ด์ œ)ํ•œ ๊ฒฝ์šฐ๋Š” ๊ถŒ์žฅ ์†Œ์š”์‹œ๊ฐ„๋งŒํผ๋งŒ ๊ฑธ๋ ธ๋‹ค.

๋ณ€๊ฒฝ ํ›„, ์„ฑ๋Šฅ ๊ฐœ์„ ์ด ํ™•์ธ๋˜์–ด, ๋Œ€๋Ÿ‰ ๋ฐ์ดํ„ฐ๊ฐ€ ์ ์žฌ๋˜๋Š” FS-PM, ECC ์˜ ๊ฒฝ์šฐ MIRROR LOG ๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ณ  Migration ๊ธฐ๊ฐ„ ์ค‘ GAD ๋ฅผ ํ•ด์ œํ•˜๊ธฐ๋กœ ํ–ˆ๋‹ค.

 

 

2.5 Append Mode

ํ…Œ์ด๋ธ”์— ๋™์‹œ์— ๋Œ€๋Ÿ‰์˜ INSERT ์ž‘์—…์ด ๋ฐœ์ƒํ•˜๋Š” ๊ฒฝ์šฐ, FSCR(Free Space Control Record) ์กฐํšŒ ์„ฑ๋Šฅ ์ด์Šˆ๋กœ ์ธํ•ด INSERT ์ž‘์—…์˜ ์„ฑ๋Šฅ์ด ์ €ํ•˜๋˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ์žˆ๋‹ค. ์ด๋Ÿฐ ๊ฒฝ์šฐ, ํ•ด๋‹น ํ…Œ์ด๋ธ”์˜ APPEND MODE ๋ฅผ ํ™œ์„ฑํ™”ํ•ด์„œ FSCR ์„ ์กฐํšŒํ•˜์ง€ ์•Š๊ณ , ํ…Œ์ด๋ธ” ๋งจ ๋’ค์— ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐ”๋กœ ์ถ”๊ฐ€ํ•˜๋„๋ก ์„ค์ •ํ•˜๋ฉด INSERT ์„ฑ๋Šฅ์„ ํšŒ๋ณต ์‹œํ‚ฌ ์ˆ˜ ์žˆ๋‹ค.

 

์„ค์ • ๋ฐ ํ•ด์ œ ๋ช…๋ น์€ ์˜จ๋ผ์ธ์—์„œ ์ˆ˜ํ–‰ ๊ฐ€๋Šฅํ•˜๋ฉฐ, ๋ณ„๋„์˜ REORG ์ž‘์—…๋“ฑ์ด ํ•„์š” ์—†์ด ๋ฐ”๋กœ ์ ์šฉ๋œ๋‹ค. ์ฆ‰์‹œ ์ ์šฉ์ด ๊ฐ€๋Šฅํ•˜๋ฏ€๋กœ EXTENT SIZE ์ฆ๊ฐ€๋‚˜ ํ…Œ์ด๋ธ” ํŒŒํ‹ฐ์…˜ ์ ์šฉ ๋“ฑ ๊ทผ๋ณธ์ ์ธ ์กฐ์น˜๊ฐ€ ์‹œ๊ฐ„์ƒ ์–ด๋ ค์šธ ๊ฒฝ์šฐ ์ž„์‹œ๋กœ APPEND MODE ๋ฅผ ์„ค์ •ํ•˜๊ณ , ํ–ฅํ›„ PM ์ด๋‚˜ ์ž‘์—… ๊ฐ€๋Šฅ ์‹œ์ ์— ํ…Œ์ด๋ธ” ์žฌ์ƒ์„ฑ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๋Š” ์˜ ์ž„์‹œ ์กฐ์น˜๋กœ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

 

๋Œ€๋Ÿ‰ INSERT ์ž‘์—… ์ค‘ APPEND ๋ชจ๋“œ ์„ค์ •์„ ๋ณ€๊ฒฝํ•  ๊ฒฝ์šฐ, ๋Œ€๋Ÿ‰์˜ LOCKWAIT ํ˜„์ƒ์ด ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์žฅ์‹œ๊ฐ„ ์ ์šฉ์ด ์•ˆ๋  ๊ฒฝ์šฐ์—๋Š” INSERT ์ž‘์—…์„ ์ค‘์ง€ํ•˜๊ณ  ์„ค์ •ํ•˜๋Š” ๋ฐฉ์•ˆ์„ ๊ฒ€ํ† ํ•ด ๋ณด๋„๋ก ํ•œ๋‹ค.

 

# APPEND MODE ์„ค์ • ์˜ˆ์‹œ

ALTER TABLE ์Šคํ‚ค๋งˆ.โ€ํ…Œ์ด๋ธ”๋ช…โ€ APPEND ON;

# APPEND MOD ํ•ด์ œ ์˜ˆ์‹œ

ALTER TABLE ์Šคํ‚ค๋งˆ.โ€ํ…Œ์ด๋ธ”๋ช…โ€ APPEND OFF;

<๊ทธ๋ฆผ 2-11. APPEND MODE ์„ค์ •, ํ•ด์ œ ์˜ˆ์‹œ>

 

DELETE ์™€ INSERT ๊ฐ€ ๋งŽ์ด ๋ฐœ์ƒํ•˜๋Š” ํ…Œ์ด๋ธ”์— APPEND MODE ๋ฅผ ์„ค์ •ํ•˜๊ฒŒ ๋˜๋ฉด, DELETE ๋œ ๋ฐ์ดํ„ฐ๊ฐ€ ์žˆ๋˜ ๋นˆ์ž๋ฆฌ๊ฐ€ ์ถ”ํ›„ ์ฑ„์›Œ ์ง€์ง€ ์•Š์•„ ๊ณต๊ฐ„ ๋‚ญ๋น„๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์œผ๋‹ˆ ์œ ์˜ํ•œ๋‹ค.

๋นˆ ๊ณต๊ฐ„์ด ๋งŽ์ด ๋ฐœ์ƒํ•œ ๊ฒฝ์šฐ, ๊ณต๊ฐ„ ๋‚ญ๋น„ ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ์„ฑ๋Šฅ ์ €ํ•˜๊นŒ์ง€ ๋‚˜ํƒ€๋‚˜๊ธฐ๋„ ํ•˜๋ฏ€๋กœ ๊ฒฝ์šฐ์— ๋”ฐ๋ผ REORG ๊ฐ€ ํ•„์š”ํ•  ์ˆ˜ ์žˆ๋‹ค.

 

 

2.6 ๊ธฐํƒ€

pureScale ํ™˜๊ฒฝ์—์„œ ๋Œ€๋Ÿ‰ ๋ฐ์ดํ„ฐ Migration ์ž‘์—… ์‹œ, ๋ณ‘๋ชฉ ํ˜„์ƒ์˜ ์ƒ๋‹น ๋ถ€๋ถ„์ด Index hot page ํ˜„์ƒ์œผ๋กœ ์ธํ•ด ๋‚˜ํƒ€๋‚œ๋‹ค. Index hot page ํ˜„์ƒ์„ ์ค„์ด๊ธฐ ์œ„ํ•œ ๋ฐฉ๋ฒ• ์ค‘ ํ•œ๊ฐ€์ง€๋กœ ๋ฐ์ดํ„ฐ ์šฉ Tablespace ์™€ Index ์šฉ Tablespace ์˜ page size ๋ฅผ ๋‹ค๋ฅด๊ฒŒ ์ง€์ •ํ•˜๋Š” ๋ฐฉ๋ฒ•์ด ์žˆ๋‹ค.

 

์˜ˆ๋ฅผ ๋“ค๋ฉด, ๋ฐ์ดํ„ฐ์šฉ Tablespace ๋Š” 16K page size ๋ฅผ ์‚ฌ์šฉํ•˜๊ณ , Index ์šฉ Tablespace ๋Š” 16K ๊ฐ€ ์•„๋‹Œ 4K ๋‚˜ 8K Tablespace ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด๋‹ค. ์ด๋Ÿฐ ๊ฒฝ์šฐ Index ์šฉ Tablespace ์˜ 1ํŽ˜์ด์ง€๋‹น ์ ์žฌ๋˜๋Š” row ์˜ ์ˆ˜๊ฐ€ 1/2~1/4 ๋กœ ๊ฐ์†Œ๋˜๋ฉด์„œ ์„ฑ๋Šฅ์ด ํšŒ๋ณต๋  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์ด๋‹ค.

 

ERP ํ”„๋กœ์ ํŠธ์—์„œ๋„ ์ด ๋‚ด์šฉ์„ ๊ฒ€ํ† ํ–ˆ์œผ๋‚˜, SAP ์—์„œ ํ–ฅํ›„ ๊ธธ์ด๊ฐ€ ๊ธด ์ธ๋ฑ์Šค ์ƒ์„ฑ์‹œ ๋ฌธ์ œ๊ฐ€ ๋  ์ˆ˜ ์žˆ์–ด ์ž‘์€ page size ๋กœ ์ƒ์„ฑํ•˜์ง€ ์•Š๋„๋ก ๊ถŒ๊ณ ํ•ด์„œ ๊ตฌํ˜„ํ•˜์ง€๋Š” ๋ชปํ–ˆ๋‹ค. SAP ์ด ์•„๋‹Œ ํ™˜๊ฒฝ์—์„œ ์ธ๋ฑ์Šค ํ‚ค ์ปฌ๋Ÿผ ๋ชฉ๋ก์ด ๊ธธ์ง€ ์•Š์€ ๊ฒฝ์šฐ๋ผ๋ฉด ๊ฒ€ํ† ํ•ด ๋ณผ ๊ฐ€์น˜๋Š” ์žˆ์ง€๋งŒ, ํ–ฅํ›„ ๊ธธ์ด๊ฐ€ ๊ธด ์ธ๋ฑ์Šค๋ฅผ ์ƒ์„ฑํ•ด์•ผ ํ•  ๊ฒฝ์šฐ ๋ฌธ์ œ๊ฐ€ ๋  ์ˆ˜ ์žˆ์œผ๋‹ˆ (ํ…Œ์ด๋ธ” ์žฌ์ƒ์„ฑ์ด ํ•„์š”ํ•  ์ˆ˜ ์žˆ๋‹ค.) ์‹ ์ค‘ํ•˜๊ฒŒ ํŒ๋‹จํ•˜๋„๋ก ํ•œ๋‹ค.

 

๋น„์Šทํ•œ ํšจ๊ณผ๋ฅผ ๋ณด๋Š” ๋ฐฉ๋ฒ•์œผ๋กœ Index ์šฉ Tablespace ์˜ page size ๋Š” 16K ๋กœ ๋‘๊ณ  PCTFREE ๋ฅผ 50 ์ •๋„์˜ ํฐ ๊ฐ’์œผ๋กœ ์„ค์ •ํ•ด, 1 page ์— ์ ์žฌ๋˜๋Š” row ์˜ ์ˆ˜๋ฅผ ๊ฐ์†Œ์‹œํ‚ค๋Š” ๋ฐฉ๋ฒ•๋„ ์žˆ๋‹ค. ํ•˜์ง€๋งŒ ์ด ๊ฒฝ์šฐ ๊ณต๊ฐ„์˜ ๋‚ญ๋น„๊ฐ€ ํฐ ๋‹จ์ ์ด ๋œ๋‹ค.

 

๋‹ค์ŒํŽธ์— ์ด์–ด์„œ CF ์„ฑ๋Šฅ๊ฐœ์„ , ์œ ํ‹ธ๋ฆฌํ‹ฐ๋ฅผ ํ†ตํ•œ ์„ฑ๋Šฅ ๊ฐœ์„ ์— ๋Œ€ํ•ด์„œ ๊ธฐ์ˆ ํ•˜๋„๋ก ํ•˜๊ฒ ๋‹ค.

 

์ž‘์„ฑ์ž : ์ด๋•ํ˜ธ ๊ทธ๋ฃน์žฅ, ์กฐํ˜„๋‘ ์„ ์ž„, ๊น€๊ทผ์˜ ์„ ์ž„ (S์‚ฌ)

๊น€๊ธฐํ™” ๋ถ€์žฅ, ์ด์žฌํ˜ ๊ณผ์žฅ (IBM)

์กฐ์šฉํฌ ๋ถ€์žฅ, ๊น€์ผ๋ž€ ๊ณผ์žฅ (๊ณ ์›์‹œ์Šคํ…œ)