목록데이터베이스 (4)
공부함
최근 ERD를 설계하면서 외래 키를 구성할 때 해당 테이블이 외래 키 없이 식별될 수 있으면 비식별 관계로, 외래 키가 식별에 필요하다면 식별 관계로 설계했다. 이후 JPA를 위해 entity 매핑을 하면서 설계가 별로라고 느껴져서 식별 관계, 비식별 관계에 대해 알아보고, JPA에서는 어떻게 사용하는지 알아보았다. 외래 키 Foreign Key다른 테이블의 PK를 참조하는 속성을 외래 키라 한다. 외래 키는 테이블 간 관계를 맺는 데 사용된다. 외래 키가 속한 테이블을 자식 테이블, 외래 키 값을 제공하는 테이블이 부모 테이블이다. 외래 키로 맺는 관계는 식별 관계, 비식별 관계가 있다. 식별 관계, 비식별 관계식별 관계식별관계는 ERD상에서 실선으로 표시한다. FK가 자식 테이블의 PK에 포함된다. ..
캐시 성능12:00가량에 캐시를 적용한 그래프다Select는 캐시히트가 발생하므로 DB에 쿼리 횟수가 감소한다반면 Update는 어차피 DB에 접근을 해야 해서 변화가 거의 없다 Select가 빠지면서 CPU 이용률이 감소한다. CPU 사용률 측정 등 성능 측정은 Locus, Gatling, Jmeter등을 많이 사용한다데이터의 Scale Out서버 2대에 데이터를 나눠서 담는 방법을 생각해보자. 위치 왼쪽 / 오른쪽 작은 숫자 / 큰 숫자%2 연산 이렇게 다양한 방법을 떠올릴 수 있다. 하지만 단순히 위치로 나누면 데이터의 위치를 파악할 수 없다. 따라서 전체를 찾아야 한다. 이런 일을 방지하기 위해서는 데이터를 나누는 규칙기준이 필요하다.위와 같이 %2 연산의 결과로 나누기로 했다고 가정하자. 명..
Redis란? In Memory NoSQL 또는 In Memory Cache로 다양한 자료구조를 제공한다. Memory에 모든 자료를 저장한다. 빠르면서 다양한 자료구조를 제공해 개발에 편의성을 제공한다. 캐시 데이터를 DB(디스크)가 아닌 더 빠른 저장 매체(메모리)에 저장해놓고 읽는 것이다. 다양한 방식의 캐시가 있다. 가장 대표적인 방법은 Cache Aside이다. Cache Aside 대부분 캐시가 사용하는 방식이다. 캐시에서 먼저 읽고, 캐시 미스가 발생하면 DB를 읽어서 캐시를 업데이트한다. 장점 : 로직이 애플리케이션에 있어 구현이 쉽고 캐시에는 필요한 내용만 들어가게 된다. 단점 : 캐시 미스가 발생하면 성능이 떨어진다. DB에 업데이트 된 내용이 캐시에 반영되지 않을 수 있다. 캐시 미스..
https://ittrue.tistory.com/250 [Java] JDBC란 무엇인가? - Java Database Connectivity JDBC란? JDBC(Java Database Connectivity)는 Java 기반 애플리케이션의 데이터를 데이터베이스에 저장 및 업데이트하거나, 데이터베이스에 저장된 데이터를 Java에서 사용할 수 있도록 하는 자바 API이다. JDB ittrue.tistory.com JDBC JDBC는 Java Database Connectivity이다. Java 기반 애플리케이션과 DB간의 API이다. 즉 Java 애플리케이션이 JDBC를 사용해 DB에 연동할 수 있다. Java 프로그램 내에서 SQL문을 실행하기 위한 API이다. java.sql.Connection - ..