더북(TheBook)

속도: 빠를수록 좋다

주요 데이터베이스 업체는 느린 질의를 식별해 주는 도구를 개발자나 데이터베이스 관리자에게 만들어 제공한다. 데이터베이스 튜닝 서적도 있다. 소프트웨어 공학자는 코드 수행에 걸리는 시간을 줄이려고 코드를 샅샅이 조사한다. 데이터가 처리되는 동안 기다리는 것을 좋아하는 사람은 없다.

키-값 데이터베이스는 빠른 속도로 유명하다. 간단한 연관 배열 데이터 구조와 성능을 최적화하는 설계 원칙 덕분에 데이터 집약적인 작업에서 높은 성능을 보여준다.

빠른 데이터베이스 작업을 유지하는 한 가지 방법은 메모리에서 데이터를 관리하는 것이다. 램RAM에서 데이터를 읽고 쓰는 것이 디스크에 쓰는 것보다 훨씬 빠르다. 물론 램은 영구 스토리지가 아니어서 데이터베이스 서버에 전원공급이 끊어지면 데이터가 소실된다. 키-값 데이터베이스는 램에서 쓰기 작업이 빠르고 디스크 기반의 영구적 스토리지라는 두 가지 장점이 있다.

프로그램이 키와 연관된 값을 변경할 때 키-값 데이터베이스는 램에 있는 정보를 갱신하고 갱신된 값이 저장되었다는 메시지를 프로그램에 전송할 수 있다. 이 프로그램은 메시지를 받고 난 뒤 이어서 다른 작업을 계속 수행한다. 이 프로그램이 다른 작업을 수행하는 동안 키-값 데이터베이스는 최근에 갱신된 값을 디스크에 저장한다. 애플리케이션이 값을 갱신하고 키-값 데이터베이스가 그 값을 디스크에 저장하는 사이 전력이 끊기거나 다른 고장이 발생하지 않으면 새로운 값은 성공적으로 디스크에 저장된다.

▲ 그림 3-5 쓰기 작업은 먼저 램에 값을 입력해 갱신한 후 이 값을 다시 디스크에 갱신하는 식으로 운영해 더 빨리 애플리케이션에 제어권을 반환할 수 있다

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