본문 바로가기

Boaz30

[CS 전공지식 #17] 챕터5. 자료 구조 목차5.1 복잡도5.2 선형 자료 구조5.3 비선형 자료 구조 챕터5. 자료 구조자료구조 data structure: 효율적으로 데이터를 관리, 수정, 삭제, 탐색, 저장할 수 있는 데이터 집합본 책 C++ 기반으로 자료 구조 설명 예정 5.1 복잡도복잡도: 시간 복잡도, 공간 복잡도 5.1.1 시간 복잡도시간 복잡도: 문제를 해결하는 데 걸리는 시간과 입력의 함수 관계빅오 표기법:입력 범위 n을 기준으로 해서 로직이 몇 번 반복되는지 나타내느 것가장 영향을 많이 끼치는 항의 상수 인자를 빼고 나머지 항을 없앤 것$10n^2+n$ → $O(n^2)$시간 복잡도의 존재 이유: 효율적인 코드로 개선하는 데 쓰이는 척도 5.1.2 공간 복잡도공간 복잡도: 프로그램을 실행시켰을 때 필요로 하는 자원 공간의 .. 2025. 4. 16.
[강화학습 #2] 챕터2. 마르코프 결정 과정 목차챕터 2. 마르코프 결정 과정2.1 마르코프 결정 과정 (MDP)이란?2.2 환경과 에이전트를 수식으로2.3 MDP의 목표2.4 MDP 예제  챕터 2. 마르코프 결정 과정밴디트: 에이전트 행동에 따라 문제의 설정 변화 X실제: 에이전트 행동에 따라 문제의 설정 변화 O마르코프 결정 과정 Markov Decision Process (MDP)  2.1 마르코프 결정 과정 (MDP)이란?결정 과정: 에이전트가 환경과 상호작용하면서 행동을 결정하는 과정MDP 문제 예시: 그리드 월드에이전트 agent: 로봇주변 environment: 환경보상 reward: 사과를 얻을 때 +1, 폭탄을 얻을 때 -2상태 state: 에이전트의 행동에 따라 에이전트가 처하는 상황이 달라짐타임 스텝 time step:에이전트.. 2025. 4. 7.
[강화학습 #1] 챕터1. 밴디트 문제 BOAZ 학기 중 스터디로 강화학습 스터디도 진행 중인데,정리한 내용을 차차 올려보려고 합니다. 졸업 주제로 강화학습을 접목할 예정이라 보고 있는데책이 워낙 잘 쓰여져서 그런지 개념이 잡히고 있는 느낌..! 노션에 정리한 기록을 옮기는 거라.. 식이 다 잘 들어갈지 걱정이 되는군요...강화학습 차근차근 공부하실 분들께 이 책 추천합니다 :)   목차1.1 머신러닝 분류와 강화 학습1.2 밴디트 문제1.3 밴디트 알고리즘1.4 밴디트 알고리즘 구현1.5 비정상 문제  챕터 1. 밴디트 문제1.1 머신러닝 분류와 강화 학습머신러닝 분류: 지도 학습, 비지도 학습, 강화 학습지도 학습 supervised learning입력 (문제)과 출력(정답)을 쌍으로 묶은 데이터‘정답 레이블’ 이 존재사람의 손으로 정답 .. 2025. 4. 7.
[Data Engineering Zoomcamp #2] GCP, Terraform https://github.com/DataTalksClub/data-engineering-zoomcamp GitHub - DataTalksClub/data-engineering-zoomcamp: Data Engineering Zoomcamp is a free nine-week course that covers the fundamentData Engineering Zoomcamp is a free nine-week course that covers the fundamentals of data engineering. - DataTalksClub/data-engineering-zoomcampgithub.com   목차🌏 TerraformIntroduction Terraform: Concepts and Ove.. 2025. 3. 31.
[Data Engineering Zoomcamp #1] Docker, SQL 보아즈 학기 스터디로 Data Pipeline 스터디를 시작하게 되었습니다.Data engineering zoomcamp 라는 깃허브&유튜브를 중점적으로 진행 예정이예요.공부한 기록을 업로드하려고 합니다.https://github.com/DataTalksClub/data-engineering-zoomcamp GitHub - DataTalksClub/data-engineering-zoomcamp: Data Engineering Zoomcamp is a free nine-week course that covers the fundamentData Engineering Zoomcamp is a free nine-week course that covers the fundamentals of data enginee.. 2025. 3. 28.
[CS 전공지식 #16] 챕터4-6~7. 조인과 조인의 원리 목차4.6 조인의 종류4.7 조인의 원리4.7.1 중첩 루프 조인 NLJ, Nested Loop Join4.7.2 정렬 병합 조인4.7.3 해시 조인 챕터4. 데이터베이스 4.6 조인의 종류조인 join하나의 테이블이 아닌 두 개 이상의 테이블을 묶어서 하나의 결과물을 만드는 것MySQL에서는 JOIN이라는 쿼리, MongoDB에서는 lookup 이라는 쿼리로참고로, MongoDB 사용 시, lookup 최대한 사용 XMongoDB는 조인 연산에 대해 관계형 데이터베이스보다 성능이 떨어짐여러 테이블 조인하는 작업 많을 경우MongoDB보다는 관게형 데이터베이스 사용 필요조인의 종류: 내부 조인, 왼쪽 조인, 오른쪽 조인, 합집합 조인 4.6.1 내부 조인두 테이블 간에 교집합 4.6.2 왼쪽 조인테이블 .. 2025. 2. 24.
[CS 전공지식 #15] 챕터4-4~5. 데이터베이스의 종류와 인덱스 목차4.4 데이터베이스의 종류4.4.1 관계형 데이터베이스4.4.2 NoSQL 데이터베이스4.5 인덱스4.5.1 인덱스의 필요성4.5.2 B-트리4.5.3 인덱스 만드는 방법4.5.4 인덱스 최적화 기법 챕터4. 데이터베이스 4.4 데이터베이스의 종류 4.4.1 관계형 데이터베이스관계형 데이터베이스 RDBMS행과 열을 가지는 표 형식 데이터를 저장하는 형태의 데이터베이스SQL을 써서 조작. 각각의 제품에 특화시킨 SQL 사용MySQL대부분의 운영체제와 호환 가능, 가장 많이 사용되는 데이터베이스스토리지 엔진: 모듈식 아키텍처로 쉽게 교체 가능데이터 웨어하우징, 트랜잭션 처리, 고가용성 처리에 강점스토리지 엔진 위에는 커넥터 API 및 서비스 계층을 통해 MySQL 데이터베이스와 쉽게 상호작용 가능쿼리 캐.. 2025. 2. 24.
[CS 전공지식 #14] 챕터4-3. 트랜잭션과 무결정 목차4.3 트랜잭션과 무결정4.3.1 트랜잭션4.3.2 무결성 챕터4. 데이터베이스 4.3 트랜잭션과 무결정 4.3.1 트랜잭션트랜잭션데이터베이스에서 하나의 논리적 기능을 수행하기 위한 작업의 단위여러 개의 쿼리들을 하나로 묶는 단위특징: 원자성, 일관성, 독립성, 지속성 = ACID 특징원자성 atomicity트랜잭션과 관련된 일이 모두 수행되었거나 되지 않았거나를 보장하는 특징all or nothing예) 트랙잭션 커밋 → 문제 발생 → 롤백 → 그 이후에 모두 수행되지 않음을 보장트랜잭션 단위로 여러 로직들을 묶을 때 외부 API를 호출하는 것이 있으면 X커밋 commit:여러 쿼리가 성공적으로 처리되었다고 확정하는 명령어트랜잭션 단위로 수행, 변경된 내용이 모두 영구적으로 저장되는 것커밋이 수행 .. 2025. 2. 24.
[CS 전공지식 #13] 챕터4-2. ERD와 정규화 과정 목차4.2 ERD와 정규화 과정4.2.1 ERD의 중요성4.2.2 예제로 배우는 ERD4.2.3 정규화 과정  챕터4. 데이터베이스 4.2 ERD와 정규화 과정ERD Entity Relationship Diagram데이터베이스를 구축할 때 가장 기초적인 뼈대 역할릴레이션 간의 관계를 정의한 것서비스 구축 시 가장 먼저 신경 써야 할 부분 4.2.1 ERD의 중요성ERD: 시스템의 요구 사항을 기반으로 작성ERD를 기반으로 데이터베이스 구축데이터베이스 구축 이후에도 디버깅 또는 비즈니스 프로세스 재설계 필요한 경우에 설계도 역할 담당관계형 구조로 표현할 수 있는 데이터 구성에 유용단점) 비정형 데이터 충분히 표현 불가 4.2.2 예제로 배우는 ERD영업 부서의 ERD영업 사원: 0~n명의 고객 관리고객: .. 2025. 2. 24.
[CS 전공지식 #12] 챕터4-1. 데이터베이스의 기본 목차4.1 데이터베이스의 기본4.1.1 엔티티4.1.2 릴레이션4.1.3 속성4.1.4 도메인4.1.5 필드와 레코드4.1.6 관계4.1.7 키 챕터4. 데이터베이스 4.1 데이터베이스의 기본데이터베이스 DB, DataBase일정한 규칙, 혹은 규약을 통해 구조화 되어 저장되는 데이터의 모음실시간 접근과 동시 공유 가능DBMS DataBase Management System해당 데이터베이스를 제어, 관리하는 통합 시스템특정 DBMS마다 정의된 쿼리 언어를 통해 삽입, 삭제, 수정, 조회 등 수행 가능데이터베이스 위에 DBMS, 그 위에 응용 프로그램예) MySQL 이라는 DBMS, 그 위에 응용 프로그램에 속하는 Node.js 나 php 프로그램 4.1.1 엔티티엔티티 entity: 사람, 장소, 물건,.. 2025. 2. 24.
[CS 전공지식 #11] 챕터3-4. CPU 스케줄링 알고리즘 목차4. CPU 스케줄링 알고리즘3.4.1 비선점형 방식3.4.2 선점형 방식 챕터3. 운영체제 4. CPU 스케줄링 알고리즘CPU 스케줄러:CPU 스케줄링 알고리즘에 따라 프로세스에서 해야 하는 일을 스레드 단위로 CPU에 할당프로그램이 실행될 때, CPU 스케줄링 알고리즘이 어떤 프로그램에 CPU 소유권을 줄 것인지 결정 3.4.1 비선점형 방식프로세스가 스스로 CPU 소유권을 포기하는 방식강제로 프로세스 중지 x→ 컨텍스트 스위칭으로 인한 부하가 적음FCFS First Come, First Served:가장 먼저 온 것을 가장 먼저 처리하는 알고리즘단점) 길게 수행되는 프로세스 → 준비 큐에서 오래 기다리는 현상 발생SJF Shortest Job First실행 시간이 가장 짧은 프로세스를 가장 먼저.. 2025. 2. 17.
[CS 전공지식 #10] 챕터3-3. 프로세스와 스레드 목차3. 프로세스와 스레드3.3.1 프로세스와 컴파일 과정3.3.2 프로세스의 상태3.3.3 프로세스의 메모리 구조3.3.4 PCB Process Control Block3.3.5 멀티프로세싱3.3.6 스레드와 멀티스레딩3.3.7 공유 자원과 임계 영역3.3.8 교착 상태 챕터3. 운영체제 3. 프로세스와 스레드프로세스 process: 컴퓨터에서 실행되고 있는 프로그램CPU 스케줄링의 대상이 되는 작업 TASK이라는 용어와 거의 같은 의미스레드는 프로세스 내 작업의 흐름 지칭 3.3.1 프로세스와 컴파일 과정프로세스: 프로그램이 메모리에 올라가 인스턴스화된 것예)프로그램: 구글 크롬 프로그램 exe 와 같은 실행 파일프로세스: exe를 두 번 클릭하면 프로세스로 변환됨프로그램을 만드는 과정은 언어마다 상.. 2025. 2. 17.
[CS 전공지식 #9] 챕터3-2. 메모리 목차2. 메모리3.2.1 메모리 계층3.2.2 메모리 관리  챕터3. 운영체제 2. 메모리CPU는 “메모리”에 올라와있는 프로그램의 명령어들을 실행메모리 계층과 메모리 관리 3.2.1 메모리 계층메모리 계층 구성레지스터: CPU 안에 있는 작은 메모리. 휘발성, 속도 가장 빠름, 기억 용량 가장 작음캐시: L1, L2 캐시. 휘발성, 속도 빠름, 기억 용량 적음 (L3 캐시도 있음)주기억장치: RAM. 휘발성, 속도 보통, 기억 용량 보통보조기억장치: HDD, SSD. 비휘발성, 속도 낮음, 기억 용량 많음RAM: 하드디스크로부터 일정량 데이터 복사, 임시 저장, 필요시 CPU에 빠르게 전달계층 위로 올라갈수록 가격 비싸짐. 용량 작아지고 속도 빨라지는 특징계층 존재 이유: 경제성, 캐시캐시 cache데.. 2025. 2. 17.
[CS 전공지식 #8] 챕터3-1. 운영체제와 컴퓨터 목차1. 운영체제와 컴퓨터3.1.1 운영체제의 역할과 구조3.1.2 컴퓨터의 요소  챕터3. 운영체제운영체제(OS, Operating System): 사용자가 컴퓨터를 쉽게 다루게 해주는 인터페이스한정된 메모리나 시스템 자원을 효율적으로 분배cf) 펌웨어 firmware: 운영체제와 유사, 소프트웨어 추가 설치 불가 1. 운영체제와 컴퓨터하드웨어, 소프트웨어(유저 프로그램) 관리하는 운영체제, CPU, 메모리 등 3.1.1 운영체제의 역할과 구조운영체제의 역할 4가지CPU 스케줄링과 프로세스 관리메모리 관리디스크 파일 관리I/O 디바이스 관리운영체제의 구조유저 프로그램 → GUI → 시스템콜 → 커널 → 드라이버 → 하드웨어운영체제: GUI, 시스템콜, 커널, 드라이버 부분GUI 없고 CUI 만 있는 리.. 2025. 2. 17.
[CS 전공지식 #7] 챕터2-5. HTTP 목차5. HTTP2.5.1 HTTP/1.02.5.2 HTTP/1.12.5.3 HTTP/22.5.4 HTTPS2.5.5 HTTP/3  5. HTTPHTTP: 전송 계층 위에 있는 애플리케이션 계층, 웹 서비스 통신에 사용됨HTTP/1.0 ~ HTTP/3 2.5.1 HTTP/1.0한 연결당 하나의 요청을 처리하도록 설계됨→ RTT 증가 발생서버로부터 파일을 가져올 때마다 TCP의 3-웨이 핸드셰이크를 계속 열어야 하기 때문RTT: 패킷이 목적지에 도달하고 나서 다시 출발지로 돌아오기까지 걸리는 시간이며 패킷 왕복 시간서버 부담 증가, 사용자 응답 시간 증가RTT 증가를 해결하기 위한 방법이미지 스플리팅, 코드 압축, 이미지 Base64 인코딩 사용이미지 스플리팅: 많은 이미지를 다운로드받게 되면 과부하 → .. 2025. 2. 10.
[CS 전공지식 #6] 챕터2-4. IP 주소 목차4. IP 주소2.4.1 ARP2.4.2 홉바이홉 통신2.4.3 IP 주소 체계  챕터2. 네트워크 4. IP 주소인터넷 계층에 IP 주소 사용 2.4.1 ARP“ 컴퓨터와 컴퓨터 간의 통신: IP 주소 기반 통신”를 정확히 이야기 하자면→ IP 주소에서 ARP를 통해 MAC 주소를 찾아 MAC 주소를 기반으로 통신ARP (Address Resolution Protocol)IP 주소로부터 MAC 주소를 구하는 IP와 MAC 주소의 다리 역할을 하는 프로토콜ARP를 통해 가상 주소인 IP 주소를 실제 주소인 MAC 주소로 변환(반대로) RARP를 통해 실제 주소인 MAC 주소를 가상 주소인 IP주소로 변환(그림)장치 A가 ARP Request 브로드캐스트를 보내서 IP주소인 120.70.80.3에 해당.. 2025. 2. 9.
[CS 전공지식 #5] 챕터2-3. 네트워크 기기 목차3. 네트워크 기기2.3.1 네트워크 기기의 처리 범위2.3.2 애플리케이션 계층을 처리하는 기기2.3.3 인터넷 계층을 처리하는 기기2.3.4 데이터 링크 계층을 처리하는 기기2.3.5 물리 계층을 처리하는 기기   챕터2. 네트워크  3. 네트워크 기기네트워크는 여러 개의 네트워크 기기를 기반으로 구축됨  2.3.1 네트워크 기기의 처리 범위네트워크 기기는 계층별로 처리 범위 나눌 수 있음물리 계층 처리할 수 있는 기기, 데이터 링크 계층을 처리할 수 있는 기기 등상위 계층 처리하는 기기는 하위 계층 처리 가능하위 계층 처리하는 기기는 상위 계층 처리 불가애플리케이션 계층: L7 스위치인터넷 계층: 라우터, L3 스위치데이터 링크 계층: L2 스위치, 브리지물리 계층: NIC, 리피터, AP  2.. 2025. 2. 9.
Hadoop/Spark 이론 정리 및 예제 안녕하세요BOAZ 방학 Adv 세션 발표를 하며 준비했던 자료를 포스팅해보려고 합니다제가 담당한 부분은 Hadoop/Spark여서 이 자료를 업로드합니다 ㅎㅎSpark의 경우 학기 Base 세션 발표 때 했던 내용이랑 유사해서 생략합니다. Spark 포스팅:https://uni-datastudy.tistory.com/87 Apache Spark RDD/Dataframe 정리안녕하세요BOAZ 학기 Base 세션 발표를 하며 준비했던 자료를 포스팅해보려고 합니다제가 담당한 부분은 Spark RDD/DataFrame 이여서 이 자료를 업로드합니다 ㅎㅎ   목차1. Apache Spark의 개념과 등장uni-datastudy.tistory.com  목차1. Hadoop(1) Hadoop의 정의(2) Hadoop.. 2025. 2. 4.
[CS 전공지식 #4] 챕터2-2. TCP/IP 4계층 모델 목차2. TCP/IP 4계층 모델2.2.1 계층 구조2.2.2 PDU   챕터2. 네트워크 2. TCP/IP 4계층 모델인터넷 프로토콜 스위트 internet protocol suite인터넷에서 컴퓨터들이 서로 정보를 주고 받는데 쓰이는 프로토콜의 집합TCP/IP 4계층 모델로 설명하거나 OSI 7계층 모델로 설명이 책에서는 4계층 모델을 중심으로 설명이 계층 모델은 네트워크에서 사용되는 통신 프로토콜의 집합으로 계층들은 프로토콜의 네트워킹 범위에 따라 네 개의 추상화 계층으로 구성됨  2.2.1 계층 구조TCP/IP 계층은 네 개의 계층을 가짐. OSI 7계층과 많이 비교함OSI 계층은애플리케이션 계층을 세 개로 쪼갬링크 계층을 데이터 링크 계층, 물리 계층으로 나눠서 표현인터넷 계층을 네트워크 계층으.. 2025. 2. 3.
[CS 전공지식 #3] 챕터2-1. 네트워크의 기초 목차1. 네트워크의 기초2.1.1 처리량과 지연 시간2.1.2 네트워크 토폴로지와 병목 현상2.1.3 네트워크 분류2.1.4 네트워크 성능 분석 명령어2.1.5 네트워크 프로토콜 표준화  챕터2. 네트워크네트워크: 컴퓨터 등의 장치들이 통신 기술을 이용하여 구축하는 연결망을 지칭하는 용어네트워크 기초, 네트워크 계층, 장치 등  1. 네트워크의 기초네트워크: 노드 node와 링크 link가 서로 연결되어 있거나 연결되어 있으며 리소스를 공유하는 집합을 의미노드: 서버, 라우터, 스위치 등 네트워크 장치를 의미링크: 유선 또는 무선   2.1.1 처리량과 지연 시간좋은 네트워크: 많은 처리량 처리 가능, 지연 시간이 짧고, 장애 빈도가 적고, 좋은 보안을 갖춘처리량 throughtput링크 내에서 성공적으.. 2025. 2. 3.