일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- 알고리즘
- SQLD
- sql
- ROWNUM
- 백준 11059
- AWS
- 백준 2852
- 깃허브
- SAA-C02
- github
- 프로그래머스 조건에 맞는 개발자 찾기
- 정규화
- 백준 1756
- 데이터베이스
- 백준 크리문자열
- 파이썬
- react
- join
- 리스트 컴프리헨션
- 백준 24499 파이썬
- Today
- Total
목록전체 글 (109)
-
목차 1. 트랜잭션 개요 2. COMMIT 3. ROLLBACK 4. SAVEPOINT 5. 정리 1. 트랜잭션 개요 트랜잭션 : 데이터베이스의 논리적 연산 단위. 밀접하게 관련되어 분리될 수 없는 한 개 이상의 데이터베이스 조작을 말한다. 하나의 트랜잭션에는 하나 이상의 SQL 문장이 포함된다. 올바르게 반영된 데이터를 DB에 반영시키는 것을 커밋(COMMIT), 트랜잭션 시작 이전의 상태로 되돌리는 것을 롤백(ROLLBACK)이라고 하며 저장점(SAVEPOINT) 기능과 함께 3가지 명령어를 TCL(Transaction Control Language)로 분류한다. 트랜잭션의 대상이 되는 SQL문은 UPDATE, INSERT, DELETE 등 데이터를 수정하는 DML 문이다. 트랜잭션이 수행하는 동안 ..
목차 1. INSERT 2. UPDATE 3. DELETE 4. SELECT 5. 산술 연산자와 합성 연산자 DML(Data Manipulation Language) : 만들어진 테이블에 자료들을 입력/수정/삭제/조회 하는 언어 1. INSERT 테이블에 데이터를 입력하는 방법은 두가지 유형이 있고, 한 번에 한 건만 입력된다. INSERT INTO 테이블명 (COLUMN_LIST) VALUES (COLUMN LIST에 넣을 VALUE_LIST); INSERT INTO 테이블명 VALUES (전체 COLUMN에 넣을 VALUE_LIST); 해당 칼럼명과 입력되어야 하는 값을 서로 1:1로 매핑해서 입력한다. 해당 칼럼의 데이터 유형이 CHAR나 VARCHAR2 등 문자 유형일 경우 ' (single qu..
목차 1. 데이터 유형 2. CREATE TABLE 3. ALTER TABLE 4. RENAME TABLE 5. DROP TABLE 6. TRUNCATE TABLE 1. 데이터 유형 데이터 유형 : 테이블에 특정 자료를 입력할 때, 그 자료를 받아들일 공간을 자료의 유형별로 나누는 기준 VARCHAR 유형은 가변 길이이므로 필요한 영역은 실제 데이터 크기뿐이다. 따라서 길이가 다양한 칼럼과, 정의된 길이와 실제 데이터 길이에 차이가 있는 칼럼에 적합하다. 저장 측면에서도 CHAR 유형보다 작은 영역에 저장할 수 있다. CHAR 에서는 문자열을 비교할 때 공백을 채워서 비교하는 방법을 사용한다. 우선 짧은 쪽의 끝에 공백을 추가하여 2개의 데이터가 같은 길이가 되도록 한다. 그리고 앞에서부터 한 문자씩 비..
목차 1. 데이터베이스 2. SQL 3. TABLE 1. 데이터베이스 데이터베이스 : 특정 기업이나 조직, 또는 개인이 필요에 의해 데이터를 일정한 형태로 저장해놓은 것 많은 사용자들은 데이터를 효율적으로 관리하고, 데이터의 손상을 피하며 필요시에 데이터를 복구하기 위한 소프트웨어를 필요로 했고, 이런 요구사항을 만족시켜주는 시스템을 DBMS라고 한다. (Database Management System) 데이터베이스의 발전 - 1960s : 플로우차트 중심의 개발 방법을 사용하였으며 파일 구조를 통해 데이터를 저장하고 관리했다. - 1970s : 데이터베이스 관리 기법이 처음 태동되던 시기였으며 계층형(Hierarchical) 데이터베이스, 망형(Network) 데이터베이스같은 제품들이 상용화되었다. -..
목차 1. 분산 데이터베이스의 개요 2. 분산 데이터베이스의 투명성 3. 분산 데이터베이스의 적용 방법 및 장단점 4. 분산 데이터베이스의 활용 방향성 5. 데이터베이스 분산 구성의 가치 6. 분산 데이터베이스의 적용 기법 7. 분산 데이터베이스를 적용하여 성능이 향상된 사례 1. 분산 데이터베이스의 개요 분산 데이터베이스의 정의 - 여러 곳으로 분산되어있는 데이터베이스를 하나의 가상 시스템으로 사용할 수 있도록 한 데이터베이스 - 논리적으로 동일한 시스템에 속하지만, 컴퓨터 네트워크를 통해 물리적으로 분산되어있는 데이터들의 모임 즉, 분산 데이터베이스는 DB를 연결하는 빠른 네트워크 환경을 이용하여 DB를 여러 지역의 여러 노드로 위치시켜 사용성/성능 등을 극대화 시킨 데이터베이스이다. 2. 분산 데이..
목차 1. 슈퍼타입/서브타입 모델의 성능고려 방법 2. 인덱스 특성을 고려한 PK/FK 데이터베이스 성능 향상 3. 물리적인 테이블에 FK 제약이 걸려있지 않을 경우 인덱스 미생성으로 성능 저하 1. 슈퍼타입/서브타입 모델의 성능고려 방법 1. 슈퍼/서브타입 데이터 모델의 개요 슈퍼/서브타입 데이터 모델(Extended ER)은 최근에 데이터 모델링을 할 때 자주 쓰이는 모델링 방법이다. 자주 쓰이는 이유는 업무를 구성하는 데이터의 특징을 공통점과 차이점을 중심으로 효과적으로 표현할 수 있기 때문이다. 공통 부분 : 슈퍼타입으로 모델링 공통으로부터 상속받아 다른 엔터티와 차이가 있는 속성 : 별도의 서브 엔터티로 구분 물리적인 데이터 모델을 설계하는 단계에서는 슈퍼/서브타입 데이터 모델을 일정한 기준에 ..
목차 1. 대량 데이터 발생에 따른 테이블 분할 개요 2. 한 테이블에 많은 수의 칼럼을 가지고 있는 경우 3. 대량 데이터 저장 및 처리로 인한 성능 4. 테이블에 대한 수평분할/수직분할의 절차 1. 대량 데이터 발생에 따른 테이블 분할 개요 데이터 모델이 아무리 설계가 잘 되어있어도 대량의 데이터가 하나의 테이블에 집약되어있고, 하나의 하드웨어 공간에 저장되어있으면 성능저하가 일어난다. 이런 경우 트랜잭션이 분산 처리될 수 있도록 테이블 단위에서 분할의 방법을 적용할 필요가 있다. 대량의 데이터가 처리되는 테이블에 성능이 저하되는 이유는 SQL 문장에서 데이터를 처리하기 위한 I/O 양이 증가하기 때문이다. 만약 대량의 데이터가 하나의 테이블에 존재하게 되면 인덱스를 생성할 때 인덱스의 크기가 커지게..
목차 1. 반정규화를 통한 성능향상 전략 2. 반정규화의 기법 3. 정규화가 잘 정의된 데이터 모델에서 성능이 저하될 수 있는 경우 4. 정규화가 잘 정의된 데이터 모델에서 성능이 저하된 경우 1. 반정규화를 통한 성능향상 전략 1. 반정규화의 정의 반정규화 : 정규화된 엔터티, 속성, 관계에 대해 시스템의 성능향상과 개발 및 운영의 단순화를 위해 중복, 통합, 분리 등을 수행하는 데이터 모델링의 기법 데이터 무결성이 깨질 수 있는 위험을 감안하고 데이터를 중복하여 반정규화를 하는 이유는 데이터를 조회할 때 디스크 I/O 양이 많아서 성능이 저하되거나 경로가 너무 멀어 조인으로 인한 성능 저하가 예상되는 경우에 실행한다. 정규화는 입력/수정/삭제/조회에 대한 성능을 향상시킨다. 그러나 정규화만을 수행하면..