목록대학교 (252)
SW
108. 프로시저(Procedure) ★★★ 1. 프로시저(Procedure)의 개요 - 프로시저란 절차형 SQL을 활용하여 특정 기능을 수행하는 일종의 트랜잭션 언어로, 호출을 통해 실행되어 미리 저장해 놓은 SQL작업을 수행한다. - 프로시저를 만들어 데이터베이스에 저장하면 여러 프로그램에서 호출하여 사용할 수 있다. - 프로시저는 데이터베이스에 저장되어 수행되기 때문에 스토어드(Stored) 프로시저라고도 불린다. - 프로시저는 시스템의 일일 마감, 일괄(Batch) 작업 등에 주로 사용된다. - DECLATE, BEGIN/END, CONTROL, SQL, EXCEPTION, TRANSACTION(수행된 작업들을 DB에 적용할지 취소할지 결정하는 처리부) 2. 프로시저 생성 - 프로시저를 생성하기 ..
104. DML ★★ 1. DML(Data Manipulation Language, 데이터 조작어)의 개념 - DML은 데이터베이스 사용자가 응용 프로그램이나 질의어를 통해 저장된 데이터를 실질적으로 관리하는데 사용되는 언어이다. - DML은 데이터베이스 사용자와 관리 시스템 간의 인터페이스를 제공한다. - SELECT, INSERT, DELETE, UPDATE 2. 삽입문(INSERT INTO~) - INSERT INTO 테이블명([속성명1, 속성명2,..]) VALUES (데이터1, 데이터2); - 대응하는 속성과 데이터는 개수와 데이터 유형이 일치해야 한다. - 기본 테이블의 모든 속성을 사용할 때는 속성명을 생략할 수 있다. - SELECT 문을 사용하여 다른 테이블의 검색 결과를 삽입할 수 있다..
101. SQL의 개념 ★★ 1. SQL(Structured Query Language)의 개요 - 1974년 IBM연구소에서 개발한 SEQUEL에서 유래 - 국제 표준 데이터베이스 언어이며, 많은 회사에서 관계형 데이터베이스(RDB)를 지원하는 언어로 채택하고 있다. - 관계대수와 관계해석을 기초로 한 혼합 데이터 언어이다. - 질의어지만 질의 기능만 있는 것이 아니라 데이터 구조의 정의, 데이터 조작, 데이터 제어 기능을 모두 갖추고 있다. 2. SQL의 분류 - DDL(Data Define Language, 데이터 정의어) - SCHEMA, DOMAIN, TABLE, VIEW, INDEX를 정의하거나 변경 또는 삭제할 때 사용하는 언어이다. - 논리적 데이터 구조와 물리적 데이터 구조의 사상을 정의..
95. 데이터베이스 보안 / 암호화 ★★ 1. 데이터베이스 보안의 개요 - 데이터베이스 보안이란 데이터베이스에 대해서 권한이 없는 사용자가 액세스하는 것을 금지하기 위해 사용되는 기술 - 데이터베이스 사용자들은 일반적으로 서로 다른 객체에 대하여 다른 접근 권리 또는 권한을 갖게 된다. 2. 암호화(Encryption) - 암호화는 데이터를 보낼 때 송신자가 지정한 수신자 이외에는 그 내용을 알 수 없도록 평문을 암호문으로 변환하는 것 - 개인키 암호 방식과 공개키 암호 방식이 있음 3. 개인키 암호 방식(Private Key Encryption) = 비밀키 암호 방식 - 비밀키 암호화 기법은 동일한 키로 데이터를 암호화하고 복호화 - 비밀키 암호화 기법은 대칭 암호 방식 또는 단일키 암호화 기법이라고도..
90. 클러스터 설계 ★★★ 1. 클러스터(Cluster)의 개요 - 클러스터는 데이터 저장 시 데이터 액세스 효율을 향상시키기 위해 동일한 성격의 데이터를 동일한 데이터 블록에 저장하는 물리적 저장 방법이다. - 클러스터링키로 지정된 컬럼 값의 순서대로 저장되고, 여러 개의 테이블이 하나의 클러스터에 저장된다. 2. 클러스터(Cluster)의 특징 - 클러스터링 된 테이블은 데이터 조회 속도는 향상시키지만 데이터 입력, 수정, 삭제에 대한 기능은 저하시킨다. - 클러스터는 데이터의 분포도가 넓을수록 유리하다. - 데이터 분포도가 넓은 테이블을 클러스터링하면 저장 공간 절약 가능 - 클러스터링된 테이블은 클러스터링키 열을 공유하므로 저장 공간이 줄어듦 - 대용량을 처리하는 트랜잭션은 전체 테이블을 스캔하..
85. 사전 조사 분석 ★★ 1. 물리 데이터베이스 설계 - 논리적 데이터베이스를 물리적 저장장치에 젖아할 수 있는 물리적 구조의 데이터로 변환하는 과정 - 물리적 데이터베이스 구조의 기본적인 데이터 단위는 저장 레코드이다. - 물리적 설계 단계에 꼭 포함되어야 할 것은 저장 레코드의 양식 설계, 레코드 집중의 분석 및 설계, 접근 경로 설계 - 여러 가지 타입의 저장 레코드 집합이라는 면에서 단순한 파일과 다름. - 데이터베이스 시스템의 성능에 중대한 영향 - 물리적 설계 시 고려 사항(인덱스 구조, 레코드 크기, 레코드 개수, 트랜잭션의 갱신과 참조 성향, 스키마 변경 여부 검토, 수행속도, 변화가능성) - 설계 전 데이터 명명 규칙, 시스템 자원, 데이터 베이스 관리 요소 등을 파악해야함 2. 데이..
80. 관계형 데이터베이스의 제약 조건 - 무결성 ★★ 1. 무결성(Integrity)의 개념 및 종류 - 무결성이란 데이터베이스에 저장된 값과 그것이 표현하는 현실 세계의 실제 값이 일치하는 정확성을 의미한다. - 부정확한 자료가 데이터베이스 내에 저장되는 것을 방지하기 위한 제약 조건 - 개체 무결성, 도메인 무결성, 참조 무결성, 사용자 정의 무결성 등이 있다. 2. 개체 무결성(Entity Integrity, 실체 무결성) - 기본 테이블의 기본키를 구성하는 어떤 속성도 Null 값이나 중복값을 가질 수 없다. 3. 도메인 무결성(Domain Integrity, 영역 무결성) - 주어진 속성 값이 정의된 도메인에 속한 값이어야 한다는 규정 4. 참조 무결성(Referential Integrity)..
75. 식별자(Identifier) ★ 1. 식별자의 정의 및 분류 - 식별자는 하나의 개체 내에서 각각의 인스턴스를 유일(Unique)하게 구분할 수 있는 구분자로, 모든 개체는 한 개 이상의 식별자를 가져야함 - 식별자의 분류 : 대표성 여부(주, 보조), 스스로 생성 여부(내부, 외부), 단일 속성 여부(단일, 복합), 대체 여부(원조, 대리) 2. 주 식별자/보조 식별자 - 주 식별자(Primary Identifier)는 개체를 대표하는 유일한 식별자 - 보조 식별자(Alternate Identifier)는 주 식별자를 대신하여 개체를 식별할 수 있는 속성 - 주 식별자의 4가지 특징 : 유일성, 최소성, 불변성, 존재성 - 두 식별자 모두 개체를 유일하게 식별할 수 있어야 함. - 주 식별자는 ..
70. 데이터베이스 설계 ★★★ 1. 데이터베이스 설계 개념 - 사용자의 요구를 분석하여 그것들을 컴퓨터에 저장할 수 있는 데이터베이스의 구조에 맞게 변형한 후 특정 DBMS로 데이터베이스를 구현하여 일반 사용자들이 사용하게 하는 것 2. 데이터베이스 설계 고려사항 - 무결성(제약 조건 항상 만족), 일관성(응답 일정해야 함), 회복(복구가능해야함), 효율성(최적화 가능해야함), 확장(데이터 추가 가능해야함) 3. 데이터베이스 설계 순서 - 요구조건분석 => 개념적 설계 => 논리적 설계 => 물리적 설계 => 구현 4. 요구조건분석 - 사용할 사람들의 용도 파악 - 데이터 종류, 용도, 처리형태, 흐름, 제약조건 수집 5. 개념적 설계(정보 모델링, 개념화) - 개념 스키마 모델링과 트랜잭션 모델링 병..
1. 쿠버네티스 (Kubernetes) 쿠버네티스는 컨테이너를 관리하기 위한 툴이다. 만약 토커를 이용해서 (Nodejs 혹은 장고)웹사이트를 배포하려고 한다면, 즉, 그걸 도커 컨테이너 안에 넣어서 AWS로 보내고 싶다면 이 프로세스에서는 쿠버네티스를 알아야할 이유가 없다. 왜냐면 이때는 그냥 도커를 업로드하고 배포하는 것이 전부이기 때문이다. 알다시피 도커는 여러개의 컨테이너를 갖고 있을 때 쓰인다. 예를 들어 만약 MSA를 가지고 있다면, 그래서 어떤 컨테이너는 유저 업로드만 다루고, 어떤 컨테이너는 인증 만 다루고 어떤건 결제만 다룬다면 이 모든 컨테이너들은 동시에 업로드가 되어야 한다. 배포를 할 때는 그렇게 하면 되긴 하는데 많은 컨테이너를 갖고 있다면 문제가 생길 수 있다. 예를 들어, 컨테..