ACID

"Atomicity, Consistency, Isolation, Durability"의 약자입니다. ACID라는 약어는 데이터 무결성을 보장하기 위해 데이터베이스가 갖추어야 하는 네 가지 특성을 정의합니다. 구체적으로 이러한 특성은 데이터베이스에 데이터를 쓰는 데이터베이스 작업에 적용됩니다. 예로는 레코드 삽입, 업데이트, 삭제가 있습니다.

ACID의 네 가지 요소는 다음과 같습니다:

1. 원자성

원자성은 각 트랜잭션이 "전부 아니면 전무" 방식으로 처리되도록 보장합니다. 즉, 완전히 성공하거나 완전히 실패합니다. 원자적 작업은 부분적으로 처리된 트랜잭션을 허용하지 않아 데이터 손상을 방지합니다. 작업을 완료할 수 없으면 아무 일도 발생하지 않은 것처럼 이전 상태로 "롤백"됩니다.

일부 데이터베이스 관리 시스템은 ACID를 준수하려면 특정 구성이 필요할 수 있습니다. 예를 들어 MySQL은 ACID 표준을 충족하지만 원자적 작업을 지원하는 테이블을 사용할 때만 그렇습니다. InnoDB 테이블은 트랜잭션을 지원하므로 ACID를 준수하며, 여기에는 COMMITROLLBACK 문이 포함됩니다. 트랜잭션을 지원하지 않는 MyISAM 테이블은 ACID를 준수하지 않습니다.

2. 일관성

일관성은 유효한 데이터만 데이터베이스에 기록되도록 보장합니다. 예를 들어 데이터베이스는 유효하지 않은 트랜잭션이나 인식할 수 없는 데이터를 허용하지 않습니다. 또한 새 트랜잭션을 임시로 저장하는 "이중 쓰기 버퍼"를 사용할 수 있습니다. 데이터베이스나 호스트 시스템이 예기치 않게 충돌하면 버퍼에서 데이터를 복원할 수 있습니다.

3. 격리성

격리성은 각 트랜잭션이 개별적으로 처리되도록 보장합니다. 일부 데이터베이스는 초당 여러 번 데이터를 읽고 쓰므로 동시 트랜잭션이 필요할 수 있습니다. 트랜잭션이 동시에 발생하더라도 서로 격리된 상태로 처리할 수 있습니다. 예를 들어 한 작업이 실패해도 동시에 진행 중인 다른 작업에는 영향을 주지 않습니다. 격리성은 한 트랜잭션의 데이터가 다른 트랜잭션에 표시되지 않도록 하므로 데이터베이스 보안에도 필수적입니다.

4. 지속성

지속성은 트랜잭션이 처리되거나 데이터베이스에 "커밋"된 후 데이터가 저장되도록 보장합니다. 트랜잭션이 애플리케이션 충돌이나 정전으로 인해 손실되지 않도록 데이터를 비휘발성 메모리에 기록해야 합니다.

데이터베이스 소프트웨어가 데이터베이스의 지속성을 보장하는 데 도움이 될 수 있지만 하드웨어도 중요합니다. 예를 들어 RAID 스토리지 구성은 저장 장치에 장애가 발생했을 때 이중화를 제공할 수 있습니다. UPS 배터리 백업은 주 전원을 사용할 수 없을 때 전력을 유지하여 데이터 손실을 방지할 수 있습니다.


NOTE: "Acid"(소문자)는 특정 HTML 태그와 CSS 규칙을 브라우저가 지원하는지 확인하는 웹 브라우저 테스트입니다. 가장 최근의 테스트인 Acid3는 2008년에 Web Standards Project 그룹이 제작했습니다.

업데이트됨 September 5, 2020 작성: Per C.

quiz지식 테스트하기

Which of the following data types can only store two possible values?

A
Integer
0%
B
String
0%
C
Set
0%
D
Boolean
0%
Correct! Incorrect!     View the Boolean definition.
More Quizzes →

Tech Terms 컴퓨터 사전

이 페이지의 ACID에 대한 정의는 TechTerms.com의 저자가 작성한 원본 정의입니다. 이 페이지를 참조하거나 이 정의를 인용하려면 정의 바로 아래에 있는 녹색 인용 표시줄을 사용하세요.

저희의 목표는 컴퓨터 용어를 이해하기 쉬운 방식으로 설명하는 것입니다. 게시하는 모든 정의에서 정확성과 간결함을 추구합니다. 이 정의에 대한 피드백이 있거나 새로운 기술 용어를 제안하고 싶으시면 문의해 주세요.

Tech Terms 뉴스레터

매일 또는 매주 발행되는 뉴스레터로 기술 지식을 향상시키세요! 지금 구독하고 새로운 용어와 퀴즈를 이메일로 받아보세요.

무료 TechTerms 뉴스레터 구독하기

이메일을 얼마나 자주 받고 싶으신가요?

각 이메일에 포함된 링크를 통해 언제든지 구독을 취소하거나 수신 빈도를 변경할 수 있습니다. 질문이 있으신가요? 문의해 주세요.

참고: 뉴스레터는 영어로 발송됩니다.