본문 바로가기

분류 전체보기

(99)
[AWS] VPC, Subnet 알아보기 CIDRCIDR이란 IP 주소의 영역을 여러 네트워크 영역으로 나누기 위해 IP를 묶는 방식을 의미합니다.CIDR의 NotationCIDR은 A.B.C.D/E의 형태를 띄고 있습니다. 예를 들어 10.0.0.0/24 , 172.16.0.0/12와 같은 형식입니다.A.B.C.D : 네트워크 주소 + 호스트 주소 표시E : 0~32 사이의 숫자로 네트워크 주소가 몇 bit 인지 표시 위의 그림과 같이 '/24' 라는 숫자를 통해서 "24bit는 네트워크 주소"라는 뜻이 됩니다.네트워크 주소는 고정되어 있지만, 호스트 주소는 고정되어 있지 않기 때문에 총 256개의 IP주소가 CIDR Notation으로 표현이 가능해집니다.아래의 그림은 192.168.2.0/24에서 호스트 주소에 어떤 값이 들어갈 수 있는지..
[데이터엔지니어링] Docker 개념 Docker란 무엇인가?Docker는 Container 기반의 오픈소스 가상화 플랫폼입니다.쉽게 얘기하면 컨테이너라 불리는 하나의 작은 소프트웨어 유닛 안에 Application, System Tools, Dependencies 와 같은 실행을 위한 모든 것을 하나로 묶어 다른 서버, PC 에 쉽게 배포하고 안정적으로 구동할 수 있게끔 해주는 Tool입니다.컨테이너란?컨테이너의 개념을 알기 위해서는 Virtualization(가상화) 개념에 대해서 먼저 알아야합니다.Virtualization (가상화)가상화(Virtualization)는 가짜(not real) 하드웨어 환경을 만들어 내는 기술입니다.가상화(Virtualization)를 통해서 물리적 머신의 기능을 여러 사용자, 환경에 배포해 물리적 머신..
[백준] 3190번 뱀 Python 문제풀이 주절주절... 최근 기업 코테 공부를 하면서 C++은 아닌 것 같다는 느낌이 팍 들어버렸슴다. 디버깅이 힘듬 문자열 다루기가 힘듬 짜다가 보면 코드 읽기가 어려워짐... 등등.. 또 개발 언어는 대부분 Python인데... C++은 알고리즘만을 위해 공부하는 느낌(?)이 들어서 앞으로는 Python으로 코테 공부를 진행하려 합니다.오늘 풀 문제는 삼성 기출이라고? 하는 백준 3190번 문제입니다. 문제 풀이 1) 뱀이 있는 좌표 표현 - 뱀의 좌표를 Queue를 이용해서 표현했습니다. 뱀의 머리부터 꼬리까지의 좌표를 Queue에 저장 2) 뱀이 이동 - 문제의 조건을 보시면 ' 뱀은 몸길이를 늘려 머리를 다음칸에 위치' 라는 말이 있습니다. 일단 먼저 Queue안에 다음 이동할 좌표를 넣습니다. - 다음..
[데이터엔지니어링] Apache Kafka Connect 설명 Kafka Connect 데이터베이스, 키-밸류 스토어와 같은 외부 시스템을 Kafka에 연결해 주는 구성 요소. Kafka와 외부 시스템 간의 연결을 쉽고, 간편하게 해준다. Consumer 와 Producer의 기능을 Code 작성 없이 설정만으로 구성할 수 있다. Kafka connect의 도입 배경 Single Kafka System with Producer & Consumer 카프카(kafka)는 프로듀서(Producer)와 컨슈머(Consumer)를 통해 다양한 외부 시스템 데이터를 주고 받으며 메세지 파이프라인 아키텍쳐를 구성. Multiple Kafka System with Producer & Consumer 하지만 이러한 파이프라인을 매번 구성하며 프로듀서와 컨슈머를 개발하는 것은 비용,..
[데이터엔지니어링] Apache Kafka 개념 알아보기 Apache Kafka 2011년, LinkedIn에서 개발 후 Apache 오픈소스로 공개 데이터 파이프라인의 확장, 기종 간의 호환성, 고성능 기반의 스트림 데이터 처리의 문제 해결을 위해 개발 실시간 스트리밍 데이터 수집, 처리하는 데 최적화된 분산 데이터 스토어 개발 배경 과거 링크드인 시스템 구성도 엔드투엔드(end-to-end) 연결 방식의 아키텍처 데이터가 출발지에서 목적지까지 직접적으로 이동 이러한 end-to-end 방식은 아키텍처가 거대해지고, 소스 어플리케이션과 타겟 어플리케이션을 연결하는 파이프라인의 개수가 많아지면서 문제가 발생. Kafka 도입 후 링크드인 시스템 구성도 Pub/Sub 방식 : 중앙에 메시징 시스템 서버를 두고 Publisher(게시자)가 topic에 메시지를 보..
[AWS] IAM 알아보기 IAM(Identity and Access Management) IAM에서는 사용자를 생성하고 그룹에 배치한다(IAM은 글로벌 서비스이다) 글로벌 서비스의 경우 특정 리전을 선택 하지 않아도 됌!! ※ 리전 서비스 : 특정 리전에서 사용가능한 서비스 ※ 글로벌 서비스 : 어디서나 사용가능한 서비스 - 그룹에는 오직 사용자만 배치할 수 있다. - 그룹 안에 그룹을 배치할 수 없다. - 그룹에 포함되지 않는 사용자도 있을 수 있다. ex) fred - 한 사용자는 여러 그룹에 포함될 수 있다. ex) charles, david 사용자를 생성하는 이유 AWS에서 로그인을 수행한다면 2가지의 방식으로 수행할 수 있다. 루트 사용자. 루트사용자는 모든 권한을 갖는 SSO(Single Sign In) ID AWS의..
BOAZ 22기 데이터엔지니어링 부문 서류+면접 후기 안녕하세요, 저는 빅데이터 연합 동아리 BOAZ에서 데이터엔지니어링 분야 22기로 활동을 하고 있는 대학생입니다. 같은 기수의 동기들을 보면서 많이 자극도 받고, 열심히 공부하게 되는 계기가 되는 것 같습니다. 서류와 면접을 준비하면서 다른 분들의 블로그 글에 많은 도움을 받아 저도 앞으로 BOAZ에 지원할 지원자 분들을 위해 합격 수기글을 작성하게 되었습니다. 서류전형 데이터엔지니어링 부문 자기소개서에는 크게 3가지 문항이 있었습니다. 1. BOAZ 데이터 엔지니어링 부문에 지원한 동기와 BOAZ 활동을 통해 얻고 싶은 것을 서술해주세요. (공백 포함 600자 이내)* - 1번 질문에 대해서 이전에 학교 프로젝트를 진행하면서 데이터 수집 단계에서 문제가 발생해 프로젝트 진행에 어려움을 겪었던 이야기, ..
[프로그래머스] 하노이의 탑 C++ 문제풀이 문제 풀이 하노이의 탑 문제는 n개의 원판을 1번 기둥에서 3번 기둥으로 옮기는 문제이다. n개의 원판을 (1 -> 3)으로 이동하려면 n-1개의 원판을 (1 -> 2) 로 옮기고, 마지막 원판을 (1->3) ,n-1개 원판을 (2->3)으로 옮기면 된다. 위 처럼 진행 되는 문제이다! 이를 재귀를 통해서 n == 1 일 때 까지 반복해서 풀면 된다. 소스 코드 #include #include #include using namespace std; vector answer; void hanoi(int start, int end, int target, int cnt){ if(cnt == 1){ answer.push_back({start, target}); } else{ hanoi(start, end, 6 -..