유쨈미 2024. 7. 6. 18:56

1. Map.Entry

Map.Entry는 Java의 Map 인터페이스에서 키-값 쌍을 표현하는 내부 인터페이스이다.
이는 Map의 개별 항목을 다룰 때 사용되며, 키와 값에 대한 접근과 조작을 가능하게 한다.

 

💡 상세 개념

  1. Map.Entry는 Map 인터페이스의 내부 인터페이스이다.
  2. 각 Entry 객체는 Map 내의 하나의 키-값 쌍을 나타낸다.
  3. 이를 통해 Map의 내용을 반복하거나 조작할 수 있다.
  4. immutable한 Map의 경우, Entry의 setValue() 메소드는 UnsupportedOperationException을 던진다.

 

💡 주요 메소드 상세 설명

 

1️⃣ K getKey()

  1. 이 엔트리의 키를 반환한다.
  2. 반환된 키는 null일 수 있다 (Map이 null 키를 허용하는 경우).

2️⃣ V getValue()

  1. 이 엔트리의 값을 반환한다.
  2. 반환된 값은 null일 수 있다 (Map이 null 값을 허용하는 경우).

3️⃣ V setValue(V value)

  1. 이 엔트리의 값을 지정된 값으로 바꾼다.
  2. 이전 값을 반환한다.
  3. Map이 수정 불가능하거나 값 변경을 지원하지 않는 경우 UnsupportedOperationException을 던진다.
 

[개발일지] 230516 Java Map.Entry 사용하기

오늘 새로 배운 내용 Map.Entry Map.Entry를 이용하면 Map에 저장된 모든 key-value 쌍을 각각의 key-value를 갖고 있는 하나의 객체로 얻을 수 있다. 간단한 예시를 보면 이해하기 편하다. 기존 Map에 저장된

seungjjun.tistory.com

- 참고 : seungjjun


2. PostgreSQL

강력하고 확장 가능한 오픈 소스 객체-관계형 데이터베이스 관리 시스템(ORDBMS)이다.
1996년에 첫 출시된 이후 지속적으로 발전해 왔으며, 엔터프라이즈급 기능과 성능을 제공한다.

 

🚀 아키텍처

  1. 클라이언트/서버 모델을 사용한다.
  2. 멀티프로세스 아키텍처를 채택하여 안정성을 높인다.
  3. 공유 메모리를 사용하여 프로세스 간 통신을 효율적으로 처리한다.
  4. Write-Ahead Logging (WAL)을 통해 데이터 무결성을 보장한다.

 

💡 주요 특징

 

1️⃣ ACID 준수

  1. Atomicity
    트랜잭션은 전체가 성공하거나 전체가 실패한다.
  2. Consistency
    트랜잭션 전후로 데이터베이스는 일관된 상태를 유지한다.
  3. Isolation
    동시 실행되는 트랜잭션들은 서로 영향을 주지 않는다.
  4. Durability
    완료된 트랜잭션의 결과는 영구적으로 저장된다.

 

2️⃣ 확장성

  1. 테이블 파티셔닝을 지원하여 대용량 테이블을 효율적으로 관리할 수 있다.
  2. 병렬 쿼리 실행을 통해 복잡한 쿼리의 성능을 향상시킨다.
  3. 수평적 확장(읽기 전용 복제본)과 수직적 확장(하드웨어 업그레이드)을 모두 지원한다.

 

3️⃣ 데이터 타입

  1. 기본 타입
    integer, numeric, varchar, text, date, time, timestamp 등
  2. 고급 타입
    array, hstore, json, jsonb, xml, uuid
  3. 사용자 정의 타입
    CREATE TYPE 명령을 통해 생성이 가능하다.

 

4️⃣ 인덱싱

  1. B-tree
    기본 인덱스 타입, 대부분의 상황에 적합하다.
  2. Hash
    등호 비교에 최적화되어 있다.
  3. GiST (Generalized Search Tree)
    기하 데이터와 전문 검색에 사용된다.
  4. SP-GiST (Space-Partitioned GiST)
    비균형 데이터 구조에 적합하다.
  5. GIN (Generalized Inverted Index)
    복합 값(ex : 배열)에 대한 검색에 유용하다.
  6. BRIN (Block Range Index)
    대용량 테이블의 순차적 데이터에 효율적이다.
 

PostgreSQL이란 무엇입니까? | IBM

PostgreSQL은 속도, 안정성, 유연성 및 개방형 표준 지원 측면에서 좋은 평가를 받고 있는 오픈 소스 데이터베이스입니다.

www.ibm.com

- 참고 : http://www.ibm.com