데이터베이스의 개념 및 특징 Q. 데이터베이스란? A. 조직이 관리하는 공용의 중복을 최소화하여 통합, 저장한 운영 데이터의 집합 통합된 데이터 (Integrated data) 여러곳에서 사용하던 데이터를 통합하여 하나로 저장. 데이터의 중복을 최소화하여 중복 저장으로 인한 데이터 불일치 최소화 -> 데이터 무결성 저장된 데이터 (Stored data) 컴퓨터 저장장치에 저장된 데이터를 의미한다. 운영 데이터 (Operational data) 조직의 목적을 위해 사용되는 데이터. 업무를 위해 검색을 할 목적으로 저장된 데이터를 말한다. 공용 데이터 (Shared data) 한사람만을, 한 업무만을 위한 데이터가 아니라 공동으로 사용되는 데이터를 의미. 어느 순간에라도 동시에 여러 사용자에 의해 사용될 수..
where select문에 where 키워드를 사용함으로서 조건을 추가할 수 있다. (부서가 A인) 사원을 조회, (월급이 X원 이상인) 사원을 조회 등등 구조 select ~ from ~ where ~ 쿼리 작성 -- 부서번호가 d005인 부서의 매니저의 사원의 사원번호와 부서번호를 가져온다. select emp_no, dept_no from dept_manager where dept_no = 'd005'; -- d003부서의 매니저가 아닌 매니저들의 사원번호, 부서번호를 가져온다. select emp_no, dept_no from dept_manager where dept_no != 'd003'; -- 급여가 150000 이상인 사원들의 사원번호, 급여를 가져온다. select emp_no, sala..
운영체제란 무엇인가? 운영체제란? 컴퓨터 하드웨어 바로 위에 설치되어 사용자 및 다른 모든 소프트웨어와 하드웨어를 연결하는 소프트웨어 계층 사용자, 사용자 , ... , 소프트웨어, 사용자 .. → 운영체제 → 하드웨어 좁은 의미의 운영체제 - 커널 운영체제의 핵심 부분으로 메모리에 상주하는 부분 컴퓨터에서 항상 돌아가는 프로그램 소프트웨어에서 운영체제는 커널을 일컫는다 넓은 의미의 운영체제 커널 뿐만 아니라 각종 주변 시스템 유틸리티를 포함한 개념 예를들어 윈도우를 설치하게 되면 커널만 존재하는 것이 아니라, 메모리에 상주하지 않는 파일 복사 기능등 다양한 유틸리티가 포함되어 있다 운영체제의 목적 컴퓨터 시스템의 자원을 효율적으로 관리 사용자간의 형평성 있는 자원 분배 주어진 자원으로 최대한의 성능을 ..
MySql 설치 후 DB 넣기 (mysql에서 제공하는 test DB 사용) https://github.com/datacharmer/test_db 위 링크에서 테스트 db를 다운받고 local database에 추가 mysql -u root -p -t < employees.sql 다운 받은 폴더에서 위 명령어를 치면 해당 db 정보가 로컬 mysql db에 추가된다 테스트는 mysql workbench를 통해서 진행한다 SQL 분류 데이터 검색어 SELECT 데이터 조작어 (DML) INSERT, UPDATE, DELETE 데이터 정의어 (DDL) CREATE, ALTER, DROP, TRUNCATE, RENAME 데이터 제어어 (DCL) GRANT, REVOKE 트랜잭션 제어어 (TCL) COMMIT,..
프로토콜 기존에는 네트워크를 이루는 다양한 프로토콜이 존재했다. 따라서 어떤 프로토콜을 사용해서 통신을 할지 정하고 어느 협회에서 만든 프로토콜이냐에 따라 성능/구조상의 차이도 많았다. 하지만 현재에는 이러한 산재된 프로토콜 기술들이 이더넷 - TCP/IP 기반의 프로토콜 스택으로 변경되고 있다. 물리적 측면에서 이더넷이, 논리적 측면에서 TCP/IP 프로토콜 스택이 널리 사용된다. 이전에는 네트워킹, 컴퓨팅 환경이 매우 열약하였으므로 최대한 효율적으로 통신하기 위해 0과 1로 이뤄진 2진 수 비트 기반의 프로토콜이 만들어졌다. 하지만 현재에는 그렇지 않으므로 애플리케이션 레벨의 프로토콜은 비트 기반이 아닌 문자 기반의 프로토콜을 많이 사용하고 있다. 예를들어 HTTP, SMTP, STOMP 등을 들 수..
Application Layer - protocol stack의 가장 위에 존재한다 - 사용자가 직접 사용하는 protocol - 다양하고 시대에 따른 변화가 크다 Protocol 관점에서의 application - socket(SAP)을 통해서 Transport Layer와 소통한다 - application layer가 존재하는 end-system 끼리 소통하는 것 - socket의 건너편은 상대방 end-system socket Application Architecture - Client-Server vs. Peer-to-Peer(P2P) Process and Socekt Process end system의 OS상에서 동작하는 프로그램 객체 - 서로 다른 Process끼리 Message를 주고 받으면..
객체지향 디자인 패턴 - 객체지향 프로그램이 복잡해지면서 객체 지향 프로그래밍 설계를 할 때 자주 발생하는 문제들을 피하기 위해 사용되는 패턴이다 - 여러 사람이 협업할 때에는 버그를 발생시키기 쉽고 성능을 최적화 시키기도 어렵다 생성패턴 - 팩토리, 빌더, 싱글톤 구조패턴 (객체 결합 패턴) - 파사드 행위 패턴 (객체 간 커뮤니케이션) - 반복자 팩토리 패턴 - 상위 클래스와 하위 클래스가 있을 때, Factory Class를 사용하여 하위 클래스의 인스턴스를 생성한다 - Cat -> Animal, Dog -> Animal public class AnimalFactory { static Animal create(String str) { if (str.equals("Dog")) return new Do..
Layer 4 Overview End-to-End data 전송을 위한 logical communication 역활 Connection-oriendted(TCP) vs. Connectionless(UDP) IP 및 PORT 번호로 식별 예시 우편을 전달한다고 할때, 건물 to 건물로 전달하는 것은 host to host로 Network Layer의 역활이고, 각 건물에서 우편을 사람 to 사람으로 전달하는 역활은 port to port로 Transport Layer의 역활이다 IP 계층에 대한 다양한 제어 동적 IP 주소 관리 IP 변환 (NAT) IP packet 흐름 제어 Transport Layer 종류 Application에 따라 두가지 프로토콜 중 한가지를 사용한다 User Datagram Pr..
Routing Control Plane Router내의 Data / Control Plane 동작 성격 (Data forwarding / routing)에 따라 기능이 나뉘어진다 Data plane IP header 분석 Datagram Forwarding Fragmentation (MTU - Maximum Transport Unit) Control plane Routing algorithm ICMP (Internet Control Message Protocol) Routing Algorithm Routing의 forwarding Table == Routing Table 입력받은 Datagram에 대한 출력 port를 정하기 위해 각 Router가 보유한 표 어디로 Datagram을 보내야하는지 적혀있는..
Layer 3 Network Layer라고도 부른다 1 : 1이 아닌 여러 구성들이 얽혀 있는 네트워크 구조에서 재역활을 하는 Layer이다 Network에서 end-to-end로 Packet을 전달해주는 역활 각 packet이 제 경로를 찾도록 해준다 Layer3 흐름 Layer3가 네트워크에서 어디로 가야할지 알려준다. 1 hop 이동 후 거기서 다시 확인, Layer 3에서 해당 패킷을 보고 자신의 것이 아니라면 목적지에 맞는 곳으로 다시 보내라고 내려준다 제대로 목적지에 도착한 경우 layer 3에서 확인 후 위 계층으로 올려준다 end에서 목적지 end까지 packet을 전달하는데, 네트워크 상에서 라우터의 layer 3에서 어디로 전달되야 하는지 알려준다, 라우터의 네트워크 계층은 네트워크 도..
OSI Layer 개념 통신 네트워크를 이루는 protocol layer의 표준형 모델 대부분의 통신 네트워크는 이러한 형태를 갖추고 있다 7 layer, 5 layer model 두가지가 있다 layer 1, 2, 3, 4는 공통 부분 L 1 (physical), L 2(link)는 보통 쌍으로 이뤄지고 시스템 별로 서로 다르다 L 3 (network) 는 IP (Internet Protocol) L 4 는 (transport) TCP / UDP Layer 1 : Physical Layer 물리 계층이라고 불린다 1 : 1 상황에서 직접적인 물리 신호를 주고 받아서 정보를 전달하는 역활 1 hop으로 연결된 상대방에게 직접 정보를 전달 1 hop이란? → A에서 C를 거쳐서 B로 간다고 하면 A에서 C..
PDU Adjustment N → N - 1 Layer mapping 을 위한 PDU 크기 조정 3가지 방식 - one to one - Multiplexing : 상위 layer의 여러 SAP을 모아서 처리 - Splitting : 하위 layer의 여러 SAP로 분배 SDU에 대한 처리 또한 구조에 맞게 이뤄진다 Multiplexing 시 필요한 protocol functions Scheduling (n → n-1) - 화장실은 한개, 줄은 여러줄일때 어느 줄부터 화장실로 보낼지 - N layer의 SAP에서 동시에 PDU를 수신시, N layer에서 어떤 SAP부터 N-1 layer로 내려보낼지 정하는 것 Assignment (n-1 → n) - (N - 1) layer에서 N layer의 어떤 SA..
- Total
- Today
- Yesterday