본문 바로가기

CS17

인덱스 - 실습 인덱스 문법 CREATE [UNIQUE | FULLTEXT | SPATIAL] INDEX index_name [index_type] ON tbl_name (key_part,...) [index_option] [algorithm_option | lock_option] ... key_part: {col_name [(length)] | (expr)} [ASC | DESC] index_option: { KEY_BLOCK_SIZE [=] value | index_type | WITH PARSER parser_name | COMMENT 'string' | {VISIBLE | INVISIBLE} | ENGINE_ATTRIBUTE [=] 'string' | SECONDARY_ENGINE_A.. 2023. 3. 6.
트랜잭션(Transaction) 트랜잭션(Transaction) 이란, 데이터베이스의 상태를 변화시키기 위해서 수행하는 작업의 단위를 뜻합니다. 데이터베이스에서 상태 변화를 시킨다는 것은 질의어(SQL)를 이용하여 데이터베이스에 접근하는 것을 의미합니다. SELECT INSERT DELETE UPDATE 단, 작업의 단위는 질의어 한 문장이 아니라 많은 SQL 명령문들을 사람이 정하는 기준에 따라 정해집니다. 예시) 은행에서 A가 B에게 10,000원을 송금한다. A의 계좌에서 10,000원을 차감 : UPDATE 문을 사용해 A의 잔고를 변경 B의 계좌에 10,000원을 추가 : UPDATE 문을 사용해 B의 잔고를 변경 작업 단위 : 출금 UPDATE문 + 입금 UPDATE문 트랜잭션의 특징 원자성 (Atomicity) 일관성 (C.. 2023. 2. 26.
인덱스 인덱스란? 인덱스는 데이터를 빠르게 검색할 수 있게 해주는 객체 입니다. 컬럼을 오름차순 혹은 내림차순으로 정렬한 후 빠르게 찾을 수 있도록 도와줍니다. 인덱스 구조 Index는 논리적/물리적으로 테이블과 독립적입니다. 테이블은 컬럼에 데이터가 정렬되지 않고 입력된 순서대로 들어가지만, Index는 KEY 컬럼과 ROWID 컬럼 두개로 이루어져 있고 오름차순, 내림차순으로 정렬이 됩니다. Key : 인덱스를 생성하라고 지정한 컬럼의 값 MySQL에서 테이블 생성 시, 아래와 같은 3가지 파일이 생성됩니다. FRM : 테이블 구조 저장 파일 MYD : 실제 데이터 파일 MYI : Index 정보 파일 (Index 사용 시 생성) 사용자가 쿼리를 통해 Index를 사용하는 칼럼을 검색하게 되면, 이때 MYI.. 2023. 2. 26.
관계 데이터 모델 관계 데이터 모델의 정의 관계 데이터 모델은 테이터를 2차원 테이블 형태인 릴레이션으로 표현함 릴레이션에 대한 제약조건과 관계 연산을 위한 관계대수를 정의함 릴레이션 릴레이션: 행과 열로 구성된 테이블 속성(Attribute): 세로 값으로 열(Column)이라고도 한다. 튜플(Tuple): 가로 값으로 행(Row)이라고도 한다. 차수: 속성의 수 도메인: 하나의 속성이 가질 수 있는 값들의 범위 널: 정보의 부재를 나타내는 특수한 데이터 값 카디날리티: 튜플의 수 인스턴스: 정의된 스키마에 따라 테이블에 실제 저장된 데이터의 집합 스키마: 릴레이션이 어떻게 구성되는지, 어떤 정보를 담고 있는지에 대한 기본적인 구조를 정의(첫 행 헤더) 릴레이션의 특징 속성은 단일 값을 가진다 속성은 서로 다른 이름을 .. 2023. 2. 23.
DBMS 데이터 베이스란? 1. 데이테베이스의 개념 데이터의 중복성을 최소화하면서 다양한 사용자의 정보 요구를 충족시킬 수 있도록 한 상호 관련된 데이터의 통합된 집합체 통합 데이터(Integrated Data) : 데이터의 중복을 최소화하여 데이터의 불일치 현상 제거 저장 데이터(Stored Data) : 컴퓨터 저장장치에 저장된 자료 운영 데이터(Operational Data) : 업무를 위한 검색용 자료 공용 데이터(Shared Data) : 한 사람 또는 한 업무를 위해 사용하는 자료가 아닌 공동으로 사용하는 자료 2. 데이터베이스의 특징 실시간 접근성: 실시간 처리에 의한 응답이 가능해야 한다. 계속적인 변화: 새로운 데이터의 삽입, 삭제, 갱신으로 항상 최신의 데이터를 유지해야 한다. 동시 공용: 서로.. 2023. 2. 23.
[JWT] JSON Web Token 소개 및 구조 서버(세션) 기반의 인증 시스템 [ 서버(세션) 기반 인증 시스템이란? ] 기존의 인증 시스템은 서버 기반의 인증 방식으로, 서버 측에서 사용자들의 정보를 기억하는 방식입니다. 사용자들의 정보를 기억하기 위해서는 세션을 유지해야 하는데, 메모리나 디스크 또는 데이터베이스 등을 통해 관리합니다. 서버 기반의 인증 시스템은 클라이언트로부터 요청을 받으면, 클라이언트의 상태를 계속해서 유지하고 이 정보를 서비스에 이용하는데, 이러한 서버를 Sateful 서버라고 합니다. 예를 들어 사용자가 로그인을 하면, 세션에 사용자 정보를 저장해두고 서비스를 제공할 때 사용하합니다. 이러한 서버 기반의 시스템은 다음과 같은 흐름을 갖고있습니다. 이러한 인증 장식은 소규모 시스템에서는 아직 많이 사용되고 있지만, 웹/앱 어.. 2023. 1. 31.