반응형

정처기 80

[정보처리기사]3.데이터베이스 구축/SQL 활용/병행제어

병행 제어(Concurrency Control) 1. 병행제어(Concurrency Control) - 다중 프로그램의 이점을 활용하여 동시에 여러 개의 트랜잭션을 병행 수행할 때, 동시에 실행되는 트랜잭션들이 데이터베이스의 일관성을 파괴하지 않도록 트랜잭션 간의 상호 작용을 제어 1.1 병행제어 목적 - 데이터베이스의 공유 최대화 - 데이터베이스의 일관성 유지 -시스템 활용도 최대화 -사용자에 대한 응답 시간 최소화 1.2 병행수행의 문제점 갱신 분실(Lost Update) 두 개 이상의 트랜잭션이 같은 자료를 공유하여 갱신할 때 갱신 결과의 일부가 없어지는 현상 →덮어쓸 때 비 완료 의존성(Uncommitted Dependency) 하나의 트랜잭션 수행이 실패한 후 회복되기 전에 다른 트랜잭션이 실패..

[정보처리기사]3.데이터베이스 구축/SQL 활용/쿼리성능 최적화

쿼리성능 최적화 - 데이터 입, 출력 애플리케이션의 성능 향상을 위해 SQL 코드를 최적화하는 것 - 쿼리 성능 최적화하기 전, 성능 측정 도구인 APM(Application Performance Management)을 사용해 최적화 할 쿼리를 선정해야 함 - 최적화 할 쿼리에 대해 옵티마이저가 수립한 실행 계획(Execution Plan)을 EXPLAIN 명령어를 통해 검토하고, SQL 코드와 인덱스 재구성 1. 옵티마이저(Optimizer): 작성된 SQL이 가장 효율적으로 수행되도록 최적의 실행방법을 찾아 결정하는 모듈 1.1 실행 계획(Execution Plan) 사용자가 질의한 SQL문에 대해 ‘최적의 실행 방법’ EXPLAIN 명령어로 그래픽, 텍스트로 확인 1.1.1 최적의 실행 방법 결정하..

[정보처리기사]3.데이터베이스 구축/SQL 활용/ORM(Object-Relational Mapping)

ORM(Object-Relational Mapping, 객체-관계 매핑) - 객체(Object)와 관계형데이터베이스(RDB)의 데이터를 연결(Mapping)하는 기술 - ORM으로 생성된 가상의 객체지향 데이터베이스는 프로그래밍 코드 또는 데이터베이스와 독립적이므로 재사용 및 유지보수 용이 - 직관적이고 간단하게 데이터 조작 가능 1. ORM 프레임워크 ORM 구현을 위해 구조, 여러 기능들을 제한하는 프레임워크 프로그래밍 언어 ORM 프레임워크 JAVA JPA, Hibernate, Eclipse Link, Data Nucleus, Ebean C++ ODB, QxOrm Python Django, SQL Alchemy, Storm iOS Core Date, Database Objects NET NHiber..

[정보처리기사]3.데이터베이스 구축/SQL 활용/DMBS 접속 기술

DMBS 접속 기술 1. DBMS 접속 기술 응용프로그램에서 데이터베이스에 접근하기 위해서 SQL의 대화형 인터페이스의 한계로 데이터 베이스 프로그래밍을 통해 해결 1.1 종류 1.1.1 내장 SQL(embedded SQL) - SQL을 내장한 프로그래밍 언어(Host Language) - Cursor(반복자) 이용해서 여러 튜플을 처리, 튜플에 대한 포인터 기능함 - 주언어 변수(호스트 변수), DB 필드의 이름은 같아도 됨 - 데이터 타입은 DB 필드의 SQL 데이터 타입과 일치 - Host Program의 컴파일 시 선행 처리기에 의해 분리되어 컴파일 -에. EXCE SQL ; 1.1.2 라이브러리 함수 호출 방식 데이터베이스 호출을 지원하는 API 또는 API를 편리하게 사용하도록 하는 프레임워크..

[정보처리기사]3.데이터베이스 구축/SQL 활용/절차형 SQL

절차형 SQL: 프로시저, 트리거, 사용자 정의 함수 1. 절차형 SQL(procedural SQL) - 선언형 프로그래밍 기능 - 클라이언트/서버 데이터베이스 환경에서 저장 프로시저(stored procedure)를 작성 - C, JAVA 등의 프로그래밍 언어와 같이 연속적인 실행/ 분기, 반복 등의 제어가 가능 - 일반적인 프로그래밍 언어에 비해 효율이 떨어지지만, 연속적인 작업 처리 적합 - BEGIN ~ END 형식으로 작성되는 블록(Block) 구조로 기능별 모듈화 가능 1.1 PL/SQL 선언부(Declare) 실행부에서 참조할 모든 변수, 상수, CURSOR, EXCEPTION 선언 실행부(Begin/End) BEGIN과 END 사이에 기술되는 영역, 데이터를 처리할 SQL문과 PL/SQL ..

[정보처리기사]3.데이터베이스 구축/SQL응용/조인, 집합연산

결합 : 조인, 집합연산 1.결합 결합 방법은 JOIN, 집합연산을 통해 가능하다. 결합하는것이 공통점이지만 데이터 결합 방식이 상이하다. 좌측은 JOIN을 통해 테이블 간 수평 결합을 하고 우측은 집합 연산을 통해 쿼리 간 수직 결합을 한다. 1.1 조인(JOIN) - 결합을 의미하며, 관계형 데이터베이스에서의 조인은 교집합 결과를 가지는 결합 방법을 의미 - 두 릴레이션으로부터 연관된 튜플들을 결합해, 하나의 새로운 릴레이션을 반환 1.1) 논리적 조인 (1 )Inner Join EQUI JOIN(동등 조인 ) =으로 공통 존재 컬럼의 값이 같은 경우를 추출 NON-EQUI JOIN(비동등 조인 ) 비교 연산자로 컬럼의 값이 해당하는 경우를 추출(=,BETWEEN AND) NATURAL JOIN(자연..

[정보처리기사]3.데이터베이스 구축/SQL응용/DML:SELECT , WHERE

DML 1. SELECT 20년 1, 2, 3회 ,21년 2회 ,22년 1회 실기 (1) WHERE절: 검색할 조건을 기술 (2) ORDER BY절: 특정 속성을 기준으로 정렬해 검색할 때 사용 - ASC(오름차순), DESC(내림차순) – 따로 설정이 없는 경우 기본적으로 ASC 정렬 (3) GROUP BY절: 특정 속성을 기준으로 그룹화해 검색할 때 사용, 일반적으로 그룹 함수와 함께 사용 (4) HAVING절: GROUP BY와 함께 사용되며, 그룹에 대한 조건 지정 작성 순서 작성순서와 실행순서는 상이하다. SELECT 열 FROM 테이블 WHERE 열 조건 GROUP BY 열 HAVING 그룹 조건 ORDER BY 열 ASC 1.1 DISTINCT 중복 튜플 제거하는 키워드 SELECT DIST..

[정보처리기사]3.데이터베이스 구축/SQL응용/SQL :DDL, DCL, DML

SQL : DDL, DCL, DML [...] 생략가능을 의미 객체명 1. SQL(Structured Query Language) - 1974년 IBM 연구소에서 개발한 SEQUEL에서 유래함 - 관계대수와 관계해석을 기초로 한 혼합 데이터 언어 1) SQL의 분류 20년 1, 2회 기출문제 1.1) DDL(Data Define Language, 데이터 정의어) #ACD(Alter, Create, Drop) - 정의: 논리적 & 물리적 구조 정의 ,수정, 제약조건, 데이터간의 관계, 데이터 연 산 명세 - DOMAIN, SCHEMA, TABLE, VIEW, INDEX를 정의(CREATE),변경(ALTER), 삭제(DROP)할 때 사용하는 언어 - DDL 결과 정보는 데이터 사전(DD)에 저장 (1) 정의..

[정보처리기사]3.데이터베이스 구축/물리 데이터베이스 설계/스토리지,논리 데이터 모델의 물리 데이터 모델 변환 및 품질 검토

스토리지, 논리 데이터 모델의 물리 데이터 모델 변환 및 품질 검토 1) 스토리지(Storage) 종류 설명 장점 단점 DAS (Direct Attached Storage) _22년 1회 서버와 저장장치를 전용 케이블로 직접 연결하는 방식 - 하드디스크와 같은 데이터 저장장치를 호스트 버스 어댑터에 직접 연결하는 방식 빠른 속도, 쉬운 설치 및 운영 저렴한 초기 구축 및 유지보수 비용 파일 공유 불가 확장성 및 유연성이 떨어짐 NAS (Network Attached Storage) 서버와 저장장치를 네트워크를 통해 연결하는 방식 장소에 구애받지 않고 저장장치에 쉽게 접근 확장성 및 유연성 우수 접속 증가 시 성능 저하 SAN (Storage Area Network) 서버와 저장장치를 연결하는 전용 네트워..

[정보처리기사]3.데이터베이스 구축/물리 데이터베이스 설계/데이터 베이스 보안

데이터 베이스 보안 1) 데이터베이스 보안의 개요 - DB 사용자들은 일반적으로 서로 다른 객체에 대해 다른 접근 권리 또는 권한을 가짐 - DB 일부분 또는 전체에 대해서 권한이 없는 사용자가 액세스하는 것을 금지하기 위해 사용되는 기술 2) 접근통제 - 데이터가 저장된 객체와 이를 사용하려는 주체 사이의 정보 흐름을 제한 → 임의 접근통제(DAC, Discretionary Access Control) 데이터에 접근하는 사용자의 신원에 따라 접근 권한 부여 - 접근통제 권한=주체(소유자) → 강제 접근통제(MAC, Mandatory Access Control) 주체와 객체의 등급을 비교해 접근 권한 부여 - 접근통제 권한=제3자 → 역할 기반 통제(RBAC, Role-Based Access Contro..

반응형