이것저것 정리 ....
·
개발중/참고 기능
가상 쓰레드 정리하는 방법✅ 메모리 비용을 처리하기 위해 어떤식으로 접근 했는가→ Spring Context의 메모리를 직접 사용하는 방식은 장기적으로 부담이 된다고 판단해, 대신 Redis 기반 In-memory Cache를 도입해 메모리 관리를 분산시켰습니다. 특히 읽기 빈도가 높고 데이터 변경 가능성이 낮은 영역에 대해서는 Spring Cache를 함께 적용해, DB 조회를 줄이고 전체 시스템 부하를 분산하는 방식으로 접근했습니다. ✅ Spring Boot Annotation→ @Data@Getter, @Setter, @RequiredArgsConstructor, @ToString, @EqualsAndHashCode 어노테이션을 모두 가짐 → @ SpringBootApplication애플리케이..
Java, MySQL, Spring Boot 버전별 특징
·
개발중/참고 기능
Java 버전별 특징🔧 Java 8✅ 람다 표현식 (Lambda Expression)→ 함수를 간단한 식으로 표현해, 익명 클래스나 반복 로직을 더 간결하게 작성할 수 있음list.forEach(s -> System.out.println(s)); ✅ Stream API→ 컬렉션 처리에서 반복문 대신 선언적 방식(map, filter, reduce 등)으로 데이터 흐름을 처리할 수 있음list.stream().filter(s -> s.length() > 3).collect(Collectors.toList()); ✅ Optional 클래스→ null 처리 안전성을 높이기 위해 도입된 객체 래퍼 클래스→ NullPointerException 방지에 도움이 됨Optional name = Optional...
🎓 첫 대학원 1학기 후기
·
직장인 대학원/기록
2025년 3월에 대학원에 입학해서 이제 막 1학기를 마무리하고 여름방학이다 .입학 전에는 퇴근 후 온전히 나만의 시간이 있었지만, 그게 얼마나 소중한 시간이었는지 알지 못했다. 당연하게 여겼던 것 같다.대학원에 다니기 시작하면서, 회사와 병행하느라 힘든 날을 보냈고, 방학 때 입학 전처럼 여유로운 삶을 다시 누리니 감사함을 느끼는 중이다. ☀️ 여름방학이라고 마냥 쉬는 건 아님 물론 방학이라고 해서 아무것도 안 하는 건 아니다.논문을 쓸 수 있는 조건 중 하나가 TOEIC 점수 취득인데, 그 요건을 충족하기 위해 이번 여름방학을 활용하고 있다.막 엄청 열심히 하는 건 아니지만, 그래도 나름대로 꾸준히 하고 있는 중이다. 여름학기를 수강하는 분들도 있는데, 대부분 빨리 졸업하고 싶은 사람들이 선택하는 듯..
캐글 스터디 2회차 - EDA(탐색적 데이터 분석)
·
직장인 대학원/캐글 스터디
오늘은 데이터 분석의 기본 EDA(Exploratory Data Analysis, 탐색적 데이터 분석) 에 대해 스터디한 내용을 정리해보려고 해요.단순히 그래프 몇 개 그리는 게 아니라, 데이터의 상태를 꼼꼼히 점검하고, 인사이트를 얻는 과정이라는 걸 다시 한 번 느꼈습니다. 1. Basic Analysis 코드 정리데이터를 받으면 가장 먼저 실행하는 기본 코드들! 아래 코드들은 판다스 DataFrame을 기준으로 설명합니다.df_train.head() # 상위 5개 행 출력df_train.tail() # 하위 5개 행 출력df_train.shape # (행 개수, 열 개수) 출력df_train.info() # 각 열의 데이터 타입과 결측..
Apache Airflow에서의 Task Group 활용법
·
개발중/AirFlow
Apache Airflow는 복잡한 데이터 워크플로우를 자동화하는 데 매우 유용한 도구입니다. 이 글에서는 Airflow의 Task Group을 효과적으로 활용하는 방법에 대해 알아보겠습니다. 1. Task Group이란?Task Group은 여러 태스크를 논리적으로 묶어주는 역할을 합니다. 이를 통해 복잡한 워크플로우를 더 작은 단위로 나누어 관리할 수 있습니다. Task Group 내의 태스크들은 순차적 또는 병렬로 실행될 수 있으며, >> 또는 >>> 연산자를 사용하여 태스크 간의 종속성을 정의할 수 있습니다. 2. Task Group의 사용 방법Step 1: TaskGroup 객체 생성여기서 dag은 이미 정의된 DAG 객체입니다. from airflow.models import TaskGroup..
[Airflow] 🚀 고객사별 병렬 실행 + 내부 순차 작업 처리하기
·
개발중/AirFlow
Airflow에서 다수의 고객사에 대해 각각 배치를 수행하는 경우, "고객사 간은 병렬로 처리하면서, 고객사 내부의 작업은 순차로 실행"되는 구조가 필요할 수 있습니다. ✨ 목표 시나리오고객사별 작업 목록1 번 고객사에 1,2,3,4 작업이 대기중이다.13 번 고객사에 10,20 작업이 대기중이다. 14 번 고객사에 100,200 작업이 대기중이다. { 1: [1, 2, 3, 4], 13: [10, 20], 14: [100, 200],} 기대 실행 구조1번 고객사의 첫번째 작업과 13번 고객사의 첫번째 작업과 100번 고객사의 첫번째 작업을 병렬처리 한다.각 고객사의 첫번째 작업이 끝나면 고객사별 다음 작업을 순차적으로 실행한다.Company_Batch_1_1 ➞ Company_Batch..
[R] R 데이터 시험 예상 문제
·
직장인 대학원/R
📘 문제 1. 다음 중 append() 함수에 대한 설명으로 옳은 것은 무엇인가요?A. 새로운 행렬을 생성한다B. 리스트에 이름을 붙인다C. 벡터에 새로운 값을 삽입한다D. 행렬을 전치(transpose)한다 더보기C. 벡터에 새로운 값을 삽입한다 x append(x, 99, after = 2) # [1] 1 2 99 3 📘 문제 2. 아래 코드의 실행 결과로 올바른 것은 무엇인가요?fruit A. "orange"B. 3C. "3"D. 오류 발생 더보기B. 3 출력 결과orange 3 📘 문제 3. 다음 중 matrix(1:6, nrow = 2, byrow = TRUE)의 결과로 올바른 것은?A. [,1] [,2] [,3][1,] 1 3 5[2,] 2 ..
[Airflow] 🎯 Airflow에서 사용자별 DAG 접근 제어 + REST API로 계정 생성까지!
·
개발중/AirFlow
요즘 Airflow를 쓰면서 하나하나 세팅을 직접 해보고 있는데,그 중에서도 "사용자마다 볼 수 있는 DAG을 제한하고 싶다"는 니즈가 생겼다.그리고 아예 REST API로 계정도 자동으로 만들 수 있게 해보자! 라는 마음으로 삽질 시작! 🔐 사용자별 DAG 권한 제어는 어떻게 하지?Airflow는 Roles라는 개념으로 사용자 권한을 나눈다.기본적으로는 다음과 같다:Admin: 모든 DAG, 모든 권한 가능User: 할당된 DAG만 볼 수 있음(추가로 Viewer, Op, 커스텀 Role도 만들 수 있음)DAG에 접근 제어를 하려면 DAG 파일에 아래처럼 access_control을 명시해주면 된다. # dag_example.pyaccess_control = { "example_dag_id": ..