💡 병렬화 및 내결함성의 세부 사항을 추상화하는 대규모 데이터셋을 처리하기 위한 프로그래밍 모델 Cluster Master Node 분산 파일 시스템을 관리하고 워커 노드가 수행할 작업을 예약한다. NameNode: 파일 시스템 메타 데이터를 관리 Job Tracker: 워커 노드에서 작업 실행을 조정 Worker Node 데이터를 처리하는 작업을 실행하는 시스템이다. 데이터 블록을 저장하고 마스터노드로부터 할당된 테스크를 수행한다. 하둡에서 데이터는 분산된 방식으로 워커 노드에 저장된다. 맵리듀스 모델은 그 데이터를 병렬 처리하는데 쓰인다. 이런 원리로 하둡은 대용량 데이터를 효율적으로 관리하고 데이터 분석과 머신러닝 같은 규모의 작업을 할 수 있다. Job 클라언트가 수행하는 작업의 기본 단위 (입력..
💡 큰 데이터가 있다면 하나의 서버를 키우는것보다 더 많은 서버에서 이를 분담 검색 엔진 개발을 위해 시작된 프로젝트 기능을 위한 크롤링 데이터를 색인하는 시스템 → 수십억 웹 페이지, 1조개 링크에 대한 데이터 저장 테라바이트 크기 이상의 데이터를 더 빠르게 정렬할 수 있게 되었다 HDFS 💡 대용량 파일을 다룰 수 있도록 설계된 파일 시스템 하둡의 파일 시스템 추상화 개념에 대한 구현체 중 하나 클러스터 전체에서 매우 높은 총 대역폭을 제공한다. 설계 특성 매우 큰(~MB, GB, TB, PB) 파일 스트리밍 방식의 데이터 접근 한 번 쓰고 여러번 읽는다 데이터셋은 생성 or 원본으로부터 복사 범용 하드웨어 쉽게 구할 수 있는 하드웨어로 구성된 대형 클러스터에서 문제 없이 실행되도록 설계됨 HDFS ..
올해는... 📈 캐글 데이터셋 내가 좋아하고 내 일상에서 찾을 수 있는 프로젝트를 하고 싶었다. 매일 여러 플랫폼의 웹툰을 보는 스스로를 발견하고 웹툰 데이터를 분석하면 좋겠다고 생각했다. 내 취향에 맞는 웹툰을 직접 추천해보면 기존에 플랫폼에서 서비스되고 있는 추천시스템을 이해하고 싶었다. 분석할 데이터를 찾는데 한국어 데이터셋은 없었고 영어로된 데이터셋을 찾을 수 있었지만 기대한 만큼의 웹툰 수가 아니었다. 분명 더 많은 작품이 연재되고 있다고 생각했고 한국어 데이터셋이 있다면 내가 몰랐지만 보고 싶은 작품을 찾는데 도움이 될거라고 판단했다. 직접 데이터를 수집하면서 분석에 특정 지표를 만들기 위해서 어떤 데이터 값이 있으면 좋을지 고민해볼 수 있었다. 1년동안 기록한 이 지표로 내 데이터가 많은(?..
파드는 컨테이너 그룹이다. 쿠버네티스에서는 기본 빌딩 블록이며 컨테이너를 개별적으로 배포하기보다 컨테이너를 가진 파드를 배포하고 운영한다. 일반적으로 파드는 하나의 컨테이너만 포함하는 경우가 많다. 파드의 핵심은 파드가 여러 컨테이너를 가지고 있는 경우에 모든 컨테이너는 항상 하나의 워커 노드에서 실행된다. 왜 필요한가? - 컨테이너는 단일 프로세스를 실행하는 것을 목적으로 설계되어 단일 컨테이너에서 관련 없는 다른 프로세스를 실행하는 경우 모든 프로세스를 실행하고 로그를 관리하는 것은 모두 사용자 책임이 된다. 이렇게 되면 모든 포로세스는 동일한 표준 출력으로 로그를 기록하기 때문에 어떤 프로세스에 대한 로그인지 파악하기 어려워진다. 따라서 각 프로세스를 개별 컨테이너로 실행해야한다. -> 여러 프로세..
📦 컨테이너화된 워크로드와 서비스를 관리하기 위한 오픈소스 플랫폼 가상화 초기단계에서는 각 서버 장치에서 운영체제가 필요한 애플리케이션들을 운영하게 되어서 물리적, 시간적 비용이 컸다. 또한 리소스를 더 많이 차지하는 애플리케이션이 있으면 다른 애플리케이션의 성능이 저하되는 등 리소스 할당의 문제가 있었다. 그 다음으로 가상화가 도입되었고 VM간 애플리케이션을 격리하여 독립된 환경에서 운영할 수 있다. 하지만 각 VM에 os를 구동하다보니 무겁고 느리다는 단점이 있었다. 이제 컨테이너 가상화 기술은 서비스간에 자원 격리를 하는데 os를 별도로 안띄워도 되기때문에 os 기동 시간이 없어 자동화시 빠르고 효율이 높다. 이런 장점으로 도커가 각광받게 되었다. 하지만 하나의 애플리케이션에서 많은 서비스를 운영하..
인턴 체험형 인턴에 합격하고 난 뒤 첫 출근 전까지 설렘 반 걱정 반이었다. 내가 매일 사용하는 서비스가 개발되는 곳을 직접 볼 수 있다는 것과 현직자분들을 만날 수 있다는 점이 너무 기대되었다. 그러면서 큰 회사의 경우는 인턴은 알아서 잘해야된다고 어디서 들은거 같아서 알아서 어떻게 잘해야되는지 걱정되었다. 새로운 사옥으로 이전한 날 다음날부터 사무실로 첫 출근할 수 있어서 기존 직원분들과 거의 비슷하게 장소에 적응했다. 처음 3주간은 정말 정신이 없었다. 그래도 팀원 모두 어색하셨을텐데 친절하시고 편하게 대해주셔서 잘 적응할 수 있었다. 인턴 과제도 회사 비즈니스에 도움이 되는 내용으로 진행되어 기여할 수 있다고 느꼈고 구체적인 목표 덕분에 작업하면서 많이 배울 수 있었다. 특히 질문, 의견 등 피드..
노션, github.io 블로그, 벨로그, 네이버블로그, 티스토리 모두 써본 유목민... 원래 노션에 쓰다가 노션은 정보 기록으로는 좋은데 검색 노출이나 공유에 친절한것 같진 않았다. 개발 블로그 양대 산맥인 티스토리, 벨로그를 생각했는데 벨로그는 애초부터 개발블로그 플랫폼으로 노션처럼 마크다운으로 글쓰기 편리해서 개발하다가 마주친 에러를 어떻게 해결했는지 기록하고 공유하기 위해서 시작했다. 그러다 벨로그에 개발 관련 없는 글을 쓰기는 어려울거 같아서 github 블로그를 썼었다. 그러다 회사생활하면서 꾸준히 글을 쓸 수 있는 좀 더 편한 플랫폼으로 정착해야한다는 필요성을 느꼈다. ✅ 나에게 필수인 기능 사이드 네비게이션바 - 글 목록이 잘 보이는지 연관 글 목록 - 공부 내용을 연결해서 볼 수 있는지 ..
[이 글은 기존 github 블로그에서 2022.07.31에 작성된 글입니다.] 구글 머신러닝 부트캠프 작년에 두번 지원했는데 떨어졌던 구글 머신러닝 부트캠프가 올해도 모집을 했다. 올해는 꼭 기회를 잡고 싶어서 공부한 내용을 어떻게 잘 정리하고 활용할지 중점으로 지원서에 썼다. 그전에 두번이나 떨어져서 이번에는 될까 싶었는데 부트캠프 3기에는 참여할 수 있게 되었다! 너무 신났고 아쉽지 않도록 잘 활용하자고 다짐하고 시작했다. (이 글을 쓰고 있는 현재...점점 어렵다...) 권순선 멘토님 커피챗 구글 머신러닝 부트캠프의 권순선 멘토님이 커피챗을 열어주셔서 바로 신청했다. 리눅스 블로그와 큰 행사에서 발표도 많이 하셔서 글쓰고 말하기를 잘하는 방법을 알아내고 싶었다... 하지만 비법은 없다는 것을 알려..
[이 글은 기존 github 블로그에서 작성해 티스토리로 옮긴 글입니다.] 프로그래밍을 공부하고 실습할 때 가장 먼저 해보는 print("Hello World") 데이터 사이언스를 공부할 때 Hello World 같은 데이터들은? Dataset MNIST Dataset Iris Project and Dataset Titanic Project and Dataset Housing Prices project and Dataset House Prices Credit Card Fraud Detection Project and Dataset Fake News Detection Project and Dataset COVID19 Tweets Project and Dataset Air Pollution in Seoul ..
[이 글은 기존 github 블로그에서 2022.08.12에 작성된 글입니다.] 🍪 쿠키란? 사용자를 식별하고 세션을 유지하는 방식. 쿠키는 캐시와 충돌할 수 있기때문에 대부분 쿠키에 있는 내용을 캐싱하지 않는다. 쿠키 타입 세션 쿠키: 사용자가 사이트를 탐색할 때, 관련한 설정과 선호 사항들을 저장하는 임시 쿠키. 사용자가 브라우저를 닫으면 삭제된다. 지속 쿠키: 사용자가 주기적으로 방문하는 사이트에 대한 설정 정보나 로그인 이름을 유지하려고 사용. 디스크에 저장되어 브라우저를 닫거나 컴퓨터를 재시작하더라도 남아있다. 동작 방식 웹 서버는 처음 사용자에 대해서 아무것도 모르는 상태이지만 사용자가 다시 돌아왔을 때, 해당 사용자를 식별하기 위한 유일한 값을 쿠키에 할당한다. 쿠키는 어떤 정보든 포함할 수..