programing

MARS(다중 활성 결과 집합)의 단점?

linuxpc 2023. 7. 20. 21:46
반응형

MARS(다중 활성 결과 집합)의 단점?

MARS(Multiple Active Result Sets)의 단점을 아는 사람이 있습니까?커서가 MARS보다 더 유용한 경우와 같이 MARS 사용을 피해야 하는 이유를 아는 사람이 있습니까?

(이 (1) 블로그에서) 적어도 두 가지의 잠재적인 단점이 있는 것으로 보입니다.

  1. 분명히 이것은 MARS 지원 설계에 대해 실행되도록 설계되지 않은 레거시 시스템에 잠재적인 문제를 일으킬 수 있습니다. "MARS가 아닌 세계에서 실행되도록 최적화된 기존 코드는 MARS로 수정되지 않은 상태로 실행될 때 약간의 성능 저하를 보일있습니다."

  2. "MARS를 사용하면 여러 개의 다중 문 배치를 서버로 보낼 수 있습니다.서버는 이러한 배치의 실행을 인터리브합니다. 즉, 배치가 예를 들어 SET 또는 USE 문을 통해 서버 상태를 변경하거나 TSQL 트랜잭션 관리 문(BEGIN TRAN, COMMIT, Rollback)을 사용하는 경우 사용자와 서버 모두가 실제 의도를 혼동할 수 있습니다."

저는 아직 MARS가 가능한 디자인을 시도해 본 적이 없지만, 제 현재 프로젝트에서는 거의 그렇게 하고 있습니다.활성 레코드 세트가 실행 중인 동일한 데이터베이스에서 구성 데이터를 로드하는 것과 같이 경쟁적이고 때로는 종속적인 쿼리 작업에 약간의 문제가 있습니다.

MSDN 사이트에 대한 자세한 정보(2)는 여기에 있습니다.

[ (1) https://web.archive.org/web/20190911155929/https ://blogs.msdn.microsoft.com/sqlnativeclient/2006/09/27/using-mars-with-sql-native-client/ ]
[ (2) http://msdn.microsoft.com/en-us/library/ms131686.aspx ]

  • 한 번에 하나의 연결을 수행하는 것보다 약간 더 많은 서버 리소스가 필요합니다.
  • SQL Server 2005 이상을 실행해야 합니다.따라서 레거시(acc!) 환경에서는 문제가 될 수 있습니다.

무엇에 의존합니까?실질적인 단점은 없습니다.

그들은 트랜잭션 저장 포인트를 지원하지 않지만, 저는 이것이 단점이라고 생각하지 않습니다.

언급URL : https://stackoverflow.com/questions/374444/disadvantages-of-mars-multiple-active-result-sets

반응형