테이블 검색 기능의 예상 작업 시간 문의

안녕하세요.

'추천인 시스템’을 개발 중에 있습니다.

뒤끝 게임 정보 기능을 이용하여 추천인의 ID를 '추천인 테이블’에 모두 저장해두고,

각 사용자가 로그인 시 '추천인 테이블’에 저장된 '자신의 ID’를 검색하여 총 몇 명으로부터 추천을 받았는지 확인 후 보상을 지급하는 시스템입니다.

이 시스템 로직에 따르면 '특정 테이블에서 자신의 ID를 검색’하는 기능이 모든 유저에 의해 접속 시 마다 발생하게 됩니다.

이 경우, 추천인 테이블이 지나치게 많이 누적될 경우(예를 들어, 수십만 이상의 행 수를 가지게 될 경우) 게임에 불편을 초래할만한 지연시간이 발생할 수 있겠습니까?

저희가 생각하는 게임에 불편을 초래할만한 지연시간은 최소 약 2~3초 이상의 지연입니다.

안녕하세요, 개발자님.
문의하신 내용은 확인 후 안내드리도록 하겠습니다.

말씀하신 로직은 데이터가 많아질수록 검색 시간이 오래걸리고, DB요금도 검색 과정에서 크게 증가하기에 추천하지 않습니다.
다음과 같은 방법으로 추천인 시스템을 구현하시는 것을 추천드립니다.

  1. 테이블은 퍼블릭 테이블로 구성

  2. 추천을 받는 경우 특정 컬럼 내 추천을 한 유저들의 아이디를 등록

    • A가 B를 추천할때 B의 테이블에 A 아이디를 등록

    • 만약 자신이 추천한 유저 정보도 확인할 수 있도록 하려는 경우 추가 컬럼을 구성하여 A테이블에도 B 아이디를 등록

    • ex) A가 B를 추천할때 B의 recommandList 를 조외한 후 A아이디를 추가하여 등록, A의 recommandme 컬럼에 B 아이디를 추가하여 등록 (기존 등록된 아이디에 영향이 가지 않도록 조회 후 추가하는 형태로 구성해주셔야합니다.)

  3. 유저들은 자신의 추천인 테이블을 조회하여, 추천한/추천받은 유저 아이디 및 수를 확인

좋아요 1