점검 부탁드립니다.

예진예랑 2015.02.07 23:35 Views : 2984

외부시스템을 통해 데이터를 서로 주고 받고 있습니다.

외부에서 넘어온 데이터는 A테이블에 정상적으로 업데이트 되고 있는 상황입니다.

A테이블의 데이터를 다시 다른 B테이블에 update를 수행하고 있는데요.

이부분을 JOB 스케쥴을 통해 매 20분마다 설정을 해놓았습니다.


문제점)

JOB스케쥴에서 오류가 나거나 하는 사항은 없는데, 데이터가 일치하지 않는 경우가 아주 간혹(한달에 1~2건정도 )발생합니다.

즉, A테이블에서 B테이블로 업데이트시 A테이블내용은 정상인데, B테이블의 일부 컬럼값이 잘못 들어온 경우입니다.

물론 아주 여러가지 변수사항이 고려될수 있는 부분인데요...

고수분들께 여쭤볼게 있습니다.


위 내용을 요약하자면.....

 1)         외부시스템db------>  A테이블-UPDATE 수행(정상값)

 2)        A테이블 ------> B테이블-UPDATE 수행  <-( 요부분을 20분단위 job 스케쥴러등록)


* 업데이트 되는 데이터양은 많지는 않습니다.

----------------------------------------------------------------------------------------------------

테이블이 업데이트 수행중 내부적으로 락이 걸리는걸로 알고 있습니다.

물론 트랜잭션 진행중(아직 커밋되지 않은 상태)일때도 교착상태등등이 발생하여 조회중(SELECT) 지연시간이 발생할수 있다고 생각합니다.


문제는 20분단위 실행되는 수행문(쿼리문)에서 with nolock 힌트를 주고 있습니다. (다른분이 설계하고 프로그램 한 내용입니다만...) 

제 생각에는 위 요약내용이 1번수행 -> 2번수행 이런식으로 시간차를 두고 순차적으로 실행된다면 문제가 없을텐데

리얼타임으로 처리가 되다보니 업데이트 처리되는 양이 적다고 하더라도 1번 수행중 2번의 job스켈쥴러가 20분마다 수행될때

1, 2번이 아주 간혹 겹치다보니 업데이트가 정상적으로 발생하지 않아서 데이터가 틀리지 않나 생각해봅니다.


별거 아닌데 글로 풀어 설명할려니 어렵네요..ㅠ...어렵게 설명드린점 이해하시고 위 상황은

아무리 생각해도 이부분 때문일거라는 생각이드네요.. 리얼타임이다 보니 어떻게 테스트할수 있는게 거의 어려운 상황입니다.


제 판단이 맞다면 조회문,업데이트문(selelct, update)시 nolock 힌트를 빼게 된다면 데이터양이 적더라도 락발생이나 교착상태등의

증상으로 인한 성능저하에 영향이 어느정도 일어날까요?


혹시 제가 판단한게 아닌 다른문제 인지도 여쭤보고 싶습니다.

고수님들 의견좀 듣고 싶습니다.


No. Subject Author Date Views
Notice SQL강좌: 챗GPT와 함께 배우는 SQL Server 무료 강좌 목차와 소개 (2023년 9월 업데이트) 코난(김대우) 2023.08.18 19927
Notice Python 무료 강좌 - 기초, 중급, 머신러닝(2023년 6월 업데이트) 코난(김대우) 2021.01.01 12111
8538 프로그램을 이용해서 쿼리를 돌리고 종료하면... 랜덤의세계 2015.02.11 2328
8537 컬럼많은 테이블 Group by rollup 질문입니다. [2] 이시우_301202 2015.02.11 4294
8536 원하는 갯수.. [2] 마힐링 2015.02.11 2718
8535 job의 일정 설정 관련 문의 드립니다. [3] 나는짱이야 2015.02.10 2658
8534 nvarcha -> varchar로 변환하고자 합니다. [1] Molly75 2015.02.10 2466
8533 다른이름으로 mdf,ldf 파일 불러오기(연결) 방법을 알려 주세요. [1] 땅훈 2015.02.09 3169
8532 다른이름으로 mdf, ldf연결하기 땅훈 2015.02.09 2154
8531 트리거 사용 시 복수의 row 처리 방법 [2] HHunny 2015.02.09 3125
8530 한개의 Table의 내용을 2개의 그룹으로 표현하고 싶은데... [3] 냥냥이맘 2015.02.08 3125
» 점검 부탁드립니다. [1] 예진예랑 2015.02.07 2984
8528 SQL JOB 관련해서 질문드립니다. [1] 나는짱이야 2015.02.07 2706
8527 같은 형식의 테이블 합치는 것에 질문인데요 [2] 짬자면굿 2015.02.06 2589
8526 여러 컬럼 중에서 하나라도 값이 있는 경우를 골라내고 싶을 때 [4] 더따뜻한 2015.02.05 4732
8525 엑셀 암호가 걸려있는 상태에서 SELECT 할 수 있는 방법이 있습니까? [2] 양아치베이비 2015.02.05 3381
8524 행을 두개의 열로 바꾸는것?? [4] 클리티에 2015.02.05 3989
8523 접속 오류 - 연결 문자열이 잘못되었습니다 [1] 생초보 2015.02.04 5450
8522 Z governance라는 라이선스에 대한 정보를 얻을 수 있을까요? 운치 2015.02.04 2300
8521 두개의 테이블을 JOIN할 때 질문입니다. [2] 사이드사이드 2015.02.03 3004
8520 Telnet 연결은 되는데 UDL 파일 만들어서 하려고 하면 연결이 안되는 이유 망토가좋아 2015.02.03 3066
8519 누적합계 쿼리 질문입니다. [6] 깨비꼬비 2015.02.03 11219





XE Login