일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 네트워크
- 자바예외
- 자료구조
- 이펙티브 자바
- DDD
- AWS RDS
- 도메인 주도 개발 시작하기
- vue.js
- 이펙티브자바
- aop
- 스프링부트와AWS로혼자구현하는웹서비스
- 인프런백기선
- java
- 자바스터디
- SQL쿡북
- 이팩티브 자바
- CleanCode
- 인프런김영한
- 기술면접
- 알고리즘분석
- AWS
- mysql
- 클린코드
- jpa
- MariaDB
- 인덱스
- react
- 혼공SQL
- 자바
- 알고리즘
- Today
- Total
목록전체 글 (272)
기록이 힘이다.

인덱스를 생성하기 위해서는 CREATE INDEX 문을 사용하고, 제거하기 위해서는 DROP INDEX 문을 사용합니다. 인덱스 생성 CREATE [UNIQUE] INDEX 인덱스_이름 ON 테이블_이름 (열_이름) [ASC | DESC] 기본은 ASC로 만들어지며, DESC로 만드는 경우는 거의 없습니다. 인덱스 제거 DROP INDEX 인덱스_이름 ON 테이블_이름 인덱스 생성과 제거 문법 인덱스 생성 문법 CREATE [UNIQUE | FULLTEXT | SPATIAL] INDEX index_mem_name [index_type] ON tbl_mem_name (key_part, ...) [index_option] [algorithm_option | lock_option] ... key_part: {..

클러스트형 인덱스와 보조 인덱스는 모두 내부적으로 균형 트리로 만들어집니다. 인덱스의 내부 작동 원리 균형트리의 개념 균형 트리 구조에서 데이터가 저장되는 공간을 노드 node라고 합니다. 노드를 MySQL에서는 페이지page라고 부릅니다. 페이지는 최소한의 저장 단위로, 15Kbyte(16384byte) 크기를 가집니다. 균형 트리 구성 여부에 따라 읽어야 하는 페이지 수의 차이가 상당히 큽니다. 균형 트리의 페이지 분할 인덱스는 균형 트리로 구성되어 있습니다. 즉, 인덱스를 만들면 SELECT의 속도를 향상시킬 수 있습니다. 그런데 인덱스를 구성하면 데이터 변경 작업(INSERT, UPDATE, DELETE) 시 성능이 나빠집니다. 특히 INSERT 작업이 일어날 때 더 느리게 입력될 수 있습니다. ..

인덱스는 SELECT를 사용해서 테이블을 조회할 때 결과를 빠르게 추출하도록 도와주는 기능입니다. 실무에서는 현실적으로 인덱스 없이 데이터베이스 운영이 불가능합니다. 인덱스에는 클러스터형 인덱스와 보조 인덱스가 있습니다. 클러스터형 인덱스는 기본 키로 지정하면 자동 생성되며 테이블에 1개만 만들 수 있습니다. 기본 키로 지정한 열을 기준으로 자동 정렬됩니다. 보조 인덱스는 고유 키로 지정하면 자동 생성되며 여러 개를 만들 수도 있지만 자동 정렬되지는 않습니다. 인덱스를 만들면 SELECT 문의 출력 속도가 빨라집니다. 인덱스의 개념 지금까지 우리가 사용한 테이블은 인덱스를 고려하지 않았습니다. 인덱스가 없어도 별 문제가 되지 않았던 이유는 데이터의 양이 워낙 적었기 때문입니다. 실무에서 운영하는 테이블에..

뷰는 데이터베이스 개체 중에 하나입니다. '가상의 테이블' 뷰는 단순 뷰와 복합 뷰로 나뉘는데, 단순 뷰는 하나의 테이블과 연관된 뷰를 말하고, 복합 뷰는 2개 이상의 테이블과 연관된 뷰를 말합니다. 뷰의 개념 뷰의 기본 생성 CREATE VIEW 뷰_이름 AS SELECT 문; SELECT 열_이름 FROM 뷰_이름 [WHERE 조건]; 뷰를 만든 후에 뷰에 접근하는 방식은 테이블과 동일하게 SELECT 문을 사용합니다. 전체에 접근할 수도 있고, 필요하면 조건식도 테이블과 동일하게 사용할 수 있습니다. 뷰를 사용하는 이유 보안(security)에 도움이 됩니다. 앞의 예에서 만든 v_member 뷰에는 사용자의 아이디, 이름, 주소만 있을 분 사용자의 중요한 개인 정보인 연락처, 평균 키, 데뷔 일자..

[AWS] 가장쉽게 VPC 개념잡기. 가장쉽게 VPC 알아보기 | by Harry The Great | 해리의 유목코딩 | Medium [AWS] 가장쉽게 VPC 개념잡기 가장쉽게 VPC 알아보기 medium.com 기술 아키텍처 | 코드너리 (codenary.co.kr) 스타트업들의 기술 스택과 기술 블로그를 한눈에 살펴보세요 | 코드너리 네이버, 카카오, 토스, 당근마켓과 같이 요즘 핫한 스타트업은 어떤 기술 스택을 사용하고 있을까요? 코드너리에서 국내 100개가 넘는 스타트업의 기술 정보를 확인하세요. www.codenary.co.kr [AWS CloudFront] S3 vs CloudFront 속도 비교 (tistory.com) [AWS CloudFront] S3 vs CloudFront 속도 비..

제약조건의 기본 개념과 종류 테이블을 만들 때는 테이블의 구조에 필요한 제약조건을 설정해줘야 합니다. 앞에서 확인한 기본 키와 외래 키가 대표적인 제약조건입니다. 이메일, 휴대폰과 같이 중복되지 않는 열에는 고유 키를 지정할 수 있습니다. 회원의 평균 키는 당연히 200cm를 넘지 않겠죠? 이때 실수로 200을 입력하는 것을 방지하는 제약조건이 체크입니다. 회원 테이블에 국적을 입력한다면 99%는 대한민국일 것입니다. 매번 입력하기 귀찮다면 제약조건으로 기본값을 설정할 수 있습니다. 또한, 값을 꼭 입력해야 하는 NOT NULL 제약조건도 있습니다. -PRIMARY KEY 제약조건 -FOREIGN KEY 제약조건 -UNIQUE 제약조건 -CHECK 제약조건 -DEFAULT 정의 -NULL 값 허용 기본 ..
테이블(table)은 표 형태로 구성된 2차원 구조로, 행과 열로 구성되어 있습니다. 행은 로우(row)나 레코드(record)라고 부르며, 열은 컬럼(column) 또는 필드(field)라고 부릅니다. SQL로 테이블 만들기 CREATE [TEMPORARY] TABLE [IF NOT EXISTS] tbl_name col_name column_definition | {INDEX|KEY} [index_name] [index_type] (key_part, ...) [index_option] ... | {FULLTEXT|SPATIAL} [INDEX|KEY][index_name](key_part,...) [index_option] ... | [CONSTRAINT [symbol]] PRIMARY KEY [inde..

스토어드 프로시저는 MySQL에서 프로그래밍 기능이 필요할 때 사용하는 데이터베이스 개체입니다. SQL 프로그래밍은 기본적으로 스토어드 프로시저 안에 만들어야 합니다. IF문 if문의 기본 형식 조건식이 참이라면 'SQL문장들'을 실행하고, 그렇지 않으면 그냥 넘어갑니다. IF THEN SQL 문장들 END IF; IF ~ ELSE 문 조건에 따라 다른 부분을 수행합니다. 조건이 참이라면 'SQL문장들1'을 실행하고, 그렇지 않으면 'SQL문장들2'를 실행합니다. IF THEN SQL 문장들 ELSE THEN SQL 문장들 END IF; IF문의 활용 CASE문 CASE 문의 기본 형식 IF문은 참 아니면 거짓 두 가지만 있기 때문에 2중 분기라는 용어를 사용합니다. CASE 문은 2가지 이상의 여러가지..