본문 바로가기
취업스터디

취업스터디 - 6일차 과제

by 새발의 피 2023. 7. 26.

트랜잭션이 무엇인지 설명해 주세요.
TCP와 UDP의 공통점과 차이점을 설명해보세요.

 

 

 

 

 

트랜잭션이 무엇인지 설명해 주세요.

트랜잭션(Transaction)은 데이터베이스 관리 시스템(DBMS)에서 수행되는 하나 이상의 데이터베이스 조작 작업을 하나의 논리적인 작업 단위로 묶는 것을 말합니다. 이러한 논리적인 작업 단위는 모두 성공적으로 완료되거나, 모두 실패하여 롤백(undo)되어야 합니다. 트랜잭션은 데이터베이스의 무결성을 보장하고, 데이터 조작 작업이 원자성, 일관성, 독립성, 지속성을 만족하도록 합니다.

  1. 원자성(Atomicity):
    • 트랜잭션의 모든 작업은 원자적(Atomic)으로 처리되어야 합니다. 즉, 모든 작업이 성공적으로 완료되거나, 어느 하나라도 실패할 경우 모든 작업이 롤백되어야 합니다. 이를 통해 데이터베이스는 일관된 상태를 유지할 수 있습니다.
  2. 일관성(Consistency):
    • 트랜잭션이 수행되기 전과 후에 데이터베이스의 상태는 항상 일관성을 유지해야 합니다. 트랜잭션이 성공적으로 완료되면 데이터베이스는 일관된 상태로 변환되어야 합니다.
  3. 독립성(Isolation):
    • 여러 트랜잭션이 동시에 수행될 때, 각 트랜잭션은 서로 영향을 주지 않고 독립적으로 수행되어야 합니다. 하나의 트랜잭션이 완료되기 전까지는 다른 트랜잭션에서 해당 트랜잭션의 변경 내용을 볼 수 없습니다.
  4. 지속성(Durability):
    • 트랜잭션이 성공적으로 완료되면, 그 결과는 영구적으로 유지되어야 합니다. 즉, 변경된 데이터는 시스템 장애나 다른 이유로 인해 손실되어서는 안 됩니다.

트랜잭션은 데이터베이스 관리 시스템에서 자동으로 관리되기도 하지만, 개발자가 명시적으로 트랜잭션을 시작하고 커밋(commit) 또는 롤백(rollback)하는 것도 가능합니다. 트랜잭션을 적절하게 사용하면 데이터베이스의 일관성과 안정성을 보장할 수 있으며, 복잡한 비즈니스 로직의 일관성을 유지하는데에도 도움을 줍니다.

 

 

 

 


TCP와 UDP의 공통점과 차이점을 설명해보세요.

TCP(Transmission Control Protocol)와 UDP(User Datagram Protocol)는 인터넷 프로토콜 스위트의 두 가지 주요 전송 프로토콜로, 네트워크 통신을 담당합니다. 둘 다 전송 계층(Transport Layer)에 속하며, 데이터의 전송과 관련된 다음과 같은 공통점과 차이점이 있습니다:

공통점:

  1. 데이터 전송:
    • TCP와 UDP는 모두 데이터의 전송을 담당합니다. 네트워크를 통해 데이터를 안정적으로 전달하고, 목적지까지 도달시키는 역할을 수행합니다.
  2. 포트 번호:
    • TCP와 UDP는 데이터를 보내거나 받을 때 포트 번호를 사용하여 애플리케이션을 구분합니다. 송신자와 수신자 모두 포트 번호를 사용하여 데이터를 정확한 애플리케이션에 전달합니다.
  3. 패킷 기반 프로토콜:
    • 둘 다 패킷 기반 프로토콜로, 데이터를 작은 단위로 나누어 전송합니다. 패킷은 네트워크를 통해 개별적으로 전달되며, 수신측에서 다시 합쳐집니다.

차이점:

  1. 연결 지향성 vs. 비연결성:
    • TCP는 연결 지향적인 프로토콜로, 데이터 전송 전에 먼저 연결을 수립하고, 데이터를 전송한 후에는 연결을 해제합니다. 이에 반해, UDP는 비연결성 프로토콜로, 데이터 전송을 위해 미리 연결을 수립하지 않고 바로 데이터를 보냅니다.
  2. 신뢰성:
    • TCP는 데이터 전송 시 순서를 보장하고, 재전송과 에러 처리 등 신뢰성 있는 전송을 보장합니다. UDP는 데이터 전송 시 신뢰성을 보장하지 않으며, 패킷 손실이나 순서 변경이 발생할 수 있습니다.
  3. 전송 속도:
    • TCP는 신뢰성을 보장하기 위해 추가적인 오버헤드가 발생하므로 전송 속도가 상대적으로 느립니다. UDP는 신뢰성을 보장하지 않기 때문에 오버헤드가 적어 전송 속도가 더 빠릅니다.
  4. 사용 사례:
    • TCP는 파일 전송, 이메일, 웹 브라우징과 같이 신뢰성이 중요한 애플리케이션에서 사용됩니다. UDP는 실시간 스트리밍, DNS 조회, 온라인 게임과 같이 신속한 데이터 전송이 우선적인 애플리케이션에서 사용됩니다.

따라서, TCP와 UDP는 각각 다른 특징을 가지고 있으며, 애플리케이션의 요구사항과 특성에 따라 적절한 프로토콜을 선택하여 사용해야 합니다.

'취업스터디' 카테고리의 다른 글

취업스터디 - 8일차 과제  (0) 2023.07.28
취업스터디 - 7일차 과제  (0) 2023.07.27
취업스터디 - 5일차 과제  (0) 2023.07.25
취업스터디 - 4일차 과제  (0) 2023.07.24
취업스터디 - 1주차 과제  (0) 2023.07.23

댓글