티스토리 뷰
데이터베이스
데이터베이스의 정의
상호 연관된 자료를 집중화하여 체계적으로 조직한 자료의 집합
정의의 의미? 통합된 자료저장소, 자료의 공유를 전제
파일방식의 단점
자료의 중복성(Redundancy)
파일간 자료 불일치(Inconsistency)
자료 의존성(Data Dependence)
자료의 통합성(Integration) 부족
자료의 비호환성(incompatibility)
자료의 공유성(Sharing) 결여
DBMS의 장점
데이터의 중복을 피할 수 있음
저장된 자료를 공동으로 이용할 수 있음
데이터의 일관성, 무결성, 보안을 유지할 수 있음
데이터를 표준화할 수 있음
데이터를 통합하여 관리할 수 있음
항상 최신의 데이터를 유지함
데이터의 실시간 처리가 가능함
데이터의 논리적/물리적 동립성이 보장됨
DBMS의 단점
데이터베이스 전문가 부족
전산화 비용의 증가
대용량 디스크로의 집중적인 Access로 과부하(Overhead)가 발생
파일의 백업(Backup)과 복구(Recovery)가 어려움
시스템이 복잡함
데이터베이스를 보는 세 가지 관점
데이터베이스를 중심으로 보는 물리적 관점(내부적 관점)
DBMS를 중심으로 보는 논리적 관점(개념적 관점)
사용자, 또는 응용프로그램 별로 보는 사용자 관점(외부 관점)
데이터베이스 스키마
데이터베이스에서 자료의 구조, 자료의 표현 방법, 자료 간의 관계를 정의한 것을 말하는 전산학 용어이다. 데이터베이스 관리 시스템(DBMS)이 주어진 설정에 따라 데이터베이스 스키마를 만들어 내며, 데이터베이스 사용자가 자료를 저장, 조회, 삭제, 변경할 때 DBMS는 그것이 생성한 데이터베이스 스키마를 참조하여 명령을 수행한다.
데이터베이스 스키마는 3층 구조로 되어 있다.
외부 스키마(External Schema): 프로그래머나 사용자의 입장에서 데이터베이스의 모습으로 조직의 일부분을 정의한 것
개념 스키마(Conceptual Schema): 모든 응용 시스템과 사용자들이 필요로하는 데이터를 통합한 조직 전체의 데이터베이스 구조를 논리적으로 정의한 개념
내부 스키마(Internal Schema): 전체 데이터베이스의 물리적 저장 형태를 기술하는 개념
DB에서 데이터를 읽어오는 단위는 Block. 즉 I/O는 Block 단위로 이동
블록이 메모리에 있으면 페이지, 디스크에 있으면 블록
임의 접근시간(random access time)
데이터 접근시간(data access time), 헤드가 원하는 트랙에 있는 레코드를 찾아 전송하는 데 걸리는 시간
탐구시간(seek time) + 회전지연시간(rotational delay) + 데이터 전송시간(block transfer time)
10~30ms로 메인메모리 접근시간(10~100ns)에 비해 매우 느림
Database의 성능향상의 초점은 디스크 접근 회수의 최소화: 디스크에 배치, 저장하는 방법이 중요한 문제!
네트워크
종단 간 해결해야 할 문제점(End-to-End Issues)
연결의 설정과 해제가 불분명 → 많은 다른 호스트들의 연결이 가능
적절한 타임아웃 기법이 필요(왕복지연시간(RTT)가 다를 수 있음)
네트워크의 긴 지연 발생 - 오래된 패킷의 도착에 대한 준비 필요
목적지마다 용량이 다를 경우 - 다른 양의 버퍼링에 대비할 필요
네트워크마다 용량이 다를 경우 - 네트워크 혼잡에 대한 준비 필요
TCP는 흐름제어(flow control)과 혼잡제어(congestion control) 두 개의 제어 메커니즘을 이용하여 end-to-end 간의 신뢰성 있는 전송을 보장함. 흐름제어는 송신자가 수신자의 수신 속도보다 빨리 전달하지 못하도록 막는 기법, 혼잡제어는 과다한 데이터가 네트워크로 유입되어 교환기나 링크가 과부화되는 것을 막는 기법. 즉 흐름제어가 종단 간의 문제라 한다면 혼잡제어는 종단 호스트와 네트워크의 상호작용 방식에 관한 문제.
Advertised Window
수신자가 수신을 하는 데 쓸 수 있는 가용용량
Effective Window
더 보낼 수 있는 양
Network Transparency
상대방이 어디에 있건, 응용해서. Physical한 것은 안보이고 알아서 통신
Marshalling(마샬링, Encoding)
응용 데이터를 메시지화 함, 인코드
하나 이상의 프로그램 또는 연속되어 있지 않은 공간으로부터 데이터를 모은 다음, 데이터들을 메시지 형식으로 버퍼에 넣은 뒤 특정 수신기나 프로그래밍 인터페이스에 맞게 해당 데이터를 조직화하거나 미리 정해진 형식으로 변환하는 과정
Unmarshalling(언마샬링, Decoding)
메시지를 응용데이터화 함, 디코드
마샬링을 통해 보내진 데이터들을 원래 구조로 복원시키는 것.
마셜링 데이터 유형
기본(Base) 타입: int, float, ...
플랫(Flat) 타입: structure, array, ...
컴플렉스(Complex) 타입: pointer, tree, ...
변환전략 2가지 +1옵션
규범적 중재유형(Canonical Intermediate Form), 수신 측 교정 방식(Receiver-makes-right)
+동일한 구조를 갖는 다는 것을 송신 측에서 아는 경우, 수신 측 교정 방식을 그대로 사용하는 방식
태그(Tag)
메시지에 포함되는 일종의 추가적인 정보(기본 유형을 보다 구체적으로 표현),
수신 측에서 메시지를 디코드하는 데 도움을 줌.
데이터의 타입, 길이 등
언태깅의 경우 보낼 때부터 제한된 형식에 맞춰서 보내기 때문에 효율성은 높으나 융통성이 떨어짐.
스텁(Stub)
인자 마셜링을 수행하는 코드로, 일반적으로 RPC를 지원하기 위해 사용.
서버 측에서 스텁은 원격 프로시저를 부르는 데 사용되는 인자로 활용할 수 있도록 메시지를 여러 개의 변수로 변환.
인터프리트되거나 컴파일되어 구현할 수 있음. 디스크립션의 변경이 쉬워, 인터프리트 스텁이 유연하며 더 많이 사용됨.
XDR(External Data Representation)
배열의 길이 제외하고 Untagged
Compiled Stubs
ASN.1(Abstract Snytax Notation One)
Tagged
Compiled/Interpreted Stubs
NDR(Network Data Representation)
Architecture Tag(Receiver-makes-right)
Compiled Stubs
데이터 압축
ⓐ 무손실: 압축/비압축 후의 데이터가 원래의 데이터와 정확히 일치
ⓑ 손실: 받는 데이터가 보낸 데이터와 정확히 같다는 것을 보장하지 않음. 사람이 인지하지 못할 정도는 제거해 압축.
무손실 압축 알고리즘
ⓐ RLE(Run Length Encoding): AAABBCDDDD → 3A2B1C4D, C가 1C가 된 것처럼 변화가 많은 데이터의 경우 역효과.
ⓑ DPCM(Differential Pulse Code Modulation): AAABBCDDDD → A0001123333. B와 1의 비트 수가 다르다. 영상에서 RLE보다 좋음.
ⓒ Dictionary-Based Methods: 자주 나오는 Term들의 사전을 만들어 놓고, 각 구절에 대해 해당 인덱스를 전송.
DicBased ex) Lempel-Ziv(LZ), LZ의 변형이 GIF 압축에 사용됨. 10대 1 압축비율도 때로 가능하나 보통 x3.
4가지 애플리케이션
SMTP(Simple Mail Transfer Protocol): 전자우편용 프로토콜
HTTP(HyperText Transport Protocol): 웹 브라우저와 웹 서버 간에 통신하기 위해 사용
DNS(Domain Name System Protocol): 네임 서버에게 질의하고 응답하기 위해 사용
SNMP(Simple Network Management Protocol): 원격 네트워크에 위치하는 노드의 상태를 알아보기 위해 사용
참고자료
http://cafe.naver.com/gaury/17726
http://blog.daum.net/tlos6733/48
무선이동통신
Cell Size
기지국이 커버하는 영역
PMF, PDF, CMF, CDF[RVs can be of two types: Discrete(PMF/CMF), Continuous(PDF/CDF)]
PMF(Probability Mass Function): 확률질량함수, 이산형분포의 확률 함수
PDF(Probability Density Function): 확률밀도함수, 연속형분포의 확률 함수, 그래프에서 높이
CMF(Cumulative Mass Function): 누적질량함수, 이산형분포의 누적확률함수
CDF(Cumulative Density Function): 누적밀도함수, 연속형분포의 누적확률함수, 그래프에서의 면적
RP ⊃ Markov ⊃ BDP(BiDecision Process) ⊃ Poisson
Source Coding
정보 전송을 효율적으로 수행하기 위해 전송하고자 하는 정보에서 필요치 않은 정보를 제거하여 전송량을 줄이는 것을 의미
아날로그 형태를 디지털로 변환, 신호를 압축 부호화하여 전송효율↑
인터넷에 흔한 ZIP 파일
ADM, ADPCM, DM, DPCM 등의 파형부호화, 파형 변환 후 계수값만을 보내는 변환 부호화(DCT 등), 음원 부호화(LPC, Vocoder 등), 복합부호화(CELP, QCELP 등)
Channel Coding
데이터를 착오없이 전송할 수 있도록 잉여 비트를 추가하는 오류 정정 기법을 의미
디지털 형태를 디지털로 변환, 전송 오류의 검출 및 정정
NASA-우주를 오가는 신호들
해밍코드, CRC, BCH, 콘볼루션 코드 등
Source Coding - Prefix Coding
A prefix code is a type of code system (typically a variable-length code) distinguished by its possession of the "prefix property"; which states that there is no valid code word in the system that is a prefix (start) of any other valid code word in the set. For example, a code with code words {9, 55} has the prefix property; a code consisting of {9, 5, 59, 55} does not, because "5" is a prefix of both "59" and "55". A prefix code is an example of a uniquely decodable code: a receiver can identify each word without requiring a special marker between words.
Fourier Transform Properties
Fourier Transform of Various Functions
참고자료
http://thefouriertransform.com
http://en.wikipedia.org/wiki/Prefix_code
'Storage' 카테고리의 다른 글
리안리 PC-A51WX 알루미늄 케이스 구입, 조립후기 (0) | 2014.05.05 |
---|---|
푸마 에보파워 4 TT(PUMA evoPower 4 TT) 풋살화 후기 (5) | 2014.04.26 |
푸리에 변환: Fourier Transform Properties & of Various Functions (0) | 2014.04.22 |
피파3, CA 로빙슛을 응용한 Q-CA 슈팅영상 (0) | 2014.04.22 |
TCP Flag(TCP 제어 플래그): NS, CWR, ECE, URG, ACK, PSH, RST, SYN, FIN (0) | 2014.04.16 |
최선 노력 네트워크(Best-effort Network)란? (0) | 2014.04.16 |
[판매완료] 커세어 GRAPHITE SERIES 600T 화이트 윈도우 (0) | 2014.04.16 |
피파3, 넥슨이 말하는 트레블의 주역 세이두 케이타: 스탯 & 히든, 페이스온 (0) | 2014.04.14 |
댓글