๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

๐Ÿ“ฆ ๋ฐ์ดํ„ฐ ๋ฒ ์ด์Šค (DB) ๐Ÿ“ฆ34

Elasticsearch์™€ ๊ด€๊ณ„ํ˜• DB ๋น„๊ต ํ”ํžˆ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๋Š” ๊ด€๊ณ„ํ˜• DB๋Š” Elasticsearch์—์„œ ๊ฐ๊ฐ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๋Œ€์‘์‹œํ‚ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ถœ์ฒ˜: https://www.slideshare.net/deview/2d1elasticsearch RDBMS๋ฅผ ๋‹ค๋ฃจ์…จ๋˜ ๋ถ„๋“ค์ด๋ผ๋ฉด Elasticsearch์—์„œ ์‚ฌ์šฉํ•˜๋Š” ์šฉ์–ด๋“ค์ด ์กฐ๊ธˆ ๋‚ฏ์„ค์ง€๋งŒ ์˜ˆ์ œ๋ฅผ ๋ช‡ ๋ฒˆ ๋”ฐ๋ผํ•ด๋ณด์‹œ๋ฉด ๊ธˆ๋ฐฉ ์ ์‘ํ•˜์‹ค ๊ฒƒ์ด๋ผ ์ƒ๊ฐ๋ฉ๋‹ˆ๋‹ค. ๊ทธ๋ž˜๋„ ์šฉ์–ด๊ฐ€ ๋‚ฏ์„ค๊ธฐ ๋•Œ๋ฌธ์— ๋‹ค์Œ์œผ๋กœ ์šฉ์–ด ์ •๋ฆฌ๋ฅผ ํ•ด๋ณด๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. 2021. 7. 12.
ํŠธ๋žœ์žญ์…˜ (Transaction)์„ ์‰ฝ๊ฒŒ ์•Œ์•„๋ด…์‹œ๋‹ค! ํŠธ๋žœ์žญ์…˜ ํŠธ๋žœ์žญ์…˜์ด๋ž€, ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ์ƒํƒœ๋ฅผ ๋ฐ”๊พธ๊ธฐ ์œ„ํ•ด ์ˆ˜ํ–‰ํ•˜๋Š” ์ž‘์—…์˜ ๋‹จ์œ„๋ฅผ ๋งํ•œ๋‹ค. ๋งŒ์•ฝ ์ž‘์—…์ด ์ค‘๋‹จ๋์„ ๊ฒฝ์šฐ ์ฒ˜์Œ๋ถ€ํ„ฐ ๋‹ค์‹œ ์‹คํ–‰ํ•˜๋Š” Rollback์„ ์ˆ˜ํ–‰ํ•˜๊ณ , ์˜ค๋ฅ˜์—†์ด ์‹คํ–‰์„ ๋งˆ์น˜๋ฉด Commit์„ ์ˆ˜ํ–‰ํ•˜๋Š” ๋…ผ๋ฆฌ์ ์ธ ๋‹จ์œ„์ด๋‹ค. ๋˜ํ•œ ํ•˜๋‚˜์˜ ๊ทธ๋ฃน์œผ๋กœ ์ฒ˜๋ฆฌ๋˜์–ด์•ผ ํ•˜๋Š” ๋ช…๋ น๋ฌธ๋“ค์„ ๋ชจ์•„ ๋†“์€ ๋…ผ๋ฆฌ์ ์ธ ์ž‘์—… ๋‹จ์œ„๋ผ๊ณ  ๋ณผ ์ˆ˜ ์žˆ๋‹ค. ์˜ˆ ์˜ˆ๋ฅผ ๋“ค์–ด ํŠธ๋žœ์žญ์…˜์€ ์€ํ–‰ ์ž…์ถœ๊ธˆ์œผ๋กœ ์˜ˆ๋ฅผ ๋งŽ์ด ๋“ ๋‹ค. 1. ํŠธ๋žœ์žญ์…˜์€ '๊ฑฐ๋ž˜'๋ผ๋Š” ๋œป์œผ๋กœ, ์€ํ–‰์—์„œ ์ž…๊ธˆ๊ณผ ์ถœ๊ธˆ์„ ํ•˜๋Š” ๊ทธ ๊ฑฐ๋ž˜๋ฅผ ๋œปํ•œ๋‹ค. 2. A ์€ํ–‰์—์„œ ์ถœ๊ธˆํ•˜์—ฌ B์€ํ–‰์œผ๋กœ ์†ก๊ธˆํ•œ๋‹ค๊ณ  ๊ฐ€์ •ํ•˜์ž. 3. ์†ก๊ธˆํ•œ๋Š ์ค‘์— ์•Œ ์ˆ˜ ์—†๋Š” ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•˜์—ฌ A์€ํ–‰ ๊ณ„์ขŒ์—์„œ ๋ˆ์ด ๋น ์ ธ ๋‚˜๊ฐ”๋Š”๋ฐ B์€ํ–‰ ๊ณ„์ขŒ์— ์ž…๊ธˆ๋˜์ง€ ์•Š์•˜๋‹ค. 4. ์ด๋•Œ, ์šฐ๋ฆฌ๋Š” A์€ํ–‰ ๊ณ„์ขŒ์˜ ์ถœ๊ธˆ์„ ์ทจ์†Œํ•˜๊ฑฐ๋‚˜, ์ถœ๊ธˆ๋œ .. 2021. 6. 30.
5๏ธโƒฃ FUNCTION ๐Ÿ”น ํ•จ์ˆ˜(FUNCTION)๋Š” PARAMETER(๋งค๊ฐœ๋ณ€์ˆ˜)๋ฅผ ๋จน์œผ๋ฉด ๊ผญ RETURN(๋ฐ˜ํ™˜๊ฐ’)์„ ๋Œ๋ ค์ค๋‹ˆ๋‹ค. ๐Ÿ”น ํ•จ์ˆ˜๋Š” SQL๋ฌธ ์•ˆ์—์„œ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. โ“ ์˜ค๋ผํด์—์„œ ๊ธฐ๋ณธ์ ์œผ๋กœ ์‚ฌ์šฉ๋˜๋Š” ROUND, NVL, DISTINCT ๊ฐ™์€ ํ•จ์ˆ˜๋“ค์€ ๋นŒํŠธ์ธ(Built-in) ํ•จ์ˆ˜๋ผ๊ณ  ์นญํ•˜๋ฉฐ PL/SQL์—์„œ ์‚ฌ์šฉํ•˜๋Š” ํ•จ์ˆ˜๋ผ๋Š”๊ฒƒ์€ ์‚ฌ์šฉ์ž๊ฐ€ ๊ธฐ๋Šฅ์„ ํ™œ์šฉํ•˜๊ธฐ ์œ„ํ•ด ์ง์ ‘ ๋งŒ๋“  ํ•จ์ˆ˜๋ฅผ ์ง€์นญํ•ฉ๋‹ˆ๋‹ค. ๐Ÿ“‹ 1. ํ•จ์ˆ˜ ์ƒ์„ฑ ๐Ÿ“‹ 2. ํ•จ์ˆ˜ ํ˜ธ์ถœ 2021. 2. 18.
4๏ธโƒฃ PROCEDURE ๐Ÿ“‹ ํ”„๋กœ์‹œ์ €(PROCEDURE)๋ž€? ๐Ÿ”ท ์ž์ฃผ ์‚ฌ์šฉํ•˜๋Š” SQL์„ PROCEDURE๋กœ ๋งŒ๋“  ๋’ค ํ•„์š”์‹œ๋งˆ๋‹ค ํ˜ธ์ถœํ•ด์„œ ์ž‘์—…์‹œ๊ฐ„์„ ๋‹จ์ถ•์‹œํ‚ค๊ณ  ๊ฐ„์†Œํ™” ํ•  ์ˆ˜ ์žˆ๋‹ค. ์•„๋ž˜ ๋„์‹์ฒ˜๋Ÿผ FUNCTION์€ ํŠน์ • ์—ฐ์‚ฐ์„ ์ˆ˜ํ–‰ ํ•œ ๋’ค ๋ฆฌํ„ด ๊ฐ’(RETURN VALUES)์„ ๋ฐ˜ํ™˜ํ•˜๋‚˜ PROCEDURE(ํ”„๋กœ์‹œ์ €)๋Š” ํŠน์ •ํ•œ LOGIC์„ ์ฒ˜๋ฆฌํ•˜๊ธฐ๋งŒ ํ•˜๊ณ  ๋ฆฌํ„ด ๊ฐ’์„ ๋ฐ˜ํ™˜ํ•˜์ง€์•Š๋Š”๋‹ค. ๐Ÿ“„ ์˜ˆ๋ฌธ 1 - PARAMETER(๋งค๊ฐœ๋ณ€์ˆ˜)๊ฐ€ ์žˆ๋Š” PROCEDURE ๐Ÿ“„ ์˜ˆ๋ฌธ 2 - PARAMETER(๋งค๊ฐœ๋ณ€์ˆ˜)๊ฐ€ ์—†๋Š” PROCEDURE ๐Ÿ“„ ์˜ˆ๋ฌธ 3 - DEPARTMENTS ROW(๋ฐ์ดํ„ฐ๋ฅผ ์ถ”๊ฐ€) ๐Ÿ“ ๋ฌธ์ œ 1 - '์‚ฌ์›๋ฒˆํ˜ธ๋ฅผ ์ž…๋ ฅ๋ฐ›์•„์„œ ๊ธ‰์—ฌ๋ฅผ 30% ์ธ์ƒํ•˜๋ผ' 2021. 2. 18.