GetMyData 관련 문의입니다

고객님의 문의에 답변하는 직원은 고객 여러분의 가족 중 한 사람일 수 있습니다.
고객의 언어폭력(비하, 조롱, 욕설, 협박, 성희롱 등)으로부터 직원을 보호하기 위해
관련 법에 따라 수사기관에 필요한 조치를 요구할 수 있으며, 형법에 의해 처벌 대상이 될 수 있습니다.

커뮤니티 이용 정책에 위배되는 게시물을 작성할 경우, 별도 안내 없이 게시물 삭제 또는 커뮤니티 이용이 제한될 수 있습니다.

문의 응대 : 평일 오전 10시 ~ 오후 6시
문의를 남기실 경우 다음 항목을 작성해 주세요.
정보가 부족하거나 응대시간 외 문의하는 경우 확인 및 답변이 지연될 수 있습니다.

  • 뒤끝 SDK 버전 :
  • 프로젝트명 :
  • 스테이터스 코드 :
  • 에러 코드 :
  • 에러 메시지 :

클라 or 뒤끝펑션에서
Backend.GameData.GetMyData(“tableName”, new Where());
이 방식으로 보통 내 정보를 받아오는데요, limit 파타미터에 1을 넣어주면 속도가 더 빨라지나요? 아니면 차이가 없나요?

그리고 내 정보를 받아올 때 new Where() 로 받아오는방식과 inDate 로 받아오는방식,
두 방식의 속도 차이가 있을까요?

안녕하세요 개발자님,
GetMyData 함수는 자신의 데이터를 조회하는 기능으로,
별도의 조건 없이 inDate를 통해 이용하는 것이 제일 빠르게 이용할 수 있는 방법입니다.

where절을 이용하는 경우는 owner_inDate를 이용하는 것이 아니라면 모든 조건에서 일치하는 정보를 찾는 과정으로 인해 데이터가 많을수록 더 긴 시간, 그리고 더 많은 처리량이 발생하게 됩니다.
또한 limit 값은 큰 영향을 주지 않지만 where절의 조건에 따라 영향이 크게 발생할 수도 있습니다.
where절보다는 inDate를 통한 조회를 권장드립니다.

뒤끝펑션에서 new Where() 로 구현되어있는 부분을 안내해주신 것 처럼 수정하려 하는데요,
inDate 방식으로 바꾸려면 클라이언트에서 파라미터로 항상 보내주도록 구현할 예정입니다.

근데 언급해주신 내용중에
“where절을 이용하는 경우는 owner_inDate를 이용하는 것이 아니라면” << 이부분 관련하여 질문인데요

where 절 owner_inDate 를 활용하면 inDate 방식과 속도나 처리량 면에서 차이가 있나요?
차이가 없으면 굳이 클라이언트에서 inDate 안보내고 뒤끝펑션코드에서 Backend.UserInDate로
where 에 owner_inDate 값으로 바로 적용할까 하는데요

두 방법에 어떤 차이가 있는지, 방향 제안좀 부탁드리겠습니다

owner_Indate 는 뒤끝내에서 공통적으로 사용되는 정보로 서버 전체의 검색 키 값으로 지정되어 있어 빠른 이용이 가능합니다.

이 외에 추가된 컬럼의 데이터들은 게임마다 다른 값들로 검색값으로 지정할 수 없기에
where절을 통한 검색 시, 비교 검색이 이루어짐에 따라 효율적이지 못합니다.

넵 답변 감사합니다
한번 확인만 부탁드리겠습니다

방법 1
Where w = new Where();
w.Add(“owner_inDate”, Backend.UserInDate);
Backend.GameData.GetMyData(“tableName”, w); // onwer 방식

방법 2
Backend.GameData.GetMyData(“tableName”, rowInDate); // rowInDate 방식

두 방식 모두 빠르게 접근 가능하니 둘중에 개발에 용이만 방법을 택해서 사용하면 될까요?

네, 맞습니다.
개발 편의성에 따라 원하시는 방법을 통해 이용해주시면 됩니다. :D