분류 전체보기(48)
-
트러블슈팅: MySQL 대용량 CSV 파일 LOAD DATA로 넣기
환경MacOS (Homebrew MySQL 9.1.0)데이터: CSV 14.68GB(약 1억 1천만 행)https://www.kaggle.com/datasets/mkechinov/ecommerce-behavior-data-from-multi-category-store eCommerce behavior data from multi category storeThis dataset contains 285 million users' events from eCommerce websitewww.kaggle.com타깃 스토리지: InnoDB 스키마(스테이징) 설계INDEX/FK 없이 먼저 적재-- 이벤트 테이블 생성 (때용량 적재에 맞춘 컬럼 타입)CREATE TABLE ecommerce_events ( ..
2025.08.11 -
프로세스와 스레드
우리가 일상에서 사용하는 모든 소프트웨어는 이러한 원리를 기반으로 동작한다. 컴파일 과정먼저, 개발자가 작성한 소스 코드(예: C언어로 작성된 세민.c)는 컴파일러라는 번역기를 통해컴퓨터가 이해할 수 있는 기계어 파일(Chrome.o)로 변환된다. 이 과정에서 전처리, 컴파일, 어셈블, 링킹 단계를 거치며최종적으로 실행 가능한 프로그램 파일(.exe 또는 .out)이 만들어진다. 프로그램과 프로세스이렇게 만들어진 프로그램 파일은 그 자체로는 메모리 위에 올라가 있지 않은,그저 하드디스크에 저장된 ‘정적인 상태’의 파일이다. 우리가 이 파일을 더블 클릭하면, 운영체제는 이 파일을 메모리에 올려놓고 실행을 준비한다.이처럼 메모리에 올라가서 실행 중인 상태를 프로세스라고 부른다. 운영체제로부터 파일(자원)..
2025.08.11 -
[Git/Github] Git 필수 명령어 (1)
Git 필수 명령어, 제대로 이해하기Git 명령어의미git initgit을 본격적으로 사용하기 위해 초기 세팅하는 명령어git add변경한 코드를 저장하는 명령어 (변경한 파일명을 입력해야 함)git commit변경한 코드를 저장하는 명령어 (-m “index.html에 초기 코드 작성”)이라는 커밋 메시지 입력git status저장 여부 확인하는 명령어git log저장 내역을 확인하는 명령어 오늘 공부한 Git 명령어를 보면서 ‘아, 이렇게 단계별로 코드를 저장하는 거구나’하고 느꼈다. git init으로 저장소를 만들고, git add와 git commit으로 코드를 저장하는 과정이사진을 찍고 앨범에 정리하는 것과 비슷하지 않나? Git 저장소 만들기: git initGit을 사용하기 위한 첫 번째 ..
2025.08.10 -
[Git/Github] 미루던 Git 배우기 시작
What I LearnedGit미루고 있던, 개발자들에게 필수인 Git 공부를 Mac 설치방법부터 시작했다. Git, 무엇을 하는 친구인가?최근 공모전 제출하기 직전, 코드를 싹 다 갈아엎어야 했던 기억이 있다.그때 나는 혹시 모를 상황에 대비해 final_ver.ipynb, really_finally_ver.ipynb 같은 식으로 파일을 계속 복사했었다. 파일이 몇 개 없어 괜찮았지만,포로젝트 규모가 커지면 이건 정말 비효율적인 방법이 될 수 있을 것이라는 걸 깨달았다. Git은 바로 이 문제를 해결해 주는 버전 관리 도구다.파일을 통째로 복사하는 대신, 내가 코드를 변경한 이력을 기록 해준다. 예를 들어,프로젝트 초기 세팅 코드를 작성회원가입 기능 개발로그인 기능 개발로그아웃 기능 개발이렇게 단계별로..
2025.08.10 -
메모리 관리
메모리 관리:한정된 공간을 효율적으로 쓰는 OSCPU와 메모리 계층에 대해 이해했다면,이번에는 이 한정된 메모리 자원을 운영체제(OS)가 어떻게 관리하는지,그리고 왜 이런 복잡한 기술이 필요한지 그 동기부터 차근차근 알아봐야 한다. 컴퓨터의 메모리(RAM)는 아무리 용량이 커도 한정되어 있다.하지만 우리는 수십 개의 프로그램을 동시에 띄워놓고 작업을 한다. 어떻게 이게 가능한가? 바로 운영체제의 ‘메모리 관리’ 덕분이다.운영체제는 한정된 메모리를 최대한 효율적으로 활용하기 위한 기술들을 사용한다. 무한한 메모리의 착각, 가상 메모리메모리 관리의 핵심은 바로 가상 메모리 (Virtual Memory)이다. 사용자 입장에서는 마치 실제 가지고 있는 메모리 용량보다훨씬 더 큰 메모리를 가진 것처럼 보이며, ..
2025.08.05 -
CPU와 기억장치, 메모리
이런 말을 한 번쯤 들어봤을 것이다.“메모리가 부족해” 여기서 말하는 메모리가 무엇인지,그리고 우리 컴퓨터 성능을 결정하는 중요한 요소인 CPU와 메모리가 어떻게 상호작용하는 지 알아보자. 컴퓨터의 가장 중요한 부품인 CPU는 컴퓨터의 두뇌 역할을 한다.이때, 직접 데이터를 저장하거나 프로그램을 실행하는 것이 아니라,‘메모리’ 라는 공간에 올라와 있는 프로그램의 명령어를 읽어와서 실행하는 역할을 한다. 그렇다면, 메모리는 무엇인가? 메모리는 컴퓨터가 현재 실행 중인 프로그램과 데이터를 임시로 저장하는 공간이다.우리가 사용하는 워드, Notion 등 모든 프로그램은 실행되기 위해 반드시 메모리에 올라와야 한다. 하지만, 모든 메모리가 같은 종류는 아니고,다양한 종류의 메모리를 효율적으로 사용하기 위해 ..
2025.08.04