전체 글(63)
-
집계 명령어(3)
- 문자열 연산자 $concat : 두 개 이상의 문자열을 단일 문자열로 연결한다. $strcasecmp : 대/소문자를 구분하지 않는 문자열 비교를 하며, 숫자를 반환한다. $substrBytes : 문자열의 부분 문장열을 만든다. $toLower : 문자열을 모두 소문자로 변환한다. $toUpper : 문자열을 모두 대문자로 변환한다. - 산술 연산자 $add : 배열 번호를 추가한다. $divide : 첫 번째 숫자를 두 번째 숫자로 나눈다. $mod : 첫 번째 숫자의 나머지를 두 번째 숫자로 나눈다. $multiply : 숫자 배열을 곱한다. $subtract : 첫 번째 숫자에서 두 번째 숫자를 뺀다. - 날짜/시간 연산자 $dayOfYear : 연 중의 일로서 1에서 365까지 $dayOfM..
2022.11.14 -
7. IP 프로토콜(3)
IP 프로토콜의 주요 특징 - 비연결형 서비스 - 패킷 분할/병합 기능 - 데이터 체크섬은 없고, 헤더 체크섬만 제공 - Best-Effort IP 헤더 - Service Type 필드 -> DS/ECN 필드로 변경 사용자에게 제공하는 서비스 품질에 관련된 내용 0~2 비트는 상위 계층의 응용 서비스 환경에 따라 설정 3,4,5비트는 일반적으로 0 > DS(Differentiated Services)(6비트) : DS 필드 값은 차등 서비스의 기준이 되는 레이블 값. 동일한 DS 값을 갖는 트래픽들은 동일한 서비스 등급으로 처리됨 > ECN(Explicit Congestion Notification)(2비트) : ECT 0과 ECT 1은 동일한 의미. ECN 기능을 위해 TCP 프로토콜의 헤더에 ECE ..
2022.11.05 -
7. IP 프로토콜(2)
간단한 라우팅 프로토콜 - 최단 경로 라우팅 : 거리 기준은 다양하지만 중간에 거쳐가는 홉 수로 판단. 패킷이 목적지로 가는 동안 거치는 라우터 수가 최소가 되도록 경로 선택 - 플러딩 : 라우터가 입력된 패킷을 출력 가능한 모든 경로로 중개하는 방식 네트워크에 패킷이 무한개 만들어질 위험. 중요한 데이터를 모든 호스트에게 동시에 전달하는 환경에서 사용 거리-벡터 라우팅 프로토콜 라우터가 자신과 직접 연결된 주변 라우터에게 라우팅 정보를 교환하는 방식 - 전체 네트워크에 대한 지식 - 이웃 라우터에게만 전달 - 일정한 주기로 정보 공유 교환 정보는 전체 네트워크에 속하는 개별 네트워크까지 걸리는 거리 정보 개별 라우터에서 유지하는 필수 정보 - 링크 벡터 : 직접 연결된 네트워크에 대한 연결 정보 - 거..
2022.11.05 -
7. IP 프로토콜(1)
네트워크 계층의 주요 기능 - 라우팅 : 송수신 호스트 사이의 패킷 전달 경로를 선택 - 혼잡제어 : 네트워크에 패킷 수가 과도하게 증가되는 현상을 예방하거나 제거하는 기능 - 패킷 분할/병합 : 상위 계층에서 내려온 데이터는 하위 계층인 MAC 계층의 프레임 구조에 정의된 형식으로 캡슐화. 송신 호스트에서는 전송 전에 적절한 크기로 데이터를 분할, 수신 호스트는 분할되어 수신한 데이터를 다시 병합 서비스의 종류 - 연결형 : 데이터 전송 전에 데이터의 전송 경로를 미리 결정. > 상대적으로 신뢰성이 높음 > 전달되는 패킷들이 모두 동일한 경로를 이용하기 때문에 목적지에 도착하는 패킷의 순서가 송신된 순서와 동일 > TCP : 전송 계층의 기능을 지원하는 연결형 프로토콜 - 비연결형 : 데이터의 전송 경..
2022.11.05 -
집계 명령어(2)
- $unwind 스테이지 : 하나의 도큐먼트에 있는 배열 요소들을 분리하여 각각의 도큐먼트에 분배하는 역할 수행 배열의 요소를 분리하여 도큐먼트를 만들 때 배열의 순서(인덱스)를 기록하는 방법이 있다. $unwind{ path: //필드 이름과 경로 includeArrayIndex : //새로 생성할 인덱스 필드 이름 preserveNullAndEmptyArrays : //true이면 빈 요소도 포함, false이면 빈 요소 불포함(default는 false) } - $out 스테이지 : 입력받은 도큐먼트를 컬렉션으로 저장하는 역할 - $sort, $limit, $skip 고급 스테이지 $bucket : 도큐먼트를 범위에 따라 그룹화한다. $bucketAuto : 그룹의 개수에 따라 자동 그룹핑 $ad..
2022.11.01 -
집계 명령어(1)
집계 명령어 필요성 : 기존의 find로는 원하는 데이터로 가공하는데 한계가 있음. grouping, filtering 등 다양한 연산 적용 가능 MongoDB의 집계 방법론 맵-리듀스 집계 파이프라인 자유도 좋다 나쁘다 처리 속도 보통 가장 좋다 램 사용량 높음 낮음 처리 위치 자바스크립트 엔진 몽고디비 내부 집계 처리를 위한 주요 스테이지 $project : 출력 도큐먼트 상에 배치할 필드를 지정 $match : 처리될 도큐먼트를 선택하는 것. find()와 비슷한 역할 수행 $limit : 다음 단계에 전달될 도큐먼트의 수를 제한 $skip : 지정된 수의 도큐먼트 건너뛰기 $unwind : 배열을 확장하여 각 배열 항목에 대해 하나의 출력 도큐먼트를 생성 $group : 지정된 키로 도큐먼트를 그..
2022.11.01