Computer Science/데이터베이스

기록을 남기자
Chapter 11. 보안과 권한 관리
보안비인가자가 데이터베이스에 침입하여 데이터를 유출하거나 손상한다면 조직에 치명적인 손실이 발생함인가자만 데이터베이스에 접근할 수 있도록 통제하여 보안을 유지하는 일이 무척 중요보안의 유형물리적 환경에 대한 보안 - 자연 재해 등으로부터 보호권한 관리를 통한 보안 - 권한이 없는 사용자로부터 보호운영 관리를 통한 보안 - 권한이 있는 사용자로부터 보호권한 관리DBMS는 보안을 유지하기 위해, 계정이 발급된 사용자가 로그인에 성공했을 경우에만 데이터베이스에 접근이 가능하도록 하는 접근 제어(access control)기능을 기본으로 제공계정을 생성, 변경, 제거하는 사용자 계정 관리는 DBA가 담당데이터베이스에 존재하는 모든 객체는 기본적으로 해당 객체를 생성한 사용자만 사용 권한을 지님필요에 따라 공유할..
Chapter 10. 회복과 병행 제어
회복과 병행 제어DBMS는 데이터베이스가 항상 정확하고 일관된 상태를 유지할 수 있도록 하는데, 그 중심에는 트랜잭션이 있음트랜잭션을 관리함으로써 데이터베이스의 회복과 병행 제어가 가능트랜잭션(transaction)하나의 작업을 수행하는 데 필요한 데이터베이스의 연산들을 모아놓은 것데이터베이스에서 논리적인 작업의 단위 (데이터베이스에 장애가 발생했을 때 데이터를 복구하는 작업의 단위)트랜잭션의 모든 명령문이 완벽하게 처리되거나 하나도 처리되지 않아야 데이터베이스가 모순이 없는 일관된 상태를 유지할 수 있음데이터베이스의 무결성과 일관성을 보장하려면 필요한 연산들을 하나의 트랜잭션으로 제대로 정의하고 관리해야 함일반적으로 데이터베이스를 변경하는 INSERT문, DELETE문, UPDATE문의 실행을 트랜잭션..
Chapter 9. 정규화
정규화의 개념과 이상 현상정규화(normalization)데이터베이스를 잘못 설계하면 데이터의 삽입, 수정, 삭제 연산을 수행할 때 부작용(이상현상 (anomaly))이 발생정규화는 이상 현상이 발생하지 않도록 릴레이션을 분해(decomposition)하는 과정을 의미데이터베이스를 설계한 후 설계 결과물을 검증하기 위해 사용하기도 함이상 현상의 종류삽입 이상(insertion anomaly) - 새 데이터를 삽입하기 위해 불필요한 데이터도 함께 삽입해야 하는 문제갱신 이상(update anomaly) - 중복 투플 중 일부만 변경되어 데이터가 불일치하게 되는 모순의 문제삭제 이상(deletion anomaly) - 투플을 삭제하면 필요한 다른 데이터까지 함께 삭제되는 데이터 손실의 문제정규화의 필요성관련..
Chapter 8. 데이터베이스 설계
다양한 요구 사항을 모두 만족시키는 데이터베이스를 구축하는 일은 어려움저장해야 하는 데이터의 양이 많고 사용자 수가 많은 조직일수록 어렵고 복잡사용자들의 요구 사항을 잘 분석하고, 분석한 결과를 바탕으로 데이터베이스의 논리적, 물리적 구조를 제대로 설계해야할 필요성 존재데이터베이스 설계사용자들의 요구 사항을 고려하여 데이터베이스를 생성하는 과정데이터베이스는 구조를 변경하기 어렵기 때문에 설계 과정에서부터 품질 좋은 데이터베이스를 생성해야 됨품질 기준사용하는 구성원들의 요구 사항을 만족하는지, 데이터의 일관성과 무결성, 사용자가 이해하기 쉽고 접근성이 좋은지 ... etc데이터베이스 설계 방식E-R모델과 릴레이션 변환 규칙을 이용한 데이터베이스 설계와 정규화를 이용한 데이터베이스 설계데이터베이스 설계 과정..
Chapter 7. 데이터베이스 언어 SQL
SQL관계 데이터베이스를 위한 표준 질의어로 많이 사용되는 언어사용자가 처리를 원하는 데이터가 무엇인지만 제시하고 어떻게 처리해야 하는지 절차를 언급할 필요가 없음 (비절차)DBMS에 직접 접근하여 대화식으로 질의를 작성, C나 Java 같은 언어로 작성한 응용 프로그램에 삽입하여 사용SQL의 분류데이터 조작어, 데이터 정의어, 데이터 제어어모든 SQL 문은 ;으로 문장 끝을 표시, SQL 문에 사용되는 키워드는 대소문자를 구분하지 않음SQL을 이용한 데이터 정의테이블 생성, 생성된 테이블 구조의 변경, 테이블 삭제로 분류테이블 생성 - CREATE TABLE생성할 테이블을 구성하는 속성들의 이름, 데이터 타입 및 제약 사항에 대한 정의, 기본키/대체키/외래키의 정의, 데이터 무결성을 위한 제약조건의 정..
StayHub: Real-time Accommodation Search and Sharing Platform
https://github.com/ssunbear/database/1. 프로젝트 개요프로젝트 주제 및 설명"StayHub: Real-time Accommodation Search and Sharing Platform"국내 숙박업소를 검색해서 실시간으로 숙박업소에 대한 가격 및 여러 정보를 얻고, 숙박업소에 대한 정보를 사용자들이 직접 등록하여 공유할 수 있는 서비스프로젝트 동기최근 숙박업소의 예약 웹사이트가 증가하는 추세에도 불구하고, 각 사이트에서 제공되는 할인율에 따라 소비자는 같은 숙박업소임에도 더 비싼 가격으로 예약을 하는 상황들이 많아지고 있습니다. 특히 예약사이트의 종류도 다양하고, 객실마다 제시되는 가격도 다양하기 때문에 이에 대한 통합적인 정보를 제공하고자 해당 주제로 프로젝트를 진행하고자..
Psycopg2 설치 및 활용방법
Python과 Postgresql과의 통신은 Psycopg2를 통해 이뤄지게 된다.연동하면서 사용하는 방식1) 기존에 Dbeaver 등을 통해 데이터베이스의 구조를 대략적으로 파악2) Psycopg2를 통해 데이터베이스와 파이썬을 연결3) 커서를 생성하고, 이를 통해 쿼리를 보냄4) 결과를 받아서 활용 모듈에 대한 자세한 설명은 홈페이지를 통해 확인할 수 있다.https://www.psycopg.org/docs/index.html 1. INSTALLpip install psycopg2 를 통해서 패키지를 설치2. CONNECTION AND CURSORconnect 함수를 통해서 데이터베이스에 연결한 뒤(커넥션 생성), 커넥션에서 커서를 생성(하나의 인자로 전달하여 연결하는 방식도 있음)3. SELECTe..
Chapter 1-6. 데이터베이스 정리
1. 범주형데이터에 속하는 것을 고르시오 -> 명목형데이터, 순서형 데이터 +) 수치형 데이터에 속하는 것 -> 이산형데이터, 연속형데이터 2. 전체 데이터베이스가 저장장치에 실제로 저장되는 방법을 정의하는 스키마 -> 내부스키마 +) 조직전체 관점: 개념스키마, 사용자관점: 외부스키마 3. 데이터베이스에 저장되는 데이터 구조와 제약조건을 정의한 것 -> 스키마 +) 인스턴스: 스키마에 따라 데이터베이스에 실제로 저장된 값 4. 구조에 따라 저장된 데이터이지만 데이터 내용안에 구조에 대한 설명이 함께 존재하는 데이터 -> 반정형데이터 예) HTML,XML, JSON +) 정형데이터: 구조화된 데이터, 미리 정해진 구조에따라 저장된 데이터 예) 엑셀의 스프레드 시트, DB의 테이블 +) 비정형데이터: 정해..
ssun_bear
'Computer Science/데이터베이스' 카테고리의 글 목록