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

์ „์ฒด ๊ธ€41

์ œ์ฃผ๋„ ์—ฌํ–‰ 3์ผ์ฐจ ์•ˆ๋…•ํ•˜์„ธ์š” ํฌ๋ฆฌ๋„ฅ์Šค์„๋ผ์Šค์ž…๋‹ˆ๋‹ค. ์ œ์ฃผ๋„ 3์ผ์ฐจ ์—ฌํ–‰์€ ์˜ฌ๋ ˆ๊ธธ 6์ฝ”์Šค์™€ ๋™๋ฐฑ ํฌ๋ ˆ์ŠคํŠธ ์ž…๋‹ˆ๋‹ค. ์˜ฌ๋ ˆ๊ธธ 6์ฝ”์Šค๋Š” ์‡ ์†Œ๊น ๋‹ค๋ฆฌ๋ถ€ํ„ฐ ์„œ๊ท€ํฌ ์˜ฌ๋ ˆ์‹œ์žฅ ์ž…๊ตฌ๋ฅผ ์ง€๋‚˜๋Š” ๊ธธ์ธ๋ฐ์š”. ์ €๋Š” ๋ฐ˜๋Œ€๋กœ ์˜ฌ๋ ˆ์‹œ์žฅ ์ชฝ์—์„œ ์‹œ์ž‘ํ•ด ์‡ ์†Œ๊น ๋‹ค๋ฆฌ๋กœ ์ด๋™ํ–ˆ์Šต๋‹ˆ๋‹ค. ์„œ๊ท€ํฌ ์‹œ๋‚ด์— ์žˆ๋Š” ์ด์ค‘์„ญ ๊ฑฐ๋ฆฌ๋ฅผ ์ง€๋‚˜ ๊ฑท๋‹ค๋ณด๋‹ˆ ๋„๋กœ๊ฐ€ ๊ณต์‚ฌ ์ค‘์ด๋ผ ์„œ๊ท€ํฌ ์ดˆ๋“ฑํ•™๊ต ๊ทผ์ฒ˜๋กœ ์šฐํšŒํ–ˆ์Šต๋‹ˆ๋‹ค. ์ดˆ๋“ฑํ•™๊ต ์•ž์ด๋ผ ๋ฝ‘๊ธฐ ๊ธฐ๊ณ„๋„ ๋ณผ ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ์„œ๋ณต ์ „์‹œ๊ด€๊ณผ ์„œ๋ณต ๊ณต์›์„ ์ง€๋‚˜ ๋ณธ๊ฒฉ์ ์ธ ํ•ด์•ˆ๊ฐ€์— ๋‹ค๋‹ค๋ฅด๋‹ˆ ์†Œ๋ผ์˜ ์„ฑ์„ ๋งŒ๋‚ฌ์Šต๋‹ˆ๋‹ค. ์ด ๊ณณ์—์„œ ์Šคํƒฌํ”„๋ฅผ ๋ฐœ๊ฒฌํ–ˆ์Šต๋‹ˆ๋‹ค. ์ •์ฒ˜ ์—†์ด ๊ฑท๋‹ค๊ฐ€ ๋งŒ๋‚œ ๊ฝƒ๊ฒŒ ์šฐ์ฒดํ†ต์ž…๋‹ˆ๋‹ค. ๋งˆ์Šคํฌ๋ฅผ ์“ฐ๊ณ  ์žˆ๋Š” ์กฐํ˜•๋ฌผ์ด ๊ท€์—ฌ์› ์Šต๋‹ˆ๋‹ค. ๋„ˆ๋ฌด ํž˜๋“ค์–ด์„œ cu์—์„œ ์ž ์‹œ ์‰ฌ์–ด๊ฐ€๋ฉด์„œ ์ฐ์—ˆ์Šต๋‹ˆ๋‹ค. ๋‚ ์”จ๊ฐ€ ์ข‹๋‹ค๊ฐ€ ๋‚˜๋นด๋‹ค๊ฐ€ ๊ณ„์† ๋ฐ”๋€Œ์—ˆ์Šต๋‹ˆ๋‹ค. ์‡ ์†Œ๊น ๊ทผ์ฒ˜ ํ…Œ๋ผ๋กœ์‚ฌ์—์„œ ์ž ์‹œ.. 2023. 1. 18.
์ œ์ฃผ๋„ ์—ฌํ–‰ 2์ผ์ฐจ ์•ˆ๋…•ํ•˜์„ธ์š” ํฌ๋ฆฌ๋„ฅ์Šค์„๋ผ์ด์Šค์ž…๋‹ˆ๋‹ค. ์ œ์ฃผ๋„ ์—ฌํ–‰ 2์ผ์ฐจ๋Š” ์„œ๊ท€ํฌ์˜ ์ค‘๋ฌธ์œผ๋กœ ์—ฌํ–‰์„ ๋– ๋‚ฌ์Šต๋‹ˆ๋‹ค. ์ˆ™์†Œ์—์„œ๋Š” ๋‚ ์”จ๊ฐ€ ์ข‹์•˜๋Š”๋ฐ ์ฃผ์ƒ์ ˆ๋ฆฌ์— ๊ฐ€๊นŒ์›Œ์ง€๋‹ˆ ๋ฐ”๋žŒ์ด ๊ฐ•ํ•˜๊ฒŒ ๋ถˆ์—ˆ์Šต๋‹ˆ๋‹ค. ํ˜„์žฌ ์ฃผ์ƒ์ ˆ๋ฆฌ๋Š” ๊ฒฝ๊ด€ ์ž‘์—…์œผ๋กœ ์ธํ•ด 7์›” ๋‹ฌ๊นŒ์ง€ ๊ด€๋žŒ์— ์ œํ•œ์ด ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ๋ฐฉ๋ฌธํ•˜์‹œ๊ธฐ ์ „์— ํ•œ ๋ฒˆ ํ™•์ธํ•˜์‹œ๋ฉด ์ข‹์„ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ๋‹ค์Œ ๋ฐฉ๋ฌธ์ง€๋Š” ๊ฐ€๊นŒ์šด ์˜ค๋ฆ„์ธ ๋ฒ ๋ฆฟ๋‚ด์˜ค๋ฆ„์ด์—ˆ์Šต๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ์˜ค๋ฆ„์— ๋น„ํ•ด ์—„์ฒญ ๋†’์ง€ ์•Š์•„์„œ ์ €๋Š” ๊ณ„๋‹จ์„ ์˜ค๋ฅด๋‹ค ์ง€์น ๋•Œ ์ฏ”์Œ ๋„์ฐฉํ–ˆ์Šต๋‹ˆ๋‹ค. ๋ฒ ๋ฆฟ๋‚ด์˜ค๋ฆ„์—์„œ ๋‚ด๋ ค์˜จ ๋’ค ์ €๋Š” ์ ์‹ฌ์œผ๋กœ ํ‘๋ผ์ง€ ๊ณ ๊ธฐ๋ฅผ ๋จน๊ธฐ๋กœ ๊ฒฐ์ •ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ •๋ง ๋ง›์žˆ์—ˆ์ง€๋งŒ ๊ฐ€๊ฒฉ์ด ๋„ˆ๋ฌด ๋น„์‹ธ์„œ ๋‹นํ™ฉํ–ˆ์Šต๋‹ˆ๋‹ค. ๋‚ ์”จ๊ฐ€ ์ข‹์ง€ ์•Š์•„์„œ ๋น„๋ฅผ ๋งž์œผ๋ฉด์„œ ์—ฌ๋ฏธ์ง€ ์‹๋ฌผ์›๊นŒ์ง€ ๊ฑธ์–ด์™€ ๊ตฌ๊ฒฝ์„ ํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ฒจ์šธ์ด๋ผ์„œ ๊ทธ๋Ÿฐ์ง€ ์™ธ๋ถ€ ์ •์›์€ ๋‹ค์†Œ ์กฐ์ดํ•ด ๋ณด์˜€์Šต๋‹ˆ๋‹ค. ์•„๋งˆ ๋ด„์— ์˜ค์‹œ๋ฉด ์ข€ ๋” .. 2023. 1. 17.
์ œ์ฃผ๋„ ์—ฌํ–‰ 1์ผ์ฐจ ์•ˆ๋…•ํ•˜์„ธ์š” ํฌ๋ฆฌ๋„ฅ์Šค์„๋ผ์Šค์ž…๋‹ˆ๋‹ค. ๊ธฐ๋ถ„ ์ „ํ™˜ ๊ฒธ 1์›” 16์ผ๋ถ€ํ„ฐ 19์ผ๊นŒ์ง€ ์ œ์ฃผ๋„ ์—ฌํ–‰์„ ์™”์Šต๋‹ˆ๋‹ค. ํ˜น์‹œ ํŠธ๋Ÿฌ๋ธ”๋Ÿฌ๋ผ๋Š” ์œ ํŠœ๋ธŒ ์ฑ„๋„์„ ์•Œ๊ณ  ๊ณ„์‹ ๊ฐ€์š”? ๊ฐœ๊ทธ๋งจ ์ด์šฉ์ง„๊ณผ ์ด์ง„ํ˜ธ์˜ ์—ฌํ–‰์„ ์ฃผ์š” ์ปจํ…์ธ ๋กœ ์‚ผ์€ ์œ ํŠœ๋ธŒ ์ฑ„๋„์ธ๋ฐ, ์•„์‰ฝ๊ฒŒ๋„ ์ฝ”๋กœ๋‚˜19๋กœ ์ธํ•ด ์—ฌํ–‰๋‹ค์šด ์—ฌํ–‰์„ ํ•ด๋ณด๊ธฐ๋„ ์ „์— ๋์ด ๋‚˜๋ฒ„๋ ธ์Šต๋‹ˆ๋‹ค. ์ €๋Š” ๊ฐœ์ธ์ ์œผ๋กœ ํŠธ๋Ÿฌ๋ธ”๋Ÿฌ ์˜์ƒ๋“ค์„ ์žฌ๋ฏธ์žˆ๊ฒŒ ์‹œ์ฒญํ–ˆ๊ธฐ ๋•Œ๋ฌธ์— ์ด๋ฒˆ ์ œ์ฃผ๋„ ์—ฌํ–‰ 1์ผ์ฐจ๋Š” ์šฉ์ง„ํ˜ธ์˜ ์ œ์ฃผ๋„ ํŽธ์„ ์ข€ ๋ฒค์น˜๋งˆํ‚น ํ•ด๋ดค์Šต๋‹ˆ๋‹ค. ํŠธ๋Ÿฌ๋ธ”๋Ÿฌ์— ๋‚˜์˜จ ์ ‘์ง๋ผˆ๊ตญ์ž…๋‹ˆ๋‹ค. ์ด ์Œ์‹์„ ๊ฑฐ์˜ 2๋…„ ์ •๋„ ๊ธฐ๋‹ค๋ฆฐ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ์ œ์ฃผ๋„ ์—ฌํ–‰ ์ฒซ ์Œ์‹์€ ์ ‘์ง๋ผˆ๊ตญ์ž…๋‹ˆ๋‹ค. ์ด์šฉ์ง„๊ณผ ์ด์ง„ํ˜ธ๋Š” ๋„‰๋‘ฅ๋ฒ ๊ธฐ ๋ผ๋Š” ๊ณณ์„ ๊ฐ”์ง€๋งŒ ์ €๋Š” ์‹œ๊ฐ„์ด ๋งž์ง€ ์•Š์•„ ๋‹ฅ๊ทธ๋„คํ• ๋ง์ด๋ผ๋Š” ๊ณณ์„ ๊ฐ”์Šต๋‹ˆ๋‹ค. ๋„‰๋‘ฅ๋ฒ ๊ธฐ - ์ œ์ฃผํŠน๋ณ„์ž์น˜๋„ ์ œ์ฃผ์‹œ ์„œ๋ฌธ๋กœ 9-1 ๋งค์ฃผ ์ˆ˜์š”์ผ.. 2023. 1. 16.
์ŠคํŒŒํฌ ๋ฐ์ดํ„ฐ ํ”„๋ ˆ์ž„(์ƒ์„ฑ, ์Šคํ‚ค๋งˆ) ์•ˆ๋…•ํ•˜์„ธ์š” ํฌ๋ฆฌ๋„ฅ์Šค์„๋ผ์Šค์ž…๋‹ˆ๋‹ค. ์˜ค๋Š˜์€ ์ŠคํŒŒํฌ์˜ ๋ฐ์ดํ„ฐ ํ”„๋ ˆ์ž„์„ ์ƒ์„ฑํ•˜๋Š” ๋ฒ•๊ณผ ์Šคํ‚ค๋งˆ์— ๋Œ€ํ•ด์„œ ์ •๋ฆฌํ•ด๋ณด๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ ํ”„๋ ˆ์ž„ ์ƒ์„ฑ ๋จผ์ € ๋ฐ์ดํ„ฐ ํ”„๋ ˆ์ž„์„ ์ƒ์„ฑํ•˜๋Š” ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค. ๊ฐ„๋‹จํ•˜๊ฒŒ ํ˜„์žฌ EPL ๋“์  ์ˆœ์œ„ ์ƒ์œ„ 5๋ช…์— ๋Œ€ํ•œ ์ •๋ณด๋กœ ๋งŒ๋“ค์–ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ๋จผ์ € ์Šค์นผ๋ผ์—์„œ ๋ฐ์ดํ„ฐ ํ”„๋ ˆ์ž„์„ ๋งŒ๋“ค ๋•Œ๋Š” Sequence ํด๋ž˜์Šค๋ฅผ ์‚ฌ์šฉํ•ด ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ž‘์„ฑํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค. ์ƒ์„ฑํ•˜๋ฉด ์ปฌ๋Ÿผ ์ด๋ฆ„์ด ์—†๊ธฐ ๋•Œ๋ฌธ์— ๋’ค์— toDF() ๋ช…๋ น์–ด๋กœ ์ปฌ๋Ÿผ๋ช…์„ ์ง€์ •ํ•ด์ฃผ์‹œ๋ฉด ์ปฌ๋Ÿผ๋ช…์ด ์ถ”๊ฐ€๋ฉ๋‹ˆ๋‹ค. # ๋ฐ์ดํ„ฐ ํ”„๋ ˆ์ž„ ์ƒ์„ฑ(์ปฌ๋Ÿผ๋ช… X) val self_df = spark.createDataFrame(Seq(("์—˜๋ง ํ™€๋ž€๋“œ", 21), ("ํ•ด๋ฆฌ ์ผ€์ธ", 15), ("์ด๋ฐ˜ ํ† ๋‹ˆ", 12), ("๋ฏธํŠธ๋กœ๋น„์น˜", 11), ("๋ชจ๋ ˆ๋…ธ", 10))) # ๋ฐ.. 2023. 1. 14.