더북(TheBook)

데이터베이스보다 메모리에서 데이터를 조회하는 것이 훨씬 빠르다. 맨 처음 데이터를 가져올 때는 디스크에서 직접 읽어와야 하지만 그 이후에는 메모리에서 읽어올 수 있다.

Tip 한 번에 고객 한 명만 조회하는 상대적으로 간단한 프로그램이라면 이 애플리케이션 프로그래머는 고객 이름과 주소를 저장하는 데 문자열 변수를 사용할 수 있다. 하지만 동시에 많은 고객을 검색하고 다른 엔터티도 참조해야 한다면 캐시를 사용하는 것이 훨씬 더 효율적이다.

메모리에 있는 캐시는 연관 배열이다. 관계형 데이터베이스에서 조회된 값은 저장된 각 값에 대한 키를 생성하여 캐시에 저장한다. 고객별 데이터에 고유 키를 생성하는 한 가지 방법은 데이터 항목의 명칭과 고유 식별자를 연결하는 것이다. 다음은 데이터베이스에서 읽어온 데이터를 메모리상의 캐시에 저장하는 예다.


customerCache['1982737:firstname'] = firstName
customerCache['1982737:lastname'] = lastName
customerCache['1982737:shippingAddress'] = shippingAddress
customerCache['1982737:shippingCity'] = shippingCity
customerCache['1982737:shippingState'] = shippingState
customerCache['1982737:shippingZip'] = shippingZip

customerID가 키의 일부이므로 프로그램에서 각 고객 데이터에 대해 별도의 변수를 생성하지 않아도 필요한 만큼 많은 고객 정보를 캐시에 저장할 수 있다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.