get_point_sum 포인트 내역 합계 sum을 쓰는이유가 무엇일까요?

get_point_sum 포인트 내역 합계 sum을 쓰는이유가 무엇일까요?

QA

get_point_sum 포인트 내역 합계 sum을 쓰는이유가 무엇일까요?

본문

안녕하세요?

 

youngcart5.4.0\lib\common.lib.php 문서의 1140라인에있는

 

get_point_sum 함수 문의드립니다.

 

// 포인트합
$sql = " select sum(po_point) as sum_po_point
            from {$g5['point_table']}
            where mb_id = '$mb_id' ";
$row = sql_fetch($sql);

return $row['sum_po_point'];

 

발췌했는데요.

 

만약 많은양의 내역이 테이블에 등록되있다면.. 집계하는데 부하가 걸리지않을까요?

 

po_mb_point 

는 항상 잔액을 표시하던데.. 

 

그냥 마지막행의 po_mb_point를 반환해도 문제는 없을것같은데..

 

다 이유가있으니 sum을 한거겠죠?

 

이게 제일궁금합니다.

 

po_mb_point의 잘못된 정보기입 가능성이 있어서 sum을 하는것일까요?

 

동접이 일정이상되게돼면 매번 여러유저의 sum을 하느라 디비도 힘들것같은데..

 

너무궁금하네요.. 궁금증을 풀어주시면 감사하겠습니다.

이 질문에 댓글 쓰기 :

답변 1

데이터의 정확성을 체크하기 위해 개인의 전체 포인트 내역을 다시 계산하는것이죠.

데이터 양이 많아진다면 부하를 받는 부분이 맞습니다.

하지만 개인의 조건이 붙어있고해서 개인당 몇십만건의 포인트 적립 또는 삭제 내역이 있는게 아니면 

그렇게 크게 신경 쓸부분은 아니나

유저가 많거나 좀더 성능 올리기위해서는 개선해야 하는 부분이 있습니다.

 

궁금증을 해결해주신점 감사드립니다.
죄송하지만 하나만 더 여쭤봐도 될까요?

제가 주문처리하는데 포인트처럼 예치금시스템을 도입하고있습니다.

저도 행마다 합산필드에 합산금액이 표시되긴하지만..  신뢰가 잘안가더라구요.


만약1년  4분기 기준으로 예치금내역을 정산한후 덤프처리후 내역을 삭제하는것도 괜찮은 방법일까요?

1년 내내 내역 전체를 훑어보기보단 , 더이상 안쓰는 내역은 정산을 완료한 예치금내역에 대해서 덤프해서 물리적으로 보관하고 정산된 내역을 삭제하는방법으로 하면 디비 부하율이 줄어들것같기도하고..

이렇게 하기가 쉽진않아보이긴하는데..

약관에 따라서 다를꺼같은데요. 언제꺼까지 기록하겠다.. 등등

그래서 큰사이트의 경우 주문내역이나 그런것들이 6개월 내로만 조회되거나 하는경우가 그런케이스가 아닐까 합니다.

은행도 최근거래내역이 몇개월만 가능하고 실제로는 데이터는 다 가지고 있지만 부하를 위해 몇개월 내로만 조회 되게끔 하고있죠

실 디비와 조회용 디비를 분리하고 관리하고

답변을 작성하시기 전에 로그인 해주세요.
전체 123,594 | RSS
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT