본문 바로가기

분류 전체보기104

[SQLD] 230517 슈퍼/서브타입 데이터 모델의 변환 타입 | Nested Loop, Hash Join | 트랜잭션의 특징 슈퍼/서브타입 데이터 모델의 변환 타입One To One Type슈퍼타입과 서브타입을 개별 테이블로 도출테이블의 수가 많아서 조인이 많이 발생하고 관리가 어려움Plus Type슈퍼타입과 서브타입 테이블로 도출조인이 발생하고 관리가 어려움Single Type슈퍼타입과 서브타입을 하나의 테이블로 도출조인성능이 좋고 관리가 편하지만, IO 성능이 나쁨   Nested Loop온라인 트랜잭션 처리 (OLTP)에 유리적은 데이터를 조인할 때 유리Hash Join작은 테이블을 먼저 읽어서 Hash Area에 해시 테이블을 생성하는 방법큰 테이블로 Hash Area를 생성한다면 과다한 Sort가 유발 되어 성능이 저하될 수 있다수행 빈도가 낮고 수행시간이 오래 걸리는 대용량 테이블에 대한 조인을 할 때 유용두개의 테.. 2024. 5. 17.
[TIL] 240510 Spring S3 bucket에 사진 추가 | SpringBoot MultipartFile로 이미지 추가하기 AWS S3 버킷 만들기먼저 AWS S3버킷을 만들어줘야합니다!!AWS S3 > 버킷 > 버킷 만들기  Spring 연결1. build.gradle 의존성 추가 🔽 build.gradle // AWS S3 implementation 'org.springframework.cloud:spring-cloud-starter-aws:2.2.6.RELEASE' 2. application.properties 추가 🔽 application.properties# S3cloud.aws.credentials.accessKey={발급받은 공개키}cloud.aws.credentials.secretKey={발급받은 비밀키}cloud.aws.s3.bucket={버킷명}cloud.aws.region.static:ap-no.. 2024. 5. 10.
[SQLD] 240509 정규화, 반정규화 응집도는 높이고결합도는 낮춘다   제 1정규화: 원자값이 아닌 도메인 분해제 2정규화 : 부분적 함수 종속 제거 (PK가 여러개일 때 다른 속성이 PK에 종속되지 않으면 분리)제 3정규화: 이행적 함수 종속 제거(컬럼이 다 각자 연관관계가 있는지 확인) 2024. 5. 9.
[SQLD] 데이터 모델과 성능 성능 데이터 모델링 절차 1. 데이터 모델링을 할 때 정규화를 정확하게 수행한다. 2. 데이터베이스 용량산정을 수행한다. 3. 데이터베이스에 발생되는 트렌젝션 유형을 파악한다. 4. 용량과 트렌젝션의 유형에 따라 반정규화를 수행한다. 5. 이력모델의 조정, PK/FK조정, 슈퍼터입/서브타입 조정 등을 수행한다. 6. 성능관점에서의 데이터 모델을 검증한다. 제1차 정규화 컬럼에 위한 반복적인 속성값을 갖는 형태는 1차 정규화의 대상 인덱스가 너무 많을 경우 입력, 수정, 삭제의 성능이 저하된다 2차 정규화 함수종속성의 규칙에 따라 정규화 2024. 5. 8.
[TIL] 240508 MongoDB 적용하기 | 채팅 DB MySQL에서 MongoDB로 변경 - 채팅 DB를 MySQL에서 MongoDB로 변경  서버리스 어플리케이션특징서버리스 컴퓨팅은 개발자가 서버를 관리할 필요 없이 애플리케이션을 실행할 수 있는 컴퓨팅 모델전통적인 서버 기반의 아키텍처에서는 애플리케이션을 실행하기 위해 개발자가 직접 서버를 프로비저닝하고 관리해야 했다.하지만 서버리스에서는 이러한 서버 관리 작업을 클라우드 제공 업체가 대신 처리한다. 장점확장성서버리스 애플리케이션은 필요에 따라 자동으로 확장됨사용량이 증가하면 클라우드 제공 업체가 자동으로 추가 리소스를 할당하여 응답요금 청구 방식사용한 만큼만 비용을 지불하므로 비용이 효율적사용하지 않는 시간에는 서버가 비활성화되므로 리소스를 낭비하지 않는다운영 부담 감소서버 관리에 대한 부담이 줄어든다개발자는 코드 작성에만 집중하면 .. 2024. 5. 8.
[SQLD] 240502 SQL DB DBMS 데이터 모델링 SQL?데이터베이스를 액세스할 수 있는 언어 데이터베이스?조직화된 데이터의 모음 DBMS?데이터베이스와 소통하며 데이터를 관리하고 분석하는 소프트웨어- MySQL, ORACLE, PostgreSQL, mongoDB 등이 있다 데이터모델링?데이터 기반으로 한 모델을 만드는 과정 2024. 5. 2.