Certificate/정보처리기사

정보처리기사 주요개념 3

Olivia-BlackCherry 2023. 4. 23. 06:27

목차

    1. 반정규화

    반정규화는 데이터베이스에서 성능 향상을 위해 일부 테이블을 일부러 중복된 데이터를 가지는 상태로 만드는 과정입니다. 반정규화를 통해 데이터의 일관성이 깨질 수 있기 때문에, 적절한 유형의 반정규화를 선택하고 충분한 검토와 테스트를 거쳐야 합니다.

    일반적으로 사용되는 반정규화 유형은 다음과 같습니다.

    복제 반정규화(Replication Denormalization)
    복제 반정규화는 테이블 간의 관계를 일부러 무시하여 중복된 데이터를 가지는 테이블을 생성하는 것입니다. 이를 통해 쿼리 성능을 향상시킬 수 있습니다.

    가상 컬럼 반정규화(Virtual Column Denormalization)
    가상 컬럼 반정규화는 테이블 간의 조인을 피하기 위해 새로운 컬럼을 생성하는 것입니다. 이를 통해 쿼리의 실행 속도를 높일 수 있습니다.

    동일 데이터 반정규화(Same Data Denormalization)
    동일 데이터 반정규화는 서로 다른 테이블에 존재하는 데이터를 한 테이블로 합치는 것입니다. 이를 통해 데이터 액세스 속도를 높일 수 있습니다.

    부분적 반정규화(Partial Denormalization)
    부분적 반정규화는 일부 컬럼만 반정규화하는 것입니다. 이를 통해 쿼리의 실행 속도를 높이면서도 데이터 무결성을 유지할 수 있습니다.

    반정규화는 데이터의 중복성이 증가하므로 데이터 일관성을 유지하기 위해 주의해야 합니다. 적절한 반정규화를 선택하고 충분한 검토와 테스트를 거친 후에만 적용해야 합니다.

     

     

    2. 반정규화 유형

    Horizontal Denormalization
    수평적으로 물리적으로 분할된 테이블을 다시 결합하여 불필요한 조인을 제거하고 쿼리 실행 시간을 줄입니다. 그러나 업데이트 작업은 비용이 크며 데이터 무결성이 깨질 수 있습니다.

    Vertical Denormalization
    테이블의 컬럼을 분할하여 데이터 중복을 허용합니다. 이렇게 하면 조인이 줄어들고 쿼리 실행 시간이 단축되지만, 업데이트 작업은 여전히 비용이 크고 데이터 무결성이 깨질 수 있습니다.

    Hybrid Denormalization
    수평적 및 수직적으로 테이블을 분할하며 최적의 성능과 높은 데이터 무결성을 유지하기 위해 수평 및 수직 데이터 중복을 조절합니다. 이 방법은 데이터 액세스 패턴에 따라 적합한 유형의 denormalization을 결합할 수 있어 유연성이 높습니다.

    위의 세 가지 denormalization 유형은 각각 장단점이 있으며, 어떤 방식이 가장 적합한지는 상황에 따라 다릅니다. 따라서 denormalization을 적용하기 전에 충분한 검토와 테스트가 필요합니다.

     

     

    3. EAI 유형

    EAI(Enterprise Application Integration)는 기업 내에서 사용되는 다양한 응용 프로그램들을 효율적으로 통합하기 위한 방법론 및 기술입니다. EAI에서는 다양한 구축 유형이 있으며, 이 중에서 가장 일반적으로 사용되는 4가지 구축 유형은 다음과 같습니다.

    Point-to-Point Integration(점대점 통합)
    Point-to-Point Integration은 두 응용 프로그램 간의 직접적인 연결을 통해 데이터를 전송하는 방식입니다. 이 방식은 구현이 쉽고 빠르게 작동하지만, 응용 프로그램 수가 증가할수록 복잡도가 높아지는 단점이 있습니다.

    Hub and Spoke Integration(허브 앤 스포크 통합)
    Hub and Spoke Integration은 중앙 집중식의 허브 시스템과 여러 개의 스포크 시스템을 연결하여 데이터를 전송하는 방식입니다. 이 방식은 구성이 복잡하지만, 유연하게 확장이 가능하고 효율적인 데이터 흐름 관리가 가능합니다.

    Enterprise Service Bus Integration(ESB 통합)
    ESB Integration은 서비스 중심 아키텍처(Service Oriented Architecture, SOA) 기반의 통합 방식으로, ESB를 이용해 서로 다른 응용 프로그램들을 연결하는 방식입니다. 이 방식은 여러 개의 프로토콜과 통신 방식을 지원하며, 보안성이 강화된 환경에서 사용할 수 있습니다.

    Business Process Management Integration(BPM 통합)
    BPM Integration은 비즈니스 프로세스를 효율적으로 관리하기 위한 방식으로, EAI와 BPM을 결합하여 비즈니스 프로세스 흐름을 관리합니다. 이 방식은 비즈니스 프로세스를 중심으로 응용 프로그램을 통합하므로 비즈니스의 변화에 유연하게 대응할 수 있습니다.

    이러한 구축 유형은 기업의 특성과 목적에 따라 적합한 방식을 선택하여 적용해야 합니다.


     


    4. 교착상태 해결을 위한 알고리즘

     

    교착상태(deadlock)란 둘 이상의 프로세스가 서로 상대방의 작업이 끝나기만을 기다리고 있어, 모든 작업이 중단되는 상황을 말합니다. 이러한 교착상태를 해결하기 위한 대표적인 방법으로는 다음과 같습니다.

     

    예방(prevention): 자원 할당 그래프 알고리즘은 교착상태가 발생하지 않도록 자원 요청과 할당을 통제하여 교착상태를 예방하는 방법입니다.

    회피(avoidance): 은행원 알고리즘은 프로세스가 자원을 요청할 때 해당 자원을 할당해도 교착상태가 발생하지 않는지를 사전에 검사하여, 교착상태 발생 가능성이 있는 자원 요청을 거부함으로써 교착상태를 회피하는 방법입니다.

    탐지 및 복구(detection and recovery): 교착상태 탐지 알고리즘은 시스템 상태를 주기적으로 검사하여 교착상태가 발생했는지 여부를 파악하고, 교착상태가 발견되면 교착상태를 해결하기 위한 방법을 찾아서 복구하는 방법입니다.

    무시(ignore): 교착상태 무시 알고리즘은 교착상태가 발생할 가능성이 매우 낮은 시스템에서 사용하는 방법으로, 교착상태 발생 시 복구하는 대신 교착상태가 일어나도 무시하고 시스템을 계속 실행하는 방법입니다.

     

     

    'Certificate > 정보처리기사' 카테고리의 다른 글

    정보처리기사 주요개념 2  (0) 2023.04.22
    [정보처리기사] 주요 개념 스크랩  (0) 2023.04.21