

# Athena ACID 트랜잭션 사용
<a name="acid-transactions"></a>

“ACID 트랜잭션”이라는 용어는 데이터베이스 트랜잭션에서 데이터 무결성을 보장하는 속성([원자성](https://en.wikipedia.org/wiki/Atomicity_(database_systems)), [일관성](https://en.wikipedia.org/wiki/Consistency_(database_systems)), [격리](https://en.wikipedia.org/wiki/Isolation_(database_systems)) 및 [내구성](https://en.wikipedia.org/wiki/Durability_(database_systems)))을 나타냅니다. ACID 트랜잭션을 사용하면 여러 사용자가 Amazon S3 객체를 어토믹(atomic) 방식으로 동시에 안정적으로 추가하고 삭제할 수 있으며 데이터 레이크에 대한 쿼리를 일관되게 읽어 기존 쿼리를 격리할 수 있습니다. Athena ACID 트랜잭션은 삽입, 삭제, 업데이트 및 시간 이동 작업에 대한 단일 테이블 지원을 Athena SQL 데이터 조작 언어(DML)에 추가합니다. 사용자와 여러 명의 동시 사용자가 Athena ACID 트랜잭션을 사용하여 Amazon S3 데이터를 행 수준에서 안정적으로 수정할 수 있습니다. Athena 트랜잭션은 잠금 의미 체계와 코디네이션을 자동으로 관리하며 사용자 지정 레코드 잠금 솔루션이 필요하지 않습니다.

Athena ACID 트랜잭션과 친숙한 SQL 구문은 비즈니스 및 규제 데이터에 대한 업데이트를 간소화합니다. 예를 들어 데이터 삭제 요청에 응답하려면 SQL `DELETE` 작업을 수행할 수 있습니다. 레코드를 수동으로 수정하려면 단일 `UPDATE` 문을 사용할 수 있습니다. 최근에 삭제된 데이터를 복구하려면 `SELECT` 문을 사용하여 시간 이동 쿼리를 실행할 수 있습니다.

Athena ACID 트랜잭션은 공유 테이블 형식을 기반으로 하기 때문에 공유 테이블 형식도 지원하는 [Amazon EMR](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-what-is-emr.html) 및 [Apache Spark](https://spark.apache.org/)와 같은 다른 서비스 및 엔진과 호환됩니다.

Athena 트랜잭션은 Athena 콘솔, API 작업, ODBC 및 JDBC 드라이버를 통해 사용할 수 있습니다.

**Topics**
+ [Linux Foundation Delta Lake 테이블 쿼리](delta-lake-tables.md)
+ [Apache Hudi 데이터세트 쿼리](querying-hudi.md)
+ [Apache Iceberg 테이블 쿼리](querying-iceberg.md)