데이터베이스의 필요성 데이터 단위 bit (*8) byte (*1024) kilobyte (*1024) megabyte (*1024) gigabyte (*1024) terabyte TB (*1024) petabyte PB (*1024) exabyte EB (*1024) zettabyte ZB (*1024) yottabyte YB (아직 지구에 YB 단위 저장할 수 있는 곳은 없음) 데이터의 양적 증가 → 관리 필요성 증대 1년에 대략 60ZB의 데이터가 쌓이고 있음 (128GB 아이패드를 쌓았을 때 달까지 3번 반 왕복 가능) DBMS: DataBase Management System 기존에는 데이터 관리 위해 파일 사용: 파일 처리 시스템 File Processing System 데이터를 파일에 나누어..
운영체제 개요 컴퓨터 시스템의 구성 하드웨어 CPU, 메모리, 입출력장치, 저장장치, 네트워크 장치 등 소프트웨어 응용 소프트웨어 (웹 브라우저, 그래픽 소프트웨어 등) 시스템 소프트웨어 (응용 소프트웨어와 하드웨어 사이의 매개체 > 운영체제, 컴파일러 등) 운영체제: 컴퓨터 시스템의 자원 관리, 컴퓨터 프로그램 동작 위한 서비스를 제공하는 프로그램들의 모임 운영체제의 역할 자원 관리 자원: 하드웨어 자원, 소프트웨어 자원, 데이터 포함 데이터 읽기, 장치 제어, CPU 및 메모리 관리 등 사용자 지원 사용자가 내린 명령 해석 사용자와 하드웨어 사이의 매개체 입력 내용 응용 프로그램에 전달 등 운영체제 등장 이전의 문제점 초기 컴퓨터에는 운영체제가 존재하지 않았음 사용자가 응용 프로그램을 통해 직접 하드..
개요 컴파일러 > 어셈블러(기계어로 변환) > 컴퓨터 컴파일러: 프로그램을 기계어로 번역해주는 번역기 인터프리터: 한 단계식 해석하여 실행 (컴파일러는 프로그램을 한번에 기계어로) 고급 언어일수록 인간이 이해하기 쉬움 C언어는 저급 언어의 특성(하드웨어 제어 가능)을 지닌 고급 언어 1972년 미국 벨 연구소의 Dennis Ritchie가 개발(UNIX 개발에 사용하기 위해) 장점 하드웨어 제어 가능 높은 프로그램 이식성 간략한 문법 표현 순서: 작성 → 컴파일 → 링킹 → 실행 입력된 소스 코드들은 .c라는 확장자를 가진 소스 파일로 디스크에 저장됨 작성된 소스 파일을 기계어로 변환 = 컴파일 > object 파일 생성(.obj) obj 파일은 그 자체로는 큰 의미 X, 라이브러리와 연결되어 프로그램이..
연속: 중단 또는 급격한 변화가 없는 상태 연속수학: 미적분학, 위상수학, 복소수론, 해석학 등 이산: 불연속적인 상태 (cf. 실수 vs 자연수) 컴퓨터에서 다루는 것은 이산적인 디지털 데이터 도구: 수학의 정의definition와 정리theorem 기법: 가감법, 대입법 등 (방정식의 해를 구할 때) 방법론: 문제 해결을 위해 적합하게 사용할 기법을 선택 수학적 모델링: 실생활의 문제 > 수학적 모델 데이터 모델링: 실생활의 문제 > 컴퓨터의 영역으로 옮기는 과정 추상화: 핵심만 남기고 관련 없는 것은 제거 (ex. 자동차의 색이 어떤 것인가와는 관계없이, 운전면허가 있으면 어디서든 운전 가능 > 자동차의 추상화 때문) 실생활에서 해결해야 하는 문제가 추상화를 거쳐 데이터 형태로 컴퓨터에 저장 컴퓨터..
vercel로 배포 후 수정 사항을 커밋하면 바로 반영이 되나요? 잘 된다! 리포 설정을 private로 바꿔도 잘 되는지 궁금했는데 그것도 잘 되는 것 같다 일단 vercel에서 private repository에 접근해서 빌드할 수 있게 하는 법 GitHub: Let’s build from here GitHub is where over 100 million developers shape the future of software, together. Contribute to the open source community, manage your Git repositories, review code like a pro, track bugs and fea... github.com 깃허브 설정 > applica..
Deployment POD 업데이트 전략 1. recreate 전략 2. blue-green deployment 서비스의 레이블 셀렉터를 변경해 한 번에 새 버전 POD로 전환 3. rolling update POD를 단계적으로 대체 오류 가능성: 명령을 맡은 프로세스가 하나씩 진행 > 버전 여러개 만들어진 채로 멈춰 있을 수 있음 + kubectl rolling-update 명령어는 k8s 1.18 이후 지원 중단 ++ 업데이트 프로세스가 서버가 아닌 클라이언트에 의해 수행되어, 장애 발생 시 중간 상태로 남게 됨 ++ 선언된 명령을 자체적으로 달성하는 쿠버네티스 운영 철학에도 맞지 않음 Deployment - 선언적 애플리케이션 업데이트 Deployment는 애플리케이션을 배포하고 선언적으로 업데이트..