블로그 이전
·
카테고리 없음
http://www.hajinnote.me Hajin NoteData Engineer. 배우고 기록합니다.www.hajinnote.me여러 고민끝에 노션으로 블로그 재탄생시켰다. 앞으로는 여기만 포스팅 올라올 예정
저장장치 및 파일관리
·
CS/운영체제
저장장치 종류와 특성순차접근 저장장치데이터를 순차적으로 읽거나 쓸 수 있는 저장장치초기 접근 시간이 굉장히 오래 걸림대량의 데이터 백업용예) 테이프직접접근 저장장치저장한 위치를 직접 찾아 데이터를 읽거나 쓸 수 있는 저장장치= 임의 접근 저장장치(random access)예) 자기 디스크, 광디스크, SSD자기 디스크(HDD)자성을 띈 디스크 표면에 데이터를 기록하고 읽음용어설명플래터(Platter)데이터를 저장하는 원형의 디스크 판헤드(Head)플래터 표면에서 데이터를 읽고 쓰는 장치암(Arm)헤드를 특정 위치로 이동시키는 장치고정축(Spindle)플래터를 회전시키는 중심 축트랙(Track)플래터 표면의 데이터를 저장하는 동심원 형태의 경로섹터(Sector)트랙을 더 세분화한 단위로, 데이터를 저장하는..
데이터 엔지니어 이직 준비 과정과 후기
·
회고
2025년, 데이터 엔지니어로서 3년차에 접어드는 시점이었다. 그동안 경험을 쌓으며 배운 점도 많았지만, 회사가 나아가는 방향과 내가 추구하는 커리어의 방향이 점차 멀어지기 시작했다. 업무에서 얻는 성취감도 점점 줄어들었고, 더 다양한 데이터를 다루며 성장할 수 있는 환경을 찾고 싶다는 생각이 커졌다. 이 포스팅에서는 내가 경험한 이직 과정과 경험들을 정리해보고자 한다. 이 글이 이직을 고민하는 다른 데이터 엔지니어들에게 작게나마 도움이 되기를 바란다. 준비 과정이력서 작성본격적으로 이직을 준비하며 가장 먼저 이력서부터 작성하기 시작했다. 마침 1월말 긴 설연휴가 있어 여유있게 준비를 시작할 수 있었다. 작년 말에 한번 정리해놔서 괜찮은 형식으로 다듬는것 위주로 작업을 했다. 몇년전에 한 업무들은 시간이..
그래프(3) - 벨만-포드, 플로이드, 포드-풀커슨
·
알고리즘
벨만-포드 알고리즘 (Bellman-Ford)알고리즘 개요하나의 출발점에서 나머지 모든 정점까지 최단 경로를 찾는 알고리즘데이크스트라 알고리즘은 음의 가중치를 가진 간선이 있으면 사용할 수 없지만, 벨만-포드는 음의 가중치가 있더라도 최단 경로를 찾을 수 있다 음의 사이클(전체 경로의 가중치 합이 음수인 순환)이 존재하면 최단 경로가 정의될 수 없으므로 사용할 수 없음 동작 방식 그래프의 모든 간선들을 확인하며, 출발점으로부터 각 정점까지의 최소 거리를 반복적으로 갱신정점의 수(|V|)가 n개라면, 최대 (n-1)번 동안 전체 간선을 확인하여 최소 거리를 업데이트매 반복마다 아래 식으로 거리 값을 갱신여기서 d[v]는 출발점에서 정점 v까지의 현재 최단 거리w(u, v)는 정점 u에서 v로 가는 간선의 ..
장치관리
·
CS/운영체제
컴퓨터 시스템의 구성필수 구성요소CPU와 메모리는 프로세스를 실행하기 위한 필수 자원이다.입출력 장치입출력(I/O) 장치는 데이터를 입력하거나 출력하는 데 사용예: 키보드, 마우스, 디스크, 프린터 등장치 관리자는 시스템의 모든 주변 장치를 제어하며, 입출력 자원의 효율적 사용과 균형을 유지입출력 장치의 구분1. 전용장치한 번에 하나의 프로세스에만 사용가능예: 테이프 드라이브, 프린터, 플로터 등 단점: 대기시간이 길어질 수 있음 2. 공용장치여러 프로세스에 동시에 접근 가능예: 디스크 같은 직접접근 저장장치스케줄링 기법 필요 3. 가상장치전용장치를 공용장치처럼 보이게 함디스크 같은 공용장치를 이용예: 스풀링된 프린터, 네트워크 프린터 장치의 구성 1. 논리적 구성운영체제가 장치를 제어하기 위해 사용하는..
인덱싱
·
CS/데이터베이스시스템
인덱스의 개념 인덱스의 필요성대량의 데이터에서 원하는 값을 빠르게 찾기 위해모든 데이터를 처음부터 끝까지 순차 탐색하면 매우 비효율적인덱스(index) 는 데이터를 빠르게 찾을 수 있도록 도와주는 부가적인 구조인덱스의 정의인덱스: 요청된 레코드에 빠르게 접근할 수 있도록 지원하는 탐색키 + 포인터 구조인덱싱(indexing): 인덱스를 구성하는 작업인덱스 종류 순서 인덱스 (Ordered Index)탐색키를 정렬된 순서대로 저장하는 인덱스범위 탐색에 유리하고, 이진 탐색 적용 가능해시 인덱스 (Hashed Index)탐색키를 해시 함수로 처리해 버킷 주소를 계산빠른 정확한 값 탐색에 적합하지만 범위 탐색에는 부적합인덱스 평가기준기준설명접근 시간인덱스를 통해 데이터를 찾는 데 걸리는 시간유지 비용삽입/삭제..
데이터 저장과 파일
·
CS/데이터베이스시스템
물리적 저장장치와 파일물리적 저장장치의 구성과 특징저장장치는 접근 속도, 용량, 가격 등을 기준으로 계층적 구조를 이룸저장장치특징속성레지스터CPU 내부에 위치, 매우 빠름, 용량 작음비휘발성캐시고속 접근 가능한 저장공간휘발성메인 메모리주 기억장치, 접근 빠름휘발성자기 디스크자성을 이용해 데이터 저장, 보조 저장장치비휘발성광학 디스크/자기 테이프CD, DVD, Blu-ray / 순차 접근, 매우 느림비휘발데이터베이스 구성요소파일: 데이터를 영구 저장하기 위한 논리적 단위블록: 파일을 일정 크기로 나눈 데이터 전송 단위 (메모리-디스크 사이 전송)레코드: 블록에 저장되는 최소 데이터 단위 (관계형 모델 기준) 고정 길이 레코드 고정적인 바이트 수를 갖는 레코드 저장 시 고려되는 기법 데이터 접근모든 레코드는..
그래프(2) - 크루스칼, 프림, 데이크스트라 알고리즘
·
알고리즘
최소 신장 트리(Minimum Spanning Tree) 신장 트리가중 무방향 그래프에서 모든 정점을 포함하는 트리최소 신장 트리신장 트리 중 간선 가중치의 합이 가장 작은 트리그래프 G=(V,E) 에 대해, 트리 G′=(V′,E′)는 V′=V, E′⊆E 크루스칼 알고리즘간선이 하나도 없는 상태에서 시작해서 가중치가 가장 작은 간선부터 하나씩 골라서 사이클을 형성하지 않으면 해당 간선을 추가하는 방식간선 (u,v)의 두 정점 u,v가 서로 다른 연결 성분에 속하면 해당 간선은 사이클을 형성하지 않음|V|=n개의 정점이 각각의 서로 다른 연결 성분으로 구성된 상태에서 시작해서 간선을 추가할 때마다 연결 성분들이 하나씩 합쳐지고 최종적으로 하나의 연결 성분을 형성함 과정 그래프의 모든 간선을 가중치 기..
페이지 교체 알고리즘
·
CS/운영체제
기본개념페이징 기법에서는 모든 페이지 프레임이 사용 중일 때 새로운 페이지를 적재하기 위해 교체 대상을 선택해야 함목표:앞으로 가장 오래 사용하지 않을 페이지를 교체하는 것 (이론적 최적)현실적으로 미래를 예측할 수 없기 때문에 좋은 근사 방법을 선택해야 함교체 제외 페이지페이징을 위한 커널 코드 영역보조기억장치 드라이버 영역시간을 맞춰 동작해야 하는 코드 영역 입출력장치를 위한 데이터 버퍼 영역 등 FIFO(First-In First-Out)메모리에서 가장 오래 있었던 페이지 교체 큐 이용 [Page1] → [Page2] → [Page3] → [Page4](Front) (Rear)새 페이지가 필요하면 Front(제일 오래된) 페이지 교체단점자주 사용하는 페이지도..