분류 전체보기 118

Cloud DNS에 대해 알아보자

DNS 먼저 DNS에 대해 알아보자. 친구 A와 B가 있다. 친구 A는 영국에 살고, 친구 B는 영국에 놀러가고 싶어한다. B: '영국에서 가장 좋아하는 장소가 어디야?' A: '51° 30' 19.9944'' N and 0° 4' 31.0008'' W 가 가장 좋아하는 장소야' B: '엥? 아니 좋아하는 장소 이름이 뭐야?' A: ''51° 30' 19.9944'' N and 0° 4' 31.0008 라니깐?!' B: "....." 사람은 숫자보다 이름으로 기억하는 것이 더 편하다. 우리가 특정 웹사이트에 접속하려 할 때 도메인 이름이 아닌 IP 주소를 외워야 한다면 너무나 힘든 일이 될 것이다. 따라서 사람 대신에 IP 주소를 찾아주는 DNS(Domain Name Server)가 필요하다. DNS는 ..

ETL, ELT, Data Warehouse, Data Lake에 대해 알아보자

ETL 이란? Extract, Transform, Load 기업이 전 세계 모든 곳의 수많은 팀에서 관리하는 구조화된 데이터와 구조화되지 않은 데이터를 비롯한 전체 데이터를 가져와 비즈니스 목적에 실질적으로 유용한 상태로 변환하는 엔드 투 엔드 프로세스를 의미합니다. 여러가지 데이터 소스에서 추출 (Extract) 하고, 데이터를 원하는 형태로 변형 (Transform) 하고, Data Warehouse로 적재 (Load) 하는 과정입니다. 비즈니스 또는 분석 용도에 맞추어 데이터를 잘 정제하는 단계 (Transform) 가 중요하고, 데이터 크기가 클수록 Transform 하는 시간도 오래 걸린다. ETL 파이프라인이 설계된 후에는 1일 1회 등의 방식으로 업데이트 된 내용을 다시 가져와서 새로운 내용..

Cloud VPN에 대해 알아보자

Packets 이란? 쪼개진 데이터 조각을 말한다. Packets은 데이터를 전송할 목적지에서 다시 합쳐질 수 있는 데이터 조각들이다. 하나의 Packet은 Header (Packet의 목적지와 사용한 Protocol 정보를 담고있음) 와 Payload (Packet의 실제 내용) 으로 구성된다. Packet Encapsulation 이란? Packet을 Encapsulate 한다는 것은 Packet을 다른 Packet으로 감싸는 것을 의미한다. 즉, 본래의 Packet(header + payload)을 이를 감쌀 Packet의 payload 섹션에 포함시킨다. Tunneling 이란? Packets을 한 네트워크에서 다른 네트워크로 이동시키는 방법을 말한다. 이때 해당 네트워크에서 지원하지 않는 프로토..

Static & Dynamic Routing

Routing 이란? 패킷이 목적지에 도달할 최적의 경로를 찾아 전송하는 것을 말한다. 즉, 네트워크의 길을 찾아주는 것이다. 그렇다면 어떤 것을 참고하여 길을 찾아줄까? 그것은 바로 라우팅 테이블이다. 라우팅 테이블에는 네트워크 프로토콜, 목적지 주소, 연결 인터페이스로 구성되어 있다. 어떤 목적지를 찾아갈때 이 라우팅 테이블을 보고 찾아가게 된다. Static Routing 이란? 목적지 주소까지 어떻게 가야하는지 수동으로 지정해주는 방법. 속도가 빠르고 라우터 장비의 부담이 적다는 장점이 있다. 하나 또는 두 개의 다른 네트워크와의 단일 네트워크 통신에 실용적이다. 그러나 네트워크가 추가되기 시작하면 게이트웨이의 수가 증가되어 라우팅 테이블을 수동으로 유지하는데 필요한 시간과 노력도 증가한다. Dy..

Network 2022.11.22

[프로그래머스] 윤년 요일 찾기

2016년 1월 1일은 금요일입니다. 2016년 a월 b일은 무슨 요일일까요? 두 수 a ,b를 입력받아 2016년 a월 b일이 무슨 요일인지 리턴하는 함수, solution을 완성하세요. 요일의 이름은 일요일부터 토요일까지 각각 SUN,MON,TUE,WED,THU,FRI,SAT 입니다. 예를 들어 a=5, b=24라면 5월 24일은 화요일이므로 문자열 "TUE"를 반환하세요. 제한 조건 2016년은 윤년입니다. 2016년 a월 b일은 실제로 있는 날입니다. (13월 26일이나 2월 45일같은 날짜는 주어지지 않습니다) 입출력 예 abresult 5 24 "TUE" def solution(a, b): day = ["THU", "FRI", "SAT", "SUN", "MON", "TUE", "WED"] mo..

Cloud Computing, Edge Computing, Network Edge, CDN에 대해 알아보자

Cloud Computing Cloud Computing 은 물리적으로 떨어져있는 데이터 센터에서 데이터 처리와 연산을 중앙 집중형으로 관리하는 방식이다. 하지만 사물인터넷 (IoT) 환경이 상용화 되면서 Cloud 서비스를 이용하는 사람들이 기하급수적으로 늘어났고, 서버 및 데이터 센터에서 처리할 수 있는 데이터의 양을 넘어섰다. 이로 인해 수집한 데이터를 분석하고 송신하는 과정에서 데이터 지연 현상이 발생했고, 클라우드 컴퓨팅의 통신 과정에서 보안 문제 또한 생겨났다. Edge Computing 이러한 데이터 처리 속도 및 보안 등의 문제를 해결하기 위해 생겨난 것이 Edge Computing이다. Edge Computing을 이용하면 사용자의 단말 장치와 가까운 위치에서 컴퓨팅 서비스를 처리해 더 ..

Network 2022.10.24

SSL, TLS, HTTPS에 대해 알아보자

먼저 HTTP에 대해 알아보자. HTTP (HyperText Transfer Protocol) 는 주로 HTML (Hyper Text Markup Language, 웹 페이지를 위한 마크업 언어) 문서를 주고 받는데 사용되는 데이터 전송 프로토콜이다. 클라이언트인 웹 브라우저가 HTTP 전송 규약을 통하여 웹 서버로부터 웹 페이지나 그림 정보를 요청하면, 웹 서버는 이 요청에 응답하여 필요한 정보를 사용자에게 전달한다. 예를 들어 'http://www.MLOps.com' 과 같이 'http://'로 시작되는 URL을 지정하면, 여기에 존재하는 데이터를 HTTP를 사용하여 서버에서 브라우저로 전송한다. [ HTTP Request 예시 ] [ HTTP Response 예시 ] HTTP의 문제점은 브라우저로 ..

Network 2022.10.24

Proxy, Reverse Proxy, VPN에 대해 알아보자

Proxy Server는 클라이언트가 자신을 통해 다른 네트워크 서비스에 간접적으로 접속할 수 있게 해주는 컴퓨터 시스템이나 응용 프로그램을 가리킨다. Proxy는 '대리'란 의미를 갖고 있고, 서버와 서버 사이의 중계기 역할을 한다. Proxy Server 중 일부는 서버에 요청된 내용들을 캐시를 이용해 저장해 두고, 후에 캐시 안의 정보를 요구하는 요청에 대해서는 원격 서버에 다시 접속할 필요 없이 저장된 캐시를 리턴하여 전송 시간을 절약한다. Proxy Server는 요청과 응답을 필터링 함으로써 신뢰할만한 중개자 역할을 한다. 예를 들어 내부망에서 외부에 요청을 보낼 때, 회사 내부 정책에서 인가한 서버인지 확인해서 필터링하는 등의 기능을 한다. Proxy Server는 클라이언트의 요청을 암호화..

Network 2022.10.12

File Storage와 Block Storage에 대해 알아보자

File Storage: 파일 스토리지는 대부분의 사람들이 일상에서 사용하는 가장 일반적인 저장소 유형이다. 폴더를 생성하고 그 아래 하위 폴더를 만들어 계층 구조로 체계화 하고, 이러한 폴더/파일 경로를 이용해서 원하는 파일에 저장하거나 접근하는 방식을 취한다. 파일 스토리지는 일반적으로 하드 드라이브 및 네트워크 연결 스토리지 (Network Attacted Storage) 시스템에 배치된다. NAS는 네트워크를 통해 서로 다른 컴퓨터들이 파일이 저장된 저장소를 공유하면서 파일에 접근할 수 있는 방식이다. 따라서 하나의 네트워크에 수많은 컴퓨터가 접속하여 파일에 접근하려고 한다면 처리에 부하가 걸려 성능이 떨어질 수 있다. 따라서, 파일 스토리지는 보통 업무 현장 및 중대형 기업에서 사용하는 개인용 ..

Virtual CPU (vCPU)에 대해 알아보자

vCPU에 대해 알아보기 전에 먼저 CPU에 대한 기본 지식부터 되짚어보자. CPU (Central Processing Unit)는 한마디로 컴퓨터의 뇌라고 할 수 있는데, 프로그램의 명령어를 해석하고 연산 처리하여 외부에 출력해주는 역할을 한다. 위의 그림을 보면 2개의 Socket과 각 Socket 당 4개의 CPU Core가 존재하고, 1개의 Core에 2개의 Threads가 존재한다. Socket은 CPU 칩이 있는 마더보드의 커넥터이며 CPU와 회로 보드를 물리적으로 연결해준다. 각 CPU칩에는 하나 이상의 코어가 있다. Core는 CPU 시스템의 모든 연산 처리를 담당한다. 최근에는 2개 이상의 코어를 품어 성능을 높인 멀티코어 CPU가 일반화 되었다. Core가 관리자라면 Thread or ..

728x90