mac os 에서 Homebrew 설치 시 발생하는 PATH 문제 해결

==> Updating Homebrew...
Warning: /opt/homebrew/bin is not in your PATH.
  Instructions on how to configure your shell for Homebrew
  can be found in the 'Next steps' section below.

 

 

문제 해결 방법

발생된 에러 '/opt/homebrew/bin is not in your PATH' 는 해당 경로 등록함으로 쉽게 해결할 수 있습니다.

 

1. 터미널에서 아래 명령어를 실행합니다.

echo 'export PATH=/opt/homebrew/bin:$PATH' >> ~/.zshrc

 

2. 확인 (생략 가능)

vi ./.zshrc

 

3.  명령어 실행으로 zshrc 쉘 환경을 재로드

source ~/.zshrc

 

 

4. brew 버전 확인

brew --version

·스프링 배치(Spring Batch)는 대용량 처리와 반복적인 작업을 수행하는데 사용되는 자바 및 스프링 기반으로 프레임워크입니다.

 

🤔 스프링 배치를 사용하는 이유는 무엇일까요?

1. 대용량 데이터 처리 : 스프링 배치는 대용량 데이터 처리에 특화되어 있습니다. 대용량 데이터를 일괄적으로 읽고(Read), 처리(Process), 쓰기(Write)가 가능합니다.

👉 처리와 쓰기에는 데이터 가공 로직이 포함될 수 있습니다.

2. 반복 작업 자동화 : 스프링 배치는 주기적으로 실행되는 반복적인 작업을 자동화할 수 있습니다. 

3. 트랜잭션 : 스프링 배치는 트랜잭션 관리를 지원하기 때문에 안정적인 데이터 처리를 보장할 수 있습니다. 장애 발생 및 프로그램 중단 상황에서도 작업의 일관성을 유지할 수 있습니다.

4. 장애 복구 : 스프링 배치는 장애 및 프로그램 중단 이후 실패한 작업(Job)을 재시작할 수 있는 기능을 제공합니다. 이를 통해 시스템의 안정성을 향상시킬 수 있습니다.

5. 모니터링 및 관리 : 스프링 배치는 작업의 모니터링 및 관리를 위한 다양한 기능을 제공하고 있습니다.

 

 

🤔 스프링 배치의 대표 작업 3가지

  • Read : 데이터를 읽어오는 작업을 수행합니다. 외부시스템(데이터베이스, 파일, 큐 등)에서 데이터를 읽어옵니다.
    • FlatFileItemReader : 텍스트 파일을 읽으며, 각 라인은 하나의 아이템으로 처리됩니다.
    • JdbcCursorItemReader : JDBC를 사용해서 DB 데이터를 읽으며. 커서를 이용하므로 대용량 데이터 처리에 적합합니다.
    • JpaPagingItemReader : JPA를 사용해서 DB 데이터를 읽으며, 페이징을 사용하여 대용량 데이터를 효율적으로 처리할 수 있습니다.
    • JmsItemRader : JMS(Java Message Service)를 사용하여 메시지 큐에서 데이터를 읽어오며, 메시지 큐에 들어있는 메시지를 하나씩 읽어올 수 있습니다.
    • IteemReaderAdapter : 사용자 정의 Reader를 스프링 배치의 ItemReader 인터페이스와 연결해주는 어댑터 입니다. 기존 Reader를 재사용할 때 유용합니다.
    • StoredProcedureItemReader : 저장 프로시저를 사용하여 DB 데이터를 읽어옵니다.
    • MultiResourceitemReader : 여러 개의 리소스(파일 등)에서 데이터를 읽어옵니다.
  • Process : 읽어온 데이터를 가공하거나 변환합니다.
  • Writer : 가공된 데이터를 쓰거나 저장합니다. 이 단계에서는 DB 테이블에 데이터를 저장하거나, 파일로 출력하거나, 메시지를 저장하는 등의 작업을 수행합니다. 
    • JdbcBatchItemWriter : JDBC를 사용하여 데이터를 DB에 저장합니다.
    • FlatFileItemWriter : 텍스트 파일에 데이터를 쓰는 Writer 입니다. CSV, XML, JSON 등 다양한 형식의 파일을 생성할 수 있습니다.
    • JpaItemWriter : JPA를 사용하여 DB에 저장합니다.
    • CompositeItemWriter : 여러 개의 Writer를 조합하여 사용할 수 있습니다. 
    • MultiResourceItemWriter : 여러 개의 리소스(파일 등)를 사용할 수 있습니다.
    • ItemWriterAdapter : 사용자 정의 Writer를 스프링 배치의 ItemWriter 인터페이스와 연결해주는 어댑터입니다.

 

 

🤔 스프링 배치의 아키텍처

 

 

  • Application : 이 모듈은 스프링 배치 어플리캐이션이라고도 하며 스프링 프레임워크를 기반으로 하는 배치 어플리케이션을 개발하는데 필요한 기능들을 제공합니다. 이 모듈은 배치 작업의 구성, 실행, 모니터링, 관리 등의 기능을 제공합니다.
  • Batch Core : 이 모듈은 스프링 배치의 핵심 기능을 제공합니다. 이 모듈은 배치 작업의 실행 흐름을 관리하고, 각 단계(Read, Process, Write) 등의 구현체를 포함하고 있습니다. 이를 사용하여 실제 데이터 처리를 수행합니다. 그리고 배치 작업의 잡(Step), 잡 인스턴스(Job Instance), 스텝(Step) 등의 개념을 정의하고 이를 실행하며, 트랜잭션 관리와 예외 처리 등의 기능도 포함합니다.
  • Batch Infrastructure : 이 모듈은 스프링 배치 기반 인프라스트럭처를 제공합니다. Reader, Processor, Writer 등의 구현체를 포함하고 있으며, 이를 사용해서 실제 데이터 처리를 수행합니다. 또한 트랜잭션 관리, 데이터 엑세스, 메시지 등의 기능도 제공합니다.

 

 

 

안녕하세요. 대학원 신입생 모집 기간을 맞아 제가 졸업한 단국대학원에 대해 공유 드립니다.

저는 정보융합기술·창업대학원 IT컨버전스학과 졸업생 입니다.

(2021년 후기 입학 및 2023년 7월 졸업)

 

# 제가 왜 대학원 진학을 결정했는지 말씀 드립니다.

1. 최종 학력 갱신

2. 휴먼 네트워크

3. 논문 작성

4. 전공 추가 학습

최종 학력을 갱신함으로써 자신감을 얻었고 앞으로 인생에 더 많은 기회를 얻을 수 있을거라 생각합니다. 또한 개발자로 재직 중인 상태에서 더 다양한 IT 실무자와 다른 분야의 실무자를 많이 만날 수 있었습니다. 그리고 논문을 작성함으로써(피똥 쌌지만..) 인생의 버킷 리스트도 달성했습니다. 물론 관련 공부도 많이 했습니다.

 

# 왜 단국대학교를 선택했는지 말씀드립니다.

1. 토요일 수업 진행

 - 대부분의 대학원은 평일 2~3회 수업이 진행됩니다. 하지만 단국대학원은 주말에 3교시를 몰아서 수강하기 때문에 업무에 지장 받지 않는 장점이 있습니다.

2. 4학기 졸업

 - 대부분의 대학원은 5학기 과정으로 진행됩니다. 한 학기 빨리 졸업할 수 있는 장점이 있습니다.

3. 등록금 지원

 - 일반 기업 재직(20%) 와 추가 장학금(20%) 총 40%의 학비를 지원받을 수 있습니다. 한 학기 약 600만원 의 등록금 중 240만 원 가까운 금액을 지원받을 수 있고 졸업까지 최대 2000만 원의 학비만 납부하는 장점이 있습니다.

4. 가까운 거리와 교통

 - 단국대학교는 경기도 용인시 수지구에 있습니다. 죽전역과 가까우며 학교 내부에 버스 종점이 있기 때문에 접근성이 매우 좋습니다.

 - 저는 대부분 자차를 이용했는데 주차장도 넉넉하고 주차 비용도 합리적입니다. (한 학기 주말 정기권 3~4만 원 or 일일 4천 원)

5. 젊어지는 연령대

 - 대학원 학생들은 기업 사장님들이 많아 연령대가 높다는 인식이 있었습니다. 하지만 대부분 제 또래(30대 초반)이며 학기가 지날수록 점점 더 젊어진다는 느낌을 받았습니다. 하지만  

6. 다양한 동문

 - 휴먼 네트워크 구축도 대학원 진학의 목표 였습니다. 저는 과대표도 2학기 수행 했는데, 덕분에 동문 및 학우 분들과 가깝게 지낼 수 있었습니다.

 

# 단국대를 졸업하며 느꼈던 큰 장점을 말씀 드립니다.

교수님들의 수준이 정말 높다고 생각됩니다.

  감히 제가 교수님들을 평가할 수 있겠냐만은, 입학을 고려하시는 분들께 단언할 수 있습니다. 대학원은 단순히 커리큘럼에 있는 내용만 학습하는 곳이 아니라고 생각 됩니다. 실무/이론 등 교수님들께서 갖고 게신 정말 많은 지식들을 얻어가실 수 있습니다.

 

# 마지막으로..

대학원을 고민하시는 분들 모두 다양한 목적과 고려 사항이 있을 것으로 보입니다. 여러 가지 고민을 하실텐데 수도권에 계시면 단국대학원이 좋은 선택이 될 수 있을것 같습니다 ^^

 

 

 

 

[정보융합기술·창업대학원]

https://cms.dankook.ac.kr/web/gict

 

[정보융합기술·창업대학원 공지사항]

https://cms.dankook.ac.kr/web/gict/-23

IT 컨버전스 학과

+ Recent posts