누구나 "XA"라고도하는 분산 트랜잭션을 postgresql에서 처리하는 방법을 알려주시겠습니까? 거기에 대한 리소스가 있습니까? 모든 답변을 주셔서 감사합니다.postgresql에서 분산 트랜잭션을 처리하는 방법은 무엇입니까?
답변
조금 혼란스러워 보입니다.
- 기본 분산 트랜잭션 및
- XA 트랜잭션 : 일반적으로 데이터베이스 시스템은 분산 트랜잭션 유형의 두 가지 개념을 지원합니다.
네이티브 분산 트랜잭션은 일반적으로 동일한 RDBMS의 다른 서버 사이에 있습니다. Postgres는 dblink_exec 명령으로이를 지원합니다. 일반적으로 다른 서버에 대한 연결은 데이터베이스 링크라고합니다. Postgres는 다른 상업용 RDBMS를 사용하기에 좀 더 서투른 모양입니다. 먼저 데이터베이스 링크를 사용할 수 있도록 확장을 설치해야합니다. 그러나 postgres rdbms가 트랜잭션을 관리하고 있습니다.
반면 XA 트랜잭션은 외부 트랜잭션 관리자 (TM)에서 관리하며 참여하는 각 데이터베이스는 트랜잭션 관리자와 함께 XA 자원의 역할을 담당합니다. RDBMS는 트랜잭션을 커밋 할 때 더 이상 스스로 결정할 수 없습니다. 이것이 XA 트랜잭션 관리자의 임무입니다. 그는 2PC 프로토콜을 사용하여 변경 사항이 데이터베이스에 일관된 방식으로 적용되거나 롤백되는지 확인합니다.
Windows와 같은 일부 OS에서는 트랜잭션 관리자가 다른 운영 체제의 일부가 아닙니다. 일반적으로 java는 트랜잭션 관리자와 함께 제공되며 XA를 사용하도록 해당 데이터 소스를 구성해야합니다.
답장을 보내 주셔서 감사합니다. 나는 지금 분명하다. –
- 1. neo4jphp에서 트랜잭션을 처리하는 방법은 무엇입니까?
- 2. SQL Server가 UPDATE 트랜잭션을 처리하는 방법은 무엇입니까?
- 3. .net 객체에서 트랜잭션을 처리하는 방법은 무엇입니까?
- 4. Oracle에서 대규모 트랜잭션을 처리하는 방법은 무엇입니까?
- 5. dotnet world에서 트랜잭션을 처리하는 방법은 무엇입니까?
- 6. C# .net의 SQL Server에서 트랜잭션을 처리하는 가장 좋은 방법은 무엇입니까?
- 7. JBoss AS 7.1에서 분산 트랜잭션을 올바르게 설정하는 방법은 무엇입니까?
- 8. Java와 C++ 응용 프로그램간에 분산 (데이터베이스) 트랜잭션을 아카이브하는 방법은 무엇입니까?
- 9. 분산 캐시 제품에서 다중 분산 맵에서 작동하는 트랜잭션을 전달하는 방법
- 10. PostgreSQL에서 실패한 쿼리에서 트랜잭션을 효과적으로 사용하는 방법
- 11. PostgreSQL에서 여러 트랜잭션을 동시에 실행하는 방법
- 12. Play 2 Scala에서 트랜잭션을 처리하는 일반적인 방법은 무엇입니까?
- 13. 일관성을 제공하기 위해 Java에서 읽기 트랜잭션을 처리하는 방법은 무엇입니까?
- 14. 임베디드 neo4j 내에서 트랜잭션을 처리하는 가장 좋은 방법은 무엇입니까?
- 15. 화면 제한 시간 초과 후 CC 트랜잭션을 처리하는 방법은 무엇입니까?
- 16. WCF 서비스에서 트랜잭션을 처리하는 방법
- 17. 왜 SSIS 런타임이 분산 트랜잭션을 시작하지 못합니까?
- 18. NServiceBus에 대한 분산 트랜잭션을 구성하는 방법
- 19. 분산 트랜잭션을 mysql 프록시로 수행하는 방법
- 20. TransactionScope는 언제 트랜잭션을 "분산"으로 조정합니까?
- 21. postgresql에서 열을 암호화하는 방법은 무엇입니까?
- 22. PostgreSQL에서 MySQL로 마이그레이션하는 방법은 무엇입니까?
- 23. PostgreSQL에서 데이터베이스를 내보내는 방법은 무엇입니까?
- 24. PostgreSQL에서 datetime을 선택하는 방법은 무엇입니까?
- 25. PostgreSQL에서 백분율을 반환하는 방법은 무엇입니까?
- 26. PostgreSQL에서 Hadoop으로 데이터를 가져 오는 방법은 무엇입니까?
- 27. MySQL 트랜잭션을 테스트하는 방법은 무엇입니까?
- 28. SQL 트랜잭션을 안전하게하는 방법은 무엇입니까?
- 29. Android에서 트랜잭션을 롤백하는 방법은 무엇입니까?
- 30. liferay에서 트랜잭션을 구현하는 방법은 무엇입니까?
PostgreSQL 문서에서 "2 단계 커밋"또는 "준비된 트랜잭션"을 검색하십시오. 일반적으로 관리는 미들웨어/앱 수준입니다. 여기에 친절한 소개 : http://blog.endpoint.com/2010/07/distributed-transactions-and-two-phase.html –
어떤 플랫폼을 사용하고 계십니까? Java라면 JTA를 살펴보십시오. 대부분의 경우 거의 작동하는 XA 지원입니다. 대부분의 XA 구현보다 낫다. –