일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- AuthenticationPrincipal
- rest api
- 백준
- @Profile
- application.properties
- OAuth2
- Application Argument
- 스프링부트
- 브루트포스
- 백트래킹
- Application Runner
- HttpMessageConverters
- 백기선
- 리소스 서버
- 다익스트라
- 정적 리소스
- JPA
- 외부설정
- @ConfigurationProperties
- WebApplication Type
- 스프링 부트
- HATEOAS
- Spring Security
- cors
- EnableAutoConfiguration
- Application Event
- JsonSerializer
- webjar
- 알고리즘
- 리소스핸들러
- Today
- Total
목록전체 글 (114)
아카이브
JOIN ? - DB 내의 여러 테이블의 레코드를 조합하여 하나의 결과 집합으로 만드는 것- INNER JOIN, OUTER JOIN- OUTER JOIN의 경우 LEFT, RIGHT, FULL로 그 종류가 있음- FULL OUTER JOIN은 일부 DBMS에서만 지원 INNER JOIN과 OUTER JOIN의 차이점- INNER JOIN의 경우 교집합으로, JOIN 대상이 되는 컬럼에서 A/B 양쪽 다 있는 경우 - OUTER JOIN의 경우는 각 종류에 따라 그 결과물이 조금씩 달라짐 ● LEFT OUTER JOIN : A의 모든 열과 B에 있는 공통 부분을 얻게 되고, A에 있지만 B에는 없는 내용의 경우 우측은 NULL로 처리 ● RIGHT OUTER JOIN : B의 모든 열과 A에 있는 공통 ..
트랜잭션 (Transaction) ?- DB 내에서 한번에 수행되어야할 일련의 연산들- 시스템에서 사용되는 쪼갤 수 없는 업무처리의 단위- 전부 COMMIT 되거나, 전부 ROLLBACK 되거나- ex) 쇼핑몰 결제 시, 예상치 못한 오류로 금액만 지불되고 주문 처리가 안됐으면 ? 전부 ROLLBACK을 시켜야 함- 트랜잭션의 4가지 특성 (ACID)1) Atomicity - 원자성 : All or Nothing2) Consistency - 일관성 : 트랜잭션이 실행을 성공적으로 완료하면 언제나 일관성 있는 데이터베이스 상태로 유지하는 것을 의미 ex) 무결성 제약을 위반하는 트랜잭션은 중단3) Isolation - 격리성 : 트랜잭션을 수행 시 다른 트랜잭션의 연산 작업이 끼어들지 못하도록 보장하는 것..
INDEX ?- DB에서 사용하는 색인- 특정 TABLE에 SELECT를 할때 WHERE나 JOIN에 빈번하게 참조되는 컬럼들을 색인으로 하여 정렬된 트리 목록을 만들고,이를 이용하여 full scan이 일어나는 일을 줄이고 속도를 빠르게 하기 위함- 읽기 성능을 향상시키기 위한 일종의 자료구조- 중복이 많은 컬럼(성별처럼 타입이 적은 경우) 비효율적이므로 INDEX를 걸지 않음- JOIN에 자주 사용되는 컬럼에 걸면 효율적 ※ 모든 컬럼에 INDEX를 걸면 빨라지나요? - SELECT의 경우 이득이 있지만- INSERT/ UPDATE /DELETE의 경우 INDEX로 인하여 성능이 감소할 수 있음 (DML에 취약함) ● 왜 ? INDEX를 생성하면 내부적으로 B+Tree를 이용한 데이터 색인이 생김☞ ..