| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 8 | 9 | 10 | 11 | 12 | 13 | 14 |
| 15 | 16 | 17 | 18 | 19 | 20 | 21 |
| 22 | 23 | 24 | 25 | 26 | 27 | 28 |
| 29 | 30 |
- 관계해석
- TRUNCATE
- PDU
- 데이터 독립성
- 개념 스키마
- 내부 스키마
- 외부 스키마
- SQL
- 역정규화
- create index
- 3단계 스키마
- 관계대수
- 파생 칼럼
- rollback
- 구체화 뷰
- LEFT JOIN
- 뷰
- 테이블 분할
- 데이터베이스
- 정보처리기사
- sqld
- b-tree
- ANSI/SPARC
- CREATE VIEW
- 반정규화
- 데이터 정합성
- 파티셔닝
- with check option
- OSI 7계층
- TCP/IP 4계층
- Today
- Total
목록전체 글 (61)
오늘부터 공부한다
OSI 7계층과 TCP/IP 4계층OSI 7계층은 컴퓨터끼리 통신하는 과정을 일곱 단계로 나눈 참조 모델이고, TCP/IP 4계층은 실제 인터넷이 쓰는 프로토콜 묶음을 네 단계로 나눈 모델이다.OSI는 ISO와 ITU-T가 함께 정했고(ITU-T X.200, 1994), TCP/IP 4계층은 IETF의 RFC 1122(1989)에 계층 이름이 나온다.OSI 7계층TCP/IP 4계층대표 프로토콜대표 장비데이터 단위7 응용응용HTTP, FTP, SMTP, DNS, TelnetL7 스위치데이터(메시지)6 표현응용JPEG, MPEG 같은 형식, 암호화, 압축없음데이터5 세션응용NetBIOS, RPC없음데이터4 전송전송TCP, UDPL4 스위치세그먼트(TCP), 데이터그램(UDP)3 네트워크인터넷IP, ICMP,..
반정규화란반정규화(denormalization)는 정규화를 끝낸 테이블에 일부러 중복 데이터를 다시 넣어 조회를 빠르게 하는 작업이다.JOIN과 집계를 줄이는 대신 같은 값이 여러 곳에 생겨서, 쓰기가 느려지고 값이 서로 어긋날 수 있다.분류기법쇼핑몰 예시칼럼 반정규화중복 칼럼 추가orders에 회원 이름(member_name) 복사파생 칼럼 추가orders에 주문 합계(total_price) 저장테이블 반정규화테이블 병합members와 1:1인 member_profiles를 합침테이블 분할 (수직, 수평)큰 칼럼을 떼어 내거나 주문을 연도별로 나눔테이블 추가일별 매출 통계 테이블관계 반정규화중복 관계 추가deliveries에서 members로 바로 가는 member_id분류는 국내 SQLD 정리 글들이..
인덱스와 뷰란인덱스와 뷰는 둘 다 테이블 위에 따로 만드는 데이터베이스 객체다.인덱스는 데이터를 빨리 찾으려고 만드는 저장 구조이고, 뷰는 SELECT 문 하나에 이름을 붙여 테이블처럼 쓰는 가상 테이블이다.구분인덱스뷰저장하는 것열 값과 행 위치를 정렬한 구조SELECT 문 정의만 (데이터는 없음)쓰는 이유조회 속도쿼리 단순화, 보안3단계 스키마내부 스키마외부 스키마만들기CREATE INDEXCREATE VIEW지우기DROP INDEXDROP VIEW대가INSERT, UPDATE, DELETE가 느려진다조건에 따라 INSERT, UPDATE가 안 된다예전 "3단계 스키마" 글에서 인덱스는 내부 스키마, 뷰는 외부 스키마로 나눴는데, 이 글은 그 두 객체를 하나씩 본다.예시도 그 글과 같은 쇼핑몰 회원(m..
3단계 스키마란3단계 스키마는 데이터베이스를 사용자가 보는 층, 전체 구조를 정하는 층, 디스크에 저장되는 층으로 나눈 구조다.1975년 ANSI/X3/SPARC 연구 그룹이 내놓아서 ANSI/SPARC 3단계 구조라고도 부른다.스키마관점정하는 것개수대응하는 객체외부 스키마사용자, 응용 프로그램각자 필요한 데이터만 골라 보는 모습여러 개뷰(VIEW)개념 스키마조직 전체 (DBA)모든 데이터, 데이터끼리의 관계, 제약조건하나테이블, 키, 제약조건내부 스키마저장 장치레코드를 디스크에 어떻게 담고 찾을지하나인덱스, 데이터 파일, 저장 위치층을 나누는 이유는 데이터 독립성이다.아래 층을 바꿔도 위 층은 그대로 쓸 수 있게 하려는 것이다.ANSI-SPARC 3단계 구조 그림. 위에서부터 외부 단계의 사용자 뷰 여..
SQL 명령어 분류SQL 명령어는 하는 일에 따라 DDL, DML, DCL, TCL 네 가지로 나눈다.테이블 구조를 만들면 DDL, 데이터를 다루면 DML, 권한을 주면 DCL, 트랜잭션을 끝내면 TCL이다.분류이름하는 일명령어DDL데이터 정의어 (Data Definition Language)테이블, 뷰, 인덱스 같은 객체를 만들고 바꾸고 지운다CREATE, ALTER, DROP, TRUNCATE, RENAMEDML데이터 조작어 (Data Manipulation Language)테이블 안의 데이터를 조회하고 넣고 고치고 지운다SELECT, INSERT, UPDATE, DELETE, MERGEDCL데이터 제어어 (Data Control Language)사용자에게 권한을 주고 뺏는다GRANT, REVOKET..
관계대수 기호와 SQL 대응관계대수는 원하는 결과를 얻는 순서(어떻게)를 연산자로 적는 절차적 언어이고, 관계해석은 원하는 결과의 조건(무엇)만 적는 비절차적 언어다.시험에 나오는 관계대수 기호와 그에 맞는 SQL은 아래와 같다.기호이름하는 일SQLσ셀렉트(Select)조건에 맞는 행만 고른다WHEREπ프로젝트(Project)원하는 열만 남긴다SELECT 열 목록 (+ DISTINCT)⋈조인(Join)두 릴레이션을 공통 속성으로 잇는다JOIN ... ON, NATURAL JOIN÷디비전(Division)다른 릴레이션의 값을 모두 가진 행을 고른다전용 문법 없음 (NOT EXISTS 두 번)∪합집합두 결과를 합친다UNION∩교집합양쪽에 다 있는 행INTERSECT-차집합왼쪽에만 있는 행EXCEPT (Ora..
SQL JOIN 종류SQL JOIN은 두 테이블의 행을 조건에 맞춰 이어 붙이는 연산이다.종류는 아래 6가지다.JOIN결과에 남는 행예시 결과 행 수INNER JOIN양쪽에 짝이 있는 행만3LEFT JOIN왼쪽 전부 + 오른쪽 짝 (없으면 NULL)4RIGHT JOIN오른쪽 전부 + 왼쪽 짝 (없으면 NULL)4FULL OUTER JOIN양쪽 전부 (짝 없으면 NULL)5CROSS JOIN모든 행 조합 (N * M)6SELF JOIN같은 테이블끼리 위 JOIN 중 하나4예시는 쇼핑몰의 회원(members)과 주문(orders) 테이블로 본다.이영희는 주문이 없고, 104번 주문은 비회원 주문이라 member_id가 NULL이다. id | name----+-------- 1 | 김철수 2 | 이영희 ..
데이터베이스 키(Key)란키는 테이블에서 행(튜플) 하나를 찾아낼 수 있게 해 주는 속성이나 속성의 묶음이다. 키를 나눌 때는 두 가지 성질을 본다.유일성: 이 값으로 행이 딱 하나만 찾아진다최소성: 속성을 하나라도 빼면 유일성이 깨진다. 꼭 필요한 속성만 들어 있다아래 학생 테이블로 하나씩 본다. 학번과 주민번호는 학생마다 다르고, 이름과 학과는 겹칠 수 있다.학번주민번호이름학과2019001000101-3xxxxxx김철수컴퓨터공학2019002000315-4xxxxxx이영희컴퓨터공학2019003991120-1xxxxxx김철수경영학슈퍼키(Super Key)유일성만 만족하면 슈퍼키다.행을 하나로 찾을 수만 있으면 필요 없는 속성이 같이 붙어 있어도 된다. 학생 테이블에서는 {학번}, {주민번호}, {학번, ..
