구조화된 데이터 유형은 대기 시간을 줄이는 데 도움이 된다
키-값 데이터 저장 구조를 사용하는 애플리케이션을 설계할 때 서버는 물론이고 개발자들에게 걸리는 작업 부하도 고려해야 한다. 고객의 주소를 참조하는 횟수가 고객 이름을 참조하는 횟수의 80%에 해당하는 애플리케이션을 개발한다고 해보자. 즉, 고객 이름과 주소를 빈번하게 조회하는데, 가끔은 고객 이름만 조회하는(가령 양식 상단에 고객 이름 항목이 있는 경우) 애플리케이션이 있다고 해보자.
보통은 한 번만 호출해서 고객 이름과 주소를 모두 가져오는 함수를 만드는 것이 좋다. 다음은 이름과 주소를 가져오는 함수의 예다.
define getCustNameAddr(p_id) v_fname = getCustAttr(p_id,'fname'); v_lname = getCustAttr(p_id,'lname'); v_addr = getCustAttr(p_id,'addr'); v_city = getCustAttr(p_id,'city'); v_state = getCustAttr(p_id,'state'); v_zip = getCustAttr(p_id,'zip'); v_fullName = v_fname + ' ' + v_lname; v_fullAddr = v_city + ' ' + v_state + ' ' + v_zip; return(makeList(v_fullName, v_fullAddr);
이 함수는 값 여섯 개를 조회해서 가변 문자열 두 개를 만들고 이름과 주소를 모두 담을 리스트를 만든 후 이 리스트를 반환한다. 만약 고객 이름과 주소가 자주 조회된다면 getCustAttr 함수를 여러 번 호출하는 것보다는 getCustNameAddr 함수를 한 번 호출하는 것이 낫다.
개발자들이 getCustNameAddr 함수를 빈번히 호출해야 하는 상황이라면 가능한 한 이 함수의 코드를 최적화하는 것이 도움이 될 것이다. getCustNameAddr 함수에서 최적화하기에 가장 좋은 부분은 getCustAddr 함수를 여러 번 호출하는 부분이다. getCustAddr 함수의 코드는 간단하므로 굳이 최적화할 필요는 없다.