Team

[CS์Šคํ„ฐ๋””] ํ”„๋กœ์ ํŠธ ๊ด€๋ จ ๋ฉด์ ‘ ์งˆ๋ฌธ

seungh2 2023. 5. 6. 23:44

๐Ÿ‘€ mysql์„ ์„ ํƒํ•œ ์ด์œ 

  • mysql์€ ์˜คํ”ˆ ์†Œ์Šค ๊ธฐ๋ฐ˜์˜ DBMS๋กœ ๋ฌด๋ฃŒ๋กœ ์‚ฌ์šฉ์ด ๊ฐ€๋Šฅํ•˜๋‹ค.
  • ๋ฌด๋ฃŒ์ด์ง€๋งŒ ๋น ๋ฅธ ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ์™€ ํ™•์žฅ์„ฑ์„ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค.
  • ์‚ฌ์šฉ์ด ๋งค์šฐ ์‰ฝ๊ณ  ํ™œ๋ฐœํ•œ ์ปค๋ฎค๋‹ˆํ‹ฐ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์–ด ๋‹ค์–‘ํ•œ ๋ฌธ์ œ์— ๋Œ€ํ•œ ํ•ด๊ฒฐ์ฑ…์„ ์ฐพ์„ ์ˆ˜ ์žˆ๋‹ค.

๐Ÿ‘€ ๋ฐฑ์—”๋“œ ์–ธ์–ด๋กœ ์ž๋ฐ”๋ฅผ ์„ ํƒํ•œ ์ด์œ 

  • ์ž๋ฐ”๋Š” ์ •์  ํƒ€์ž… ์–ธ์–ด๋กœ ์ปดํŒŒ์ผ ์‹œ์ ์— ํƒ€์ž… ๊ฒ€์‚ฌ๊ฐ€ ์ด๋ฃจ์–ด์ ธ ๋Ÿฐํƒ€์ž„ ์‹œ์ ์—์„œ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋Š” ์—๋Ÿฌ๋ฅผ ๋ฐฉ์ง€ํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ์ž๋ฐ”๋Š” ๊ฐ์ฒด ์ง€ํ–ฅ ์–ธ์–ด๋กœ ์ฝ”๋“œ๋ฅผ ๋ชจ๋“ˆํ™”ํ•ด ์ž‘์„ฑํ•ด ์œ ์ง€๋ณด์ˆ˜์„ฑ์„ ๋†’์ผ ์ˆ˜ ์žˆ๋‹ค.
  • ๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ๋ฅผ ์ž๋™์œผ๋กœ ์ฒ˜๋ฆฌํ•ด์ฃผ๋Š” Garbage Collection ๊ธฐ๋Šฅ์ด ์žˆ์–ด ๋ฉ”๋ชจ๋ฆฌ ๋ˆ„์ˆ˜ ๋“ฑ์˜ ๋ฌธ์ œ๋ฅผ ๋ฐฉ์ง€ํ•  ์ˆ˜ ์žˆ๋‹ค.
  • JVM ์œ„์—์„œ ๋™์ž‘ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์šด์˜์ฒด์ œ์— ์ข…์†๋˜์ง€ ์•Š์•„ ๋‹ค์–‘ํ•œ ์šด์˜์ฒด์ œ์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

๐Ÿ‘€ Java 8, Java 17์ด ์•„๋‹ˆ๋ผ Java 11์„ ์„ ํƒํ•œ ์ด์œ 

  • Java 8์€ ์ง€์›์ด ์ข…๋ฃŒ๋œ ๋ฒ„์ „์œผ๋กœ ๋ณด์•ˆ ๋ฐ ์•ˆ์ •์„ฑ์— ๋ฌธ์ œ๊ฐ€ ์žˆ๋‹ค.
  • Java 17์€ ์ตœ์‹  ๋ฒ„์ „์œผ๋กœ ์ƒ๋Œ€์ ์œผ๋กœ ์•ˆ์ •์„ฑ์ด ๋–จ์–ด์ง€๊ณ , ์‚ฌ์šฉ์ž๊ฐ€ ์ ์–ด ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ–ˆ์„ ๋•Œ ์ฐธ๊ณ ํ•  ์ˆ˜ ์žˆ๋Š” ์ž๋ฃŒ๊ฐ€ ์ ๋‹ค.

โœ” Java 11 ์„ ํƒ

๐Ÿ‘€ spring boot 3 ๋ฒ„์ „์ด ์•„๋‹ˆ๋ผ spring boot 2 ๋ฒ„์ „์„ ์„ ํƒํ•œ ์ด์œ 

  • spring boot 3 ๋ฒ„์ „์€ Java 17๋ถ€ํ„ฐ ์ง€์›ํ•œ๋‹ค.
  • ๋˜ํ•œ javax -> jakarta๋กœ ๋ณ€๊ฒฝ๋˜์—ˆ๊ณ , ์ง€์›ํ•˜์ง€ ์•Š๋Š” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ(springfox swagger)๊ฐ€ ์กด์žฌํ•œ๋‹ค.

โœ” spring boot 2 ๋ฒ„์ „ ์„ ํƒ

๐Ÿ‘€ spring์ด ์•„๋‹ˆ๋ผ spring boot๋ฅผ ์„ ํƒํ•œ ์ด์œ 

  • ํ™˜๊ฒฝ์„ค์ •์ด ์‰ฝ๊ณ  ๋น ๋ฅด๋‹ค.
  • ๋‚ด์žฅํ˜• ์„œ๋ฒ„๊ฐ€ ์žˆ์–ด ๋ณ„๋„์˜ ์›น ์„œ๋ฒ„๋ฅผ ์„ค์น˜ํ•˜์ง€ ์•Š์•„๋„ ์‹คํ–‰์ด ๊ฐ€๋Šฅํ•˜๋‹ค.
  • ๋ฐฐํฌํ•  ๋•Œ, spring ํ”„๋ ˆ์ž„์›Œํฌ๋กœ ๊ฐœ๋ฐœํ•œ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์€ WAR ํŒŒ์ผ๊ณผ ์ด๋ฅผ ์‹คํ–‰ํ•˜๊ธฐ ์œ„ํ•ด ์„ค์ •ํ•œ WAS๊ฐ€ ํ•„์š”ํ•˜๋‹ค.
  • spring boot๋กœ ๊ฐœ๋ฐœํ•œ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ๋‚ด์žฅํ˜• ์„œ๋ฒ„๊ฐ€ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ๋…๋ฆฝ์ ์œผ๋กœ ์‹คํ–‰ ๊ฐ€๋Šฅํ•œ JAR ํŒŒ์ผ์„ ๋ฐฐํฌํ•˜๋ฉด ๋œ๋‹ค. 

๐Ÿ‘€ mybatis๊ฐ€ ์•„๋‹ˆ๋ผ spring data jpa๋ฅผ ์„ ํƒํ•œ ์ด์œ 

  • mybatis๋Š” sql ์ฟผ๋ฆฌ๋ฅผ ์ง์ ‘ ์ž‘์„ฑํ•ด์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— sql์— ์˜์กดํ•˜๋Š” ๊ฐœ๋ฐœ์„ ํ•ด์•ผ ํ•œ๋‹ค.
  • spring data jpa๋Š” ๊ฐœ๋ฐœ์ž๊ฐ€ ์ง์ ‘ sql ์ฟผ๋ฆฌ๋ฅผ ์ž‘์„ฑํ•˜์ง€ ์•Š์•„๋„ ์ž๋™์œผ๋กœ ์ž‘์„ฑ๋œ๋‹ค. (CRUD๋ฅผ ์ฒ˜๋ฆฌํ•˜๊ธฐ ์œ„ํ•œ ๊ณตํ†ต ์ธํ„ฐํŽ˜์ด์Šค๊ฐ€ ์ œ๊ณต๋œ๋‹ค.)
  • mybatis๋Š” spring data jpa์™€ ๋‹ฌ๋ฆฌ ๋™์  ์ฟผ๋ฆฌ๋ฅผ ์ž‘์„ฑํ•˜๋Š” ๊ฒƒ์ด ์–ด๋ ต๋‹ค.
  • mybatis๋Š” sql๋ฌธ์˜ ์˜ค๋ฅ˜๋‚˜ ์˜คํƒ€๋ฅผ ๋Ÿฐํƒ€์ž„ ์˜ค๋ฅ˜๋กœ ๋ฐœ๊ฒฌํ•˜์ง€๋งŒ spring data jpa์€ ์‹คํ–‰ ์ „ ๋ฌธ๋ฒ• ๊ฒ€์‚ฌ๋ฅผ ์ˆ˜ํ–‰ํ•  ๋•Œ ๋ฐœ๊ฒฌํ•  ์ˆ˜ ์žˆ๋‹ค.
  • spring data jpa๋Š” mybatis๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ๋ณด๋‹ค ์›”๋“ฑํ•œ ๊ฐœ๋ฐœ์†๋„์™€ ์œ ์ง€๋ณด์ˆ˜์„ฑ์„ ๊ฐ–๋Š”๋‹ค.

๐Ÿ‘€ response์™€ entity๋ฅผ ๊ตฌ๋ถ„ํ•ด์„œ ์‚ฌ์šฉํ•ด์•ผ ํ•˜๋Š” ์ด์œ 

  • entity ๊ฐ์ฒด๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ํ…Œ์ด๋ธ”๊ณผ ๋งคํ•‘๋˜๊ธฐ ๋•Œ๋ฌธ์— response์— ํ•„์š”์—†๋Š” ํ•„๋“œ๊ฐ€ ํฌํ•จ๋  ์ˆ˜ ์žˆ๋‹ค.
  • entity ๊ฐ์ฒด๋ฅผ response๋กœ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์€ ๋ถˆํ•„์š”ํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ์ „์†กํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋„คํŠธ์›Œํฌ ํŠธ๋ž˜ํ”ฝ์„ ๋‚ญ๋น„ํ•œ๋‹ค.
  • ๋˜ํ•œ frontend ์ชฝ์—์„œ ๋ถˆํ•„์š”ํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜๋ฆฌํ•ด์•ผ ํ•˜๋Š” ๊ณผ์ •์„ ๊ฑฐ์ณ์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์„ฑ๋Šฅ ์ €ํ•˜๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋‹ค.

๐Ÿ‘€ ๋ฌดํ•œ ์Šคํฌ๋กค์„ ์‚ฌ์šฉํ•˜๋Š” ์ด์œ 

  • ๋ฌดํ•œ ์Šคํฌ๋กค
    • ์‚ฌ์šฉ์ž๊ฐ€ ํŽ˜์ด์ง€๋ฅผ ๋กœ๋”ฉํ•˜์ง€ ์•Š์•„๋„ ๋˜๊ฒŒ ํ•˜๊ธฐ ์œ„ํ•ด ์Šคํฌ๋กค์„ ๋๊นŒ์ง€ ๋‚ด๋ฆฌ๋ฉด ์ƒˆ๋กœ์šด ๋ฐ์ดํ„ฐ๋ฅผ ์ž๋™์œผ๋กœ ๋ถˆ๋Ÿฌ์˜ค๋Š” ๋ฐฉ์‹
  • ์‚ฌ์šฉํ•˜๋Š” ์ด์œ 
    • ์‚ฌ์šฉ์ž ๊ฒฝํ—˜์„ ํ–ฅ์ƒ์‹œํ‚ค๊ธฐ ์œ„ํ•ด
    • ํŽ˜์ด์ง€ ๋กœ๋”ฉ ์‹œ๊ฐ„์„ ์ค„์ด๊ณ  ์‚ฌ์šฉ์ž๊ฐ€ ์›ํ•˜๋Š” ์ •๋ณด์— ๋น ๋ฅด๊ฒŒ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋‹ค.

๐Ÿ‘€ JPA์—์„œ ๋ฌดํ•œ ์Šคํฌ๋กค์„ ๊ตฌํ˜„ํ•˜๋Š” ๋ฐฉ๋ฒ•

  1. Page ๊ฐ์ฒด ์‚ฌ์šฉ
    • Pageable ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์ด์šฉํ•ด ํŽ˜์ด์ง€ ๋ฒˆํ˜ธ, ํŽ˜์ด์ง€ ๋‹น ๋ฐ์ดํ„ฐ ๊ฐœ์ˆ˜, ์ •๋ ฌ ์ •๋ณด ๋“ฑ์„ ์„ค์ •ํ•œ๋‹ค.
    • Page ๊ฐ์ฒด์—์„œ getTotalPages()๋ฉ”์†Œ๋“œ๋ฅผ ์ด์šฉํ•ด ์ „์ฒด ํŽ˜์ด์ง€ ์ˆ˜๋ฅผ ๊ตฌํ•  ์ˆ˜ ์žˆ๋‹ค.
    • ๋‚ด๋ถ€์ ์œผ๋กœ count ์ฟผ๋ฆฌ๊ฐ€ ์‹คํ–‰๋˜๊ธฐ ๋•Œ๋ฌธ์— ์„ฑ๋Šฅ์ด ์ข‹์ง€ ์•Š์„ ์ˆ˜ ์žˆ๋‹ค.
  2. Slice ๊ฐ์ฒด ์‚ฌ์šฉ
    • Page ๊ฐ์ฒด์™€ ๋‹ฌ๋ฆฌ count ์ฟผ๋ฆฌ๋ฅผ ์‹คํ–‰ํ•˜์ง€ ์•Š๊ณ  hasNext() ๋ฉ”์†Œ๋“œ๋กœ ๋‹ค์Œ ํŽ˜์ด์ง€๊ฐ€ ์žˆ๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.
    • count ์ฟผ๋ฆฌ๋ฅผ ์‹คํ–‰ํ•˜์ง€ ์•Š์•„ Page ๊ฐ์ฒด๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ๋ณด๋‹ค ์„ฑ๋Šฅ์ด ์ข‹๋‹ค.
    • ์ „์ฒด ํŽ˜์ด์ง€ ์ˆ˜๋ฅผ ๊ตฌํ•  ์ˆ˜ ์—†๋‹ค.
  3. limit, offset ์‚ฌ์šฉ
    • ํŽ˜์ด์ง€ ๋‹น ๋ฐ์ดํ„ฐ ๊ฐœ์ˆ˜์™€ ํŽ˜์ด์ง€ ๋ฒˆํ˜ธ๋ฅผ ์ด์šฉํ•ด limit ์ ˆ๊ณผ offset ์ ˆ์„ ๊ณ„์‚ฐํ•ด ์‚ฌ์šฉํ•œ๋‹ค.
    • ํŽ˜์ด์ง€ ๋ฒˆํ˜ธ๊ฐ€ ์ปค์งˆ์ˆ˜๋กœ ์ฟผ๋ฆฌ์˜ ์‹คํ–‰ ์†๋„๊ฐ€ ๋А๋ ค์ง„๋‹ค. (limit + offset ๊ฐœ์ˆ˜ ๋งŒํผ ๋ฐ์ดํ„ฐ๋ฅผ ์กฐํšŒํ•œ ํ›„ ํ•„์š”์—†๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ๋ฒ„๋ฆฐ๋‹ค.)
  4. no offset ์‚ฌ์šฉ
    • ๋งˆ์ง€๋ง‰ ์กฐํšŒ ๊ฒฐ๊ณผ์˜ ID๋ฅผ ์‚ฌ์šฉํ•ด ํ•„์š”์—†๋Š” ๋ฐ์ดํ„ฐ ์กฐํšŒ๋ฅผ ๋ง‰๋Š”๋‹ค.
    • ํ•ด๋‹น ID๋ฅผ where ์ ˆ์— ๊ฑธ์–ด์„œ ๋งค๋ฒˆ ์ฒซ ํŽ˜์ด์ง€๋งŒ ์ฝ๋„๋ก ํ•œ๋‹ค.

๐Ÿ‘€ Page vs Slice

  • ๋‘˜ ๋‹ค ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ์ฝ์–ด์˜ค๊ธฐ ์œ„ํ•œ spring data jpa์˜ ๊ฐ์ฒด
  • Page
    • ์ผ์ •ํ•œ ๊ฐœ์ˆ˜์˜ ๋ฐ์ดํ„ฐ๋ฅผ ํ•œ ๋ฒˆ์— ๊ฐ€์ ธ์™€์„œ ํŽ˜์ด์ง€ ๋‹จ์œ„๋กœ ์ฒ˜๋ฆฌํ•œ๋‹ค.
    • ์ด ํŽ˜์ด์ง€ ์ˆ˜, ํ˜„์žฌ ํŽ˜์ด์ง€ ๋ฒˆํ˜ธ, ํŽ˜์ด์ง€ ๋‹น ๋ฐ์ดํ„ฐ ๊ฐœ์ˆ˜, ์ด์ „ ํŽ˜์ด์ง€, ๋‹ค์Œ ํŽ˜์ด์ง€ ๋“ฑ์˜ ์ •๋ณด๋ฅผ ํฌํ•จํ•˜๊ณ  ์žˆ๋‹ค.
    • ์ด ํŽ˜์ด์ง€ ์ˆ˜๋ฅผ ๊ณ„์‚ฐํ•œ ํ›„์— ๋‹ค์Œ ํŽ˜์ด์ง€๊ฐ€ ์žˆ๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ํŒ๋‹จํ•œ๋‹ค.
  • Slice
    • Page ๊ฐ์ฒด์™€ ์œ ์‚ฌํ•˜์ง€๋งŒ ๋‹ค์Œ ํŽ˜์ด์ง€๊ฐ€ ์žˆ๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ํŒ๋‹จํ•˜๋Š” ๋ฐฉ๋ฒ•์ด ๋‹ค๋ฅด๋‹ค.
    • ํŽ˜์ด์ง€ ๋‹น ๋ฐ์ดํ„ฐ ๊ฐœ์ˆ˜ +1 ๊ฐœ์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์กฐํšŒํ•˜๊ณ  ๋ฐ์ดํ„ฐ๊ฐ€ ํŽ˜์ด์ง€ ๋‹น ๋ฐ์ดํ„ฐ ๊ฐœ์ˆ˜์™€ ๊ฐ™๊ฑฐ๋‚˜ ์ž‘์œผ๋ฉด ๋‹ค์Œ ํŽ˜์ด์ง€๊ฐ€ ์—†๊ณ  ๊ทธ๋ ‡์ง€ ์•Š์€ ๊ฒฝ์šฐ ๋‹ค์Œ ํŽ˜์ด์ง€๊ฐ€ ์žˆ๋‹ค๊ณ  ํŒ๋‹จํ•œ๋‹ค.

๐Ÿ‘€ webRTC

  • ์›น ๊ธฐ์ˆ ์„ ์ด์šฉํ•ด ๋ธŒ๋ผ์šฐ์ € ๊ฐ„ ์˜ค๋””์˜ค, ๋น„๋””์˜ค, ๋ฐ์ดํ„ฐ ๋“ฑ์„ ์‹ค์‹œ๊ฐ„์œผ๋กœ ์ฃผ๊ณ ๋ฐ›์„ ์ˆ˜ ์žˆ๋Š” ๊ธฐ์ˆ 
  • ํ”Œ๋Ÿฌ๊ทธ์ธ์ด๋‚˜ ์•ฑ์„ ๋‹ค์šด๋กœ๋“œํ•˜๊ฑฐ๋‚˜ ์„ค์น˜ํ•˜์ง€ ์•Š์•„๋„ ๋ธŒ๋ผ์šฐ์ € ๋‚ด์—์„œ ์˜ค๋””์˜ค, ๋น„๋””์˜ค, ๋ฐ์ดํ„ฐ ๋“ฑ์„ ๊ณต์œ ํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ๋ธŒ๋ผ์šฐ์ € ๊ฐ„ P2P ํ†ต์‹ ์„ ํ•œ๋‹ค.

๐Ÿ‘€ hadoop

  • ๋Œ€์šฉ๋Ÿ‰ ๋ฐ์ดํ„ฐ๋ฅผ ๋ถ„์‚ฐ ์ฒ˜๋ฆฌํ•˜๊ธฐ ์œ„ํ•œ ์ž๋ฐ” ๊ธฐ๋ฐ˜์˜ ์˜คํ”ˆ์†Œ์Šค ํ”„๋ ˆ์ž„์›Œํฌ
  • HDFS์™€ MapReduce๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ๋‹ค.
  • ์—ฌ๋Ÿฌ ๋Œ€์˜ ์„œ๋ฒ„์— ๋ฐ์ดํ„ฐ๋ฅผ ๋ถ„์‚ฐ ์ €์žฅํ•˜๊ณ  ์ฒ˜๋ฆฌํ•˜๋ฉฐ, ์•ˆ์ •์„ฑ๊ณผ ํ™•์žฅ์„ฑ์ด ๋†’๋‹ค.

๐Ÿ‘€ spark

  • ๋Œ€์šฉ๋Ÿ‰ ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ๋ฅผ ์œ„ํ•œ ํ”„๋ ˆ์ž„์›Œํฌ
  • ์ธ๋ฉ”๋ชจ๋ฆฌ ๊ธฐ๋ฐ˜์˜ ๋น ๋ฅธ ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ๊ฐ€ ๊ฐ€๋Šฅํ•˜๋‹ค.
  • ๋Œ€๊ทœ๋ชจ ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ, ๋จธ์‹ ๋Ÿฌ๋‹, ์‹ค์‹œ๊ฐ„ ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ ๋“ฑ์— ์‚ฌ์šฉ๋˜๋ฉฐ, ํ•˜๋‘ก๊ณผ ํ•จ๊ป˜ ์‚ฌ์šฉ๋˜์–ด ๋”์šฑ ๊ฐ•๋ ฅํ•œ ๊ธฐ๋Šฅ์„ ์ œ๊ณต
  • ํฌ๋กค๋งํ•œ ํ•ญ๊ณต๊ถŒ ๋ฐ์ดํ„ฐ๊ฐ€ ๋งค์ผ 20๋งŒ ๊ฐœ ์ด์ƒ์œผ๋กœ ์ด ๋ฐ์ดํ„ฐ๋ฅผ ์ •์ œํ•˜๊ณ , mysql์— ์ €์žฅํ•ด์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— spark๋ฅผ ์‚ฌ์šฉํ•˜์˜€๋‹ค.

๐Ÿ‘€ pyspark๋ฅผ ์„ ํƒํ•œ ์ด์œ 

  • ํŒŒ์ด์ฌ์€ ๊ฐ„๊ฒฐํ•˜๊ณ  ์ฝ๊ธฐ ์‰ฌ์šด ๋ฌธ๋ฒ•์„ ๊ฐ€์ง€๊ณ  ์žˆ์–ด ์‰ฝ๊ฒŒ ๋ฐฐ์šธ ์ˆ˜ ์žˆ๋‹ค.
  • ๋‹ค์–‘ํ•œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์–ด ๋ฐ์ดํ„ฐ ๋ถ„์„์— ์œ ๋ฆฌํ•˜๋‹ค. (ex. pandas)
  • ์Šค์นผ๋ผ, ์ž๋ฐ”์— ๋น„ํ•ด ๋‹ค์–‘ํ•œ ๊ฐœ๋ฐœ์ž ์ปค๋ฎค๋‹ˆํ‹ฐ๊ฐ€ ํ™œ๋ฐœํ•˜๊ฒŒ ์šด์˜๋˜์–ด ๋ฌธ์ œ ํ•ด๊ฒฐ ๋ฐ ์ •๋ณด ๊ณต์œ ๊ฐ€ ์‰ฝ๋‹ค.

๐Ÿ‘€ JIRA๋ฅผ ์‚ฌ์šฉํ–ˆ์„ ๋•Œ ์žฅ์ 

  • ํ”„๋กœ์ ํŠธ์˜ ์ „์ฒด์ ์ธ ์ƒํ™ฉ์„ ํŒŒ์•…ํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ํŒ€์›์˜ ์ง„ํ–‰์ƒํ™ฉ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์–ด, ์—…๋ฌด ๋ถ„๋‹ด์„ ์‰ฝ๊ฒŒ ์กฐ์ •ํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ๋งก์€ ์—…๋ฌด์— ๋Œ€ํ•œ ์ง„ํ–‰ ์ƒํ™ฉ์„ ์‹ค์‹œ๊ฐ„์œผ๋กœ ๊ณต์œ ํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ๋ฒˆ๋‹ค์šด ์ฐจํŠธ์™€ ๊ฐ™์€ ๋ณด๊ณ ์„œ๋ฅผ ํ™œ์šฉํ•ด ํ”„๋กœ์ ํŠธ ์ง„ํ–‰ ์ƒํ™ฉ์„ ์‹œ๊ฐ์ ์œผ๋กœ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.
728x90