목록CS (20)
Written by coh at home
개요목적기존의 백업도구(mysqldump)는 데이터량에 따라 백업과 복원 시간이 선형적 혹은 그 이상으로 증가한다. 이를 개선한다.백업과 복원이 얼마나 진행되었는지 정보를 제공한다.백업과 복원에 대한 히스토리를 제공한다.목표백업과 복원 속도를 개선한다.백업과 복원에 대한 정보를 제공한다.배경DB의 메모리는 서버의 50%까지 사용한다.서버의 하드디스크 크기는 1Tb이다.운영환경DB에 5초마다 730건의 record가 insert가 되고 있다.최초 풀백업 데이터량은 약 5억건이다.이미지, 동영상 파일도 백업이 되어야한다.테스트 환경0.1초마다 730 record insert를 1000회 수행 후 증분백업 진행. (약 5000초 가정)기존 시스템우리의 DB에는 약 9억건의 데이터가 존재하는 DB가 있다. 이를..
결론부터 말하면자바의 HashSet은 Contains()의 시간복잡도가 O(1)이다.hash함수를 적용한 값을 버킷에 담고 있기 때문에 특정 문자열을 찾는 속도가 상수시간만큼 걸리는 것이다. HashTable은 가장 기초적인 자료구조로 Key와 Value의 pair이다. 키값을 해쉬화해서 인덱스로 만든 후 버킷의 인덱스에 자료를 저장하게 된다. HashMap도 똑같이 동작한다. 똑같이 동작한다면 왜 두 개의 컬렉션 라이브러리가 있는 것일까?결론부터 말하면 동기화 여부와 null허용 여부이다. HashTable은 자바 1.0부터 나왔고 HashMap은 자바1.2부터 나왔다.HashTable은 동기화가 설정되어 있고 HashMap은 동기화가 설정되지 않았다. 따라서 속도는 HashMap이 빠르나 멀티스레드..
백준의 1654번 랜선자르기 문제를 해보면 탐색을 해서 적절한 값을 찾아야 한다.이때 완전탐색을 하게되면 시간초과가 뜨게 된다. 그래서 이분탐색을 해야한다.package baekjoon;import java.util.ArrayList;import java.util.List;import java.util.Scanner;public class Lan { private static final List arr = new ArrayList(); public static void main(String[] args) { Scanner sc = new Scanner(System.in); int k = sc.nextInt(); int n = sc.nextInt(); ..
교재에 대한 설명. 좋은 기술이란?? Good Technology is Invisible. -> 연필, 자동차, 모터, 컴퓨터 IoT와 같이 보이지 않는 곳에서 device들은 데이터를 주고 받는다. 이런 데이터들은 통신을 통해 주고받게 되며 이는 5개의 layer로 구성이 된다. Physical, Data link, Network, Transport, Application. 4개의 layer는 device에 내장되어 개발할 때 신경쓸 필요가 없고 우리는 Application부분을 개발하게 된다. 이때 Application을 개발할때 socket을 이용하게 되는데 socket은 API이다. API는 개발자가 개발을 편하게 하기 위한 library라고 생각하면 된다. 예를 들어 printf 같은 것을 우리..
Netpractice는 네트워크에 대한 기본 개념을 배울 수 있는 과제이다. 해당 과제에서는 다음과 같은 용어들이 사용된다. 1. subnet, subnetmask2. boradcast 주소3. IP address. # Network의 역사 : subnet의 등장 배경.네트워크는 컴퓨터 통신망 또는 데이터 통신망이다. 집에 있는 노트북을 떠올려보자. 정처기 기준으로는 DTE, 데이터 종단기기라고 부르고 다른 용어로는 End Point 혹은 End node 혹은 host라고 한다. 데이터통신에선 host를 주로 사용하여 host라고 하겠다. 노트북이 공유기를 통해 wifi에 접속하게 되면 노트북은 IP주소를 할당받는다. IP주소는 쉽게말하면 도로명주소다.누군가 나에게 편지를 보낸다면 실제 도로명 주소를 ..
Network Layer의 기본장치는 Router Datalink Layer의 기본장치는 collision domain이 두 개면 bridge. 그 이상이면 switch Physical Layer의 기본장치는 2개의 host간의 연결이면 Repeater. multiport repeater이면 hub. hub의 물리적 topology는 star형이지만 논리적으로는 bus형이므로 Collision Domain은 하나이다. 그리고 상위 계층의 장비들은 하위계층의 기능을 모두 포함하고 있다. 예컨데 라우터로 repeater처럼 동작시킬 수 있는 것이다. 스위치는 당연히 1계층 역할로도 동작하고 2계층 역할로도 동작한다. 스위치는 스위치테이블을 갖고 데이터를 전달해주게 되는데 가장 처음에는 빈 테이블이었다가 Fr..
제목은 Data link layer의 기능 중 하나이다. Multiple Access Protocol은 3가지로 나뉜다. 1. Random Access Protocol 2. Controlled-access Protocol 3. Channelization protocol Random Access Protocol은 contention-based protocol이라고도 하며 1. ALOHA 2. CSMA/CD : 유선LAN 3. CSMA/CA : 무선LAN 이렇게 3가지 프로토콜이 있다. 이 프로토콜의 특징은 노드의 우선순위가 없고 다른 노드를 컨트롤 할 수가 없다는 것과 매체의 상태에 따라 보낼지 말지를 결정한다는 것이다. Stop and Wait Protocol은 매체의 상태와 관계없이 보냈었다. -ALO..