λ³Έλ¬Έ λ°”λ‘œκ°€κΈ°
πŸ›  Engineering/각쒅 μš©μ–΄

Batch processing (Batch job)

by dev-jaesoon 2022. 8. 20.

λ“±μž₯ λ°°κ²½

    Batch processing 은 μ‚¬μš©μž(개발자)κ°€ Punched card에 ν”„λ‘œκ·Έλž¨μ„ μž…λ ₯ν•˜λŠ” Mainframe 컴퓨터 μ‹œλŒ€(초기의 μ»΄ν“¨ν„°λŠ” ν•œ λ²ˆμ— ν•˜λ‚˜μ˜ ν”„λ‘œκ·Έλž¨λ§Œ μ‹€ν–‰ν•  수 μžˆμ—ˆμŒ)에 μ‹œμž‘λ˜μ—ˆλ‹€. μ΄λ ‡κ²Œ ν”„λ‘œκ·Έλž˜λ°λœ Punched card λ₯Ό μ‚¬μš©μžκ°€ System operator μ—κ²Œ μ œκ³΅ν•˜κ³ , Syteme operator λŠ” 이λ₯Ό 일정 μˆœμ„œ, μ‹œκ°„μ— 맞좰 컴퓨터에 κ³΅κΈ‰ν–ˆλ‹€. Batch job 이 제좜되면 이 job 듀은 queue λŒ€κΈ°μ—΄μ— λ“€μ–΄κ°€κ³ , System 은 처리 λŒ€κΈ° 쀑인 μ—¬λŸ¬κ°œμ˜ μž‘μ—…μ„ μ‹œκ°„ μˆœμ„œ λ˜λŠ” μš°μ„  μˆœμœ„μ— 따라 ν”„λ‘œκ·Έλž¨μ„ μ‹€ν–‰ν•΄ κ²°κ³Όλ₯Ό 좜λ ₯ν–ˆλ‹€.

Batch processing

  졜근 컴퓨터가 λ°œμ „ν•˜λ©΄μ„œ, Batch 의 μ •μ˜μ™€ μ‚¬μš©μ€ 많이 λ³€ν™”ν•˜μ˜€λ‹€. μ΅œκ·Όμ—λŠ” μ •κΈ°μ μœΌλ‘œ μˆ˜ν–‰ν•΄μ•Όν•˜λŠ” μž‘μ—…μ„ μžλ™ν™”ν•˜κ±°λ‚˜, λŒ€λŸ‰ 데이터λ₯Ό μΌκ΄„μ μœΌλ‘œ μ²˜λ¦¬ν•˜λŠ”λ° μ‚¬μš©λœλ‹€.

ꡬ쑰

    Batch jobs 은 개발자의 좔가적인 μž‘μ—… 없이 μ‹€ν–‰λ˜λŠ” Scheduled program 이닀. λŒ€κ·œλͺ¨μ˜ ν”„λ‘œκ·Έλž¨, μ„œλΉ„μŠ€μ—μ„œλŠ” 이런 jobs 듀은 ν‰μ†Œμ—λŠ” μž‘μ—… λŒ€κΈ°μ—΄μ— μžˆλ‹€κ°€ 주둜 컴퓨터가 idle μƒνƒœμΈ μ €λ…μ΄λ‚˜ 주말에 μ‹€ν–‰λ˜λŠ” κ²½μš°κ°€ λ§Žλ‹€. Batch jobs λŠ”

  1. νŠΉμ •ν•œ μ‹œκ°„μ— μ‹€ν–‰λ˜μ–΄
  2. λŒ€λŸ‰μ˜ 데이터λ₯Ό μ²˜λ¦¬ν•˜κ³ ,
  3. μΌκ΄„μ μœΌλ‘œ μ²˜λ¦¬ν•˜κΈ°

λ•Œλ¬Έμ—, μ—…λ¬΄μ˜ νš¨μœ¨μ„±μ„ μ¦λŒ€ν•  수 μžˆλ‹€.

ν™œμš© λ²”μœ„

    주둜 은행 μ •μ‚°μ‹œμŠ€ν…œ, κΈ‰μ—¬ λͺ…μ„Έμ„œ, μ„±μ μ²˜λ¦¬μ™€ 같이 주기적이고 처리 μ‹œκ°„μ΄ μ˜€λž˜κ±Έλ¦¬λŠ” 업무λ₯Ό 일괄 μ²˜λ¦¬ν•˜λŠ”λ° μ‚¬μš©λœλ‹€. μ‹€μ‹œκ°„μœΌλ‘œ μš”μ²­μ΄ μžˆμ„ λ•Œ λ§ˆλ‹€ μ²˜λ¦¬ν•˜μ§€ μ•Šμ•„λ„ λ˜λŠ” μ„œλΉ„μŠ€μ— 주둜 μ μš©λœλ‹€. μ§€κΈˆ μΌν•˜κ³  μžˆλŠ” λΆ€μ„œμ—μ„œλŠ” 주둜 Crontab 을 μ‚¬μš©ν•˜μ—¬ DB 인덱싱, Sitemap 생성, μ‹€ν–‰ μ‹œκ°„μ΄ 였래 κ±Έλ¦¬λŠ” Query 처리 등에 μ‚¬μš©ν•˜κ³  μžˆλ‹€.

 

참고자료

'πŸ›  Engineering > 각쒅 μš©μ–΄' μΉ΄ν…Œκ³ λ¦¬μ˜ λ‹€λ₯Έ κΈ€

Web Application Architecture μš©μ–΄ λͺ¨μŒμ§‘  (0) 2022.10.02

λŒ“κΈ€