본문 바로가기

CS

(20)
하둡(Hadoop) Hadoop(High-Availability Distributed Object-Oriented Platfrom) 도입 배경 - 대용량 데이터의 관리 및 분석에 적합한 시스템 - 적은 초기 구축비용으로 도입 가능 - 데이터 증가에 따른 확장 용이 정의 - PC급 컴퓨터들로 가상화된 대형 스토리지를 형성하고 그 안에 보관된 거대한 데이터 세트를 병렬로 처리할 수 있도록 개발된 자바 소프트웨어 프레임워크 - 오픈 소스 기반 분산 컴퓨팅 플랫폼으로, 라이선스 비용이 불필요하고, 초기에 작은 클러스터를 구성하여 운영 가능 - 수천대의 분산된 장비에 대용량 파일을 저장할 수 있는 기능을 제공하는 분산파일 시스템(HDFS)과, 저장된 파일을 분산된 서버의 CPU와 메모리 자원을 이용하여 빠르게 분석하는 맵리듀스(Ma..
통신 방식과 이더넷(Ethernet) 단방향 통신(Simplex) - 데이터를 한쪽 방향으로만 전송이 가능한 방식 - 송신측과 수신측이 미리 고정되어 있음 ex) 라디오, TV 반이중 통신(Half-Duplex) - 양방향 전송이 가능하지만 동시에 양쪽 방향에서 전송할 수 없는 방식 - 하나의 통신 채널을 이용하여 교대로 데이터 송수신 - CSMA / CD 프로토콜을 사용하여 충돌을 방지하고 충돌이 발생할 경우 재전송 ex) 무전기, 모뎀을 이용한 데이터 통신 전이중 통신(Full-Duplex) - 두 개의 통신 채널을 이용하여 양방향으로 동시에 송수신 - 전송량이 많고 전송 매체의 용량이 클 때 사용 - 프레임을 전송하기를 기다리는 대기 시간이 없음 ex) 전화, 전용선을 이용한 통신 이더넷(Ethernet) - 컴퓨터 네트워크 기술 중 ..
ARP와 RARP ARP(Address Resolution Protocol, 주소 결정 프로토콜) - 네트워크상에서 IP 주소를 물리적 네트워크 주소(MAC address)로 대응시키기 위해 사용되는 프로토콜 - 즉, IP주소와 MAC 주소 사이를 연결해주는 역할 동작원리 - ARP request : 송신자는 목적지의 물리적인 주소가 필요하므로, 물리주소 요청을 위한 ARP 요청 패킷을 브로드캐스트로 전송(목적지의 물리 주소를 모르기 때문에) - ARP reply : 모든 호스트와 라우터는 송신자가 보낸 ARP 요청 패킷을 수신하고 해당되는 수신자는 자신의 IP와 MAC 주소를 넣어 응답패킷을 유니캐스트로 전송 RARP(Reverse ARP) - ARP와 반대되는 기능을 수행 - 물리적인 주소(MAC)에 해당하는 논리적인..
IP 클래스와 서브넷 IP(Internet Protocol) - 통신망에서 패킷이 목적지까지 찾아갈 수 있도록 데이터그램을 기반으로 비신뢰성, 비연결성 서비스를 제공하며 OSI모델의 네트워크 계층에 해당한다. - 패킷의 분해, 조립, 주소지정, 경로선택 기능을 제공한다. - 망 연결이 IP Address에 의해 이루어지므로 목적지 IP Address를 반드시 알아야한다. IPv4 - IP 패킷(데이터그램)은 크게 헤더 필드와 데이터 필드로 나누고, 옵션을 사용하지 않은 일반적인 IP 헤더의 크기는 20바이트로 가변적이다. - IP 주소는 총 32bit를 8비트 단위(Octet)으로 나누어 각 부분을 점(.)으로 구분된 4개의 필드를 10진수로 나타낸다. (1 Octet = 8 bit) - IP 주소는 해당 네트워크를 구분하기..
가상화란? (VM, 컨테이너, 도커, 쿠버네티스) 애플리케이션의 서비스를 저렴한 비용으로 안정적이고 빠르게 제공하기 위한 인프라이다. 물리적인 컴퓨팅 자원(CPU, Disk, Network 등)을 가상화하여 여러 개의 실행환경(테넌트)이 공유하여 자원을 효율적으로 사용할 수 있게 해주는 것이다. 물리적인 컴퓨팅 자원을 가상화한다는 것은 각 테넌트들이 서로의 존재를 모르도록 격리되어야 함을 의미한다. 1) 호스트 가상화 - Base가 되는 Host OS위에 Guest OS가 구동되는 방식 장점 - 가상의 하드웨어를 에뮬레이팅하기 때문에 호스트 운영체제에 크게 제약사항이 없음 - 논리적으로 분리되어 있어서 한 VM에 오류가 발생해도 다른 VM으로 확산되지 않음 단점 - OS위에 OS가 얹히는 방식이기 때문에 오버헤드가 클 수 있음 종류 : VM Workst..
교착상태(Deadlock) - 다중 프로그래밍 시스템에서 아무리 기다려도 결코 일어나지 않을 사건을 기다리고 있는 하나 또는 그 이상의 프로세스들이 있는 상태 - 자원이 다수의 사용자 프로세스에 의해 공유되고 이들 각 프로세스가 자신에게 할당된 자원에 대해 독점적인 통제권을 가지고 있을 때 발생 - 둘 이상의 서로 다른 프로세스가 자신이 요구한 자원을 할당받아 점유하고 있으면서 상호간에 상대방 프로세스에 할당되어 있는 자원을 요구하는 경우에 발생 - 상호배제, 점유와 대기, 비선점, 환형대기의 조건을 모두 만족했을 경우 교착상태가 발생 4가지 필요조건 상호 배제(Mutual Exclusion) – 한 번에 하나의 프로세스만이 자원을 사용 점유와 대기(Hold and Wait) – 최소한 하나의 자원을 점유하는 프로세스가 존재하면서..
동기화 임계 영역 - 하나의 프로세스가 수정 가능한 공유 자원을 액세스 하고 있을 때, 그 프로세스에 의해 참조되는 프로그램의 부분을 의미한다. - 하나의 프로세스가 공유 데이터를 접근하면, 다른 프로세스는 그 공유 데이터를 접근해서는 안 된다. 즉 여러 프로세스들 중에 하나의 프로세스만이 임계 영역을 사용할 수 있도록 하여 임계 영역에서 공유 변수 값의 무결성을 보장한다. - 임계 영역을 수행 중에 있는 프로세스는 인터럽트, 교착상태, 무한반복이 발생하지 않도록 해야 한다. 코드 지역 - 프로세스가 임계 영역에 진입하려면 진입허가를 요청해야 하는데, 이런 요청을 구현하는 코드 부분을 진입 역역이라고 한다. - 임계 영역을 사용한 이후에는 임계 영역을 빠져나왔음을 알리는 진출 영역이 있다. 나머지 코드 부분은 ..
캐시(Cache) - 프로세서와 메인 메모리 간의 처리 속도 차이를 보완하기 위한 고속 *버퍼이다. (*버퍼 : 데이터를 한곳에서 다른 한 곳으로 전송하는 동안, 일시적으로 그 데이터를 보관하는 메모리 영역) - 메인 메모리에서 데이터를 블록 단위(저속/낮은 대역폭)로 가져와 프로세서에 워드 단위(고속/높은 대역폭)로 전달한다. - 프로세서에서 읽어들인 워드에 참조하려는 정보가 있는 경우를 캐시 적중(cache hit), 없는 경우는 캐시 실패(cache miss)라 한다. 지역성(Principle of locality) 지역성이란 기억장치에 대해 특정 영역에만 참조가 집중적으로 이루어지는 것으로 공간적 지역성과 시간적 지역성 등이 존재한다. 1) 공간지역성(Spatial Locality) - 최근에 참조된 주소의 인접한..