[CS] 조인의 종류와 원리
조인(Join) 두 개 이상의 테이블을 묶어 하나의 결과물을 만드는 것 MySQL에서는 JOIN, MongoDB에서는 lookup이라는 쿼리로 처리할 수 있다. 하지만 MongoDB의 lookup은 성능이 떨어지므로, 여러 테이블을 조인하는 작업이 많을 경우, 관계형 데이터베이스를 써야 한다. 두 테이블의 조인을 위해서는 기본키와 외래키 관계로 맺어져야 하고, 이를 일대다 관계라고 한다. 조인의 종류 INNER JOIN, (LEFT, RIGHT, FULL) OUTER JOIN, CROSS JOIN, SELF JOIN 이 있다. INNER JOIN(내부 조인)은 두 테이블을 조인할 때, 두 테이블에 모두 지정한 열의 데이터가 있어야 한다. OUTER JOIN(외부 조인)은 두 테이블을 조인할 때, 1개의 ..
[CS] 네트워크 분류 / 네트워크 성능 분석 명령어 / 네트워크 프로토콜 표준화
네트워크 분류 네트워크는 규모에 따라 근거리 통신망 LAN, 도시권 통신망 MAN, 광역 통신망 WAN 등으로 구분된다. LAN (Local Area Network) 근거리 통신망은 지리적으로 한정된 범위 안에 분산된 컴퓨터 및 각종 기기를 통신 회선으로 연결한 네트워크이다. 가정, 사무실, 학교 등의 비교적 좁은 지역을 커버하며, 고속 데이터 전송이 가능하다. 보통 이더넷(Ethernet)이나 와이파이(Wi-Fi)와 같은 기술을 이용해서 구축한다. 통신회선을 이용해 공간을 어떻게 구성하느냐에 따라 버스형, 스타형, 링형, 메시형, 트리형으로 구분된다. 장점 데이터 전송 속도가 빠르고, 데이터의 손실률이 낮다. 네트워크 구성이 비교적 간단하며, 관리가 용이하다. 네트워크 내의 자원을 여러 사용자가 공유할..
[CS] OSI 7계층 - 세션, 표현, 응용 계층
5계층 - 세션 계층 (Session Layer) 통신 세션*을 구성하는 계층으로, 네트워크 상 양쪽 연결을 관리하고 연결을 지속시켜주는 계층이다. 포트(Port)번호를 기반으로 연결한다. 응용 프로그램 간 통신을 하기 위한 세션을 OS를 통해 확립, 유지, 중단하는 작업을 수행한다. 전송 중단시 데이터를 재전송하거나 연결을 복구한다. 동기화를 하여 송수신 중 오류가 발생하면, 동기점 이후부터 재전송한다. 동시송수신(Duplex, 전화), 반이중(Half-Duplex, 무전기), 전이중(Full-Duplex, TV) 방식의 통신과 함께 체크 포인팅과 종료, 다시 시작 과정 등을 수행한다. 규칙(프로토콜) : NetBIOS, SSH, TLS 단위 : 데이터 * 세션 : 클라이언트와 웹 서버 간 네트워크 연..
[Spring] 컬렉션(List, Set, Map, HashMap) & 스프링 컨테이너
Q. List, Set, Map, HashMap의 차이에 대해서 설명해주세요. List는 순서가 있고, 중복을 허용한다. 저장공간이 필요에 의해 자동으로 늘어난다. Set은 순서가 없고, 중복을 허용하지 않는다. 집합. Map은 순서가 없고, 키는 중복을 허용하지 않고, 값은 중복을 허용한다. HashMap은 Map 인터페이스를 implements한 클래스로 중복을 허용하지 않는다. 특정 키에 대한 값을 찾는 과정에서 HashMap은 HashTable을 이용해서 키-값 관계를 유지하고, Map은 red-black Tree알고리즘을 이용한다. Q. 스프링 컨테이너(Spring Container)에 대해 설명해주세요. 스프링 컨테이너(Spring Container)는 스프링 프레임워크의 핵심 컴포넌트이다. ..