Druid는 실시간 데이터 분석을 위한 오픈소스 분산 데이터 저장 기술로, 고성능, 짧은 지연 시간, 확장성의 특징을 가지고 있습니다. Druid의 성능과 신뢰성을 더욱 향상시키기 위해 Druid 개발팀은 캐싱 기술을 개발했습니다. 이 기사에서는 Druid 캐싱과 관련된 지식을 주로 소개합니다.
1. Druid 캐시 개요
Druid 캐시는 두 가지 유형으로 나누어집니다. 하나는 Broker의 결과 캐시이고 다른 하나는 Historical 노드의 데이터 캐시입니다. 캐싱의 역할은 주로 Druid가 데이터를 쿼리하는 데 걸리는 시간을 줄이고 쿼리 부하를 줄이는 것입니다.
브로커의 결과 캐시는 쿼리 결과의 캐시입니다. 결과가 캐시되면 후속 쿼리를 캐시에서 직접 얻을 수 있습니다. 결과 캐시는 브로커의 로컬 디스크에 저장되며 쿼리 결과 수명 주기는 구성 가능하며 기본적으로 5분입니다. 쿼리 캐싱은 일반적으로 높은 쿼리 응답 속도가 필요한 시나리오에서 사용됩니다.
기록 노드의 데이터 캐시는 데이터 블록의 캐시입니다. Historical 노드는 데이터 블록을 저장하는 역할을 담당합니다. Historical 노드가 쿼리 요청을 받았을 때 쿼리된 데이터 블록이 이미 로컬 캐시에 있는 경우 Historical 노드는 캐시에서 직접 데이터 블록을 읽고 결과를 반환합니다. 데이터 블록이 캐시에 없으면 기록 노드는 클러스터 또는 데이터 원본의 다른 노드에서 데이터 블록을 가져와 캐시해야 합니다. 데이터 캐싱은 Druid의 가장 중요한 기능 중 하나이며 다양한 시나리오에서 쿼리 성능과 응답 속도를 크게 향상시킬 수 있습니다.
2. Druid 캐시 사용 방법
Druid에서 캐시를 사용할 때는 다음 사항에 주의해야 합니다.
Druid는 기본적으로 캐싱을 활성화하지 않으며 명시적으로 지정해야 합니다. 쿼리할 때 캐시를 사용합니다. 쿼리 시 해당 매개변수를 설정하여 결과 캐싱 또는 데이터 블록 캐싱을 활성화할 수 있습니다. 쿼리 매개변수는 다음과 같습니다.
(1) useResultCache: 결과 캐싱을 활성화하려면 true로 설정하고, 기본값은 false입니다.
(2) useCache: 데이터 블록 캐싱을 활성화하려면 true로 설정하고, 기본값은 false입니다.
Druid의 캐시는 구성 가능합니다. 사용자는 실제 필요에 따라 캐시 크기, 수명 주기 및 기타 매개변수를 설정할 수 있습니다. 캐시 구성의 매개변수는 다음과 같습니다.
(1) QueryCacheSize: 결과 캐시의 최대 크기, 기본값은 500MB입니다.
(2) 세그먼트QueryCacheSize: 데이터 블록 캐시의 최대 크기, 기본값은 0;
(3) resultCacheMaxSizeBytes: 단일 쿼리 결과 캐시의 최대 크기, 기본값은 10485760바이트(10MB)입니다.
(4) resultCacheExpire: 쿼리 결과 캐시의 수명 주기, 기본값은 5분입니다.
3. 캐시 최적화
Druid 캐시 최적화에는 주로 다음 사항이 포함됩니다.
캐시가 최대 용량에 도달하거나 특정 조건을 충족하면 캐시의 일부를 지워야 합니다. 기본적으로 Druid 캐시는 더 많은 공간을 확보하기 위해 일부 만료된 캐시를 지웁니다. 또한 사용자는 자신의 청산 전략을 정의하고 해당 인터페이스를 구현할 수 있습니다.
캐시 크기 설정은 캐시의 저장 용량과 효율성에 직접적인 영향을 미칩니다. 캐시 크기를 너무 작게 설정하면 캐시가 충분한 데이터 블록이나 쿼리 결과를 저장할 수 없으므로 Druid 쿼리 성능에 영향을 미치며, 캐시 크기를 너무 크게 설정하면 너무 많은 메모리 리소스가 차지하게 됩니다. 쿼리 성능이 저하됩니다. 따라서 최적의 성능을 얻으려면 실제 시나리오에 따라 조정해야 합니다.
캐시 수명주기를 너무 길게 설정하면 캐시가 차지하는 메모리 리소스가 오랫동안 해제되지 않아 Druid 쿼리 성능에도 영향을 미칩니다. 간단히 말해서 캐시 적중률이 감소하고 이는 Druid 쿼리 성능에도 영향을 미칩니다. 따라서 최적의 성능을 달성하려면 실제 시나리오에 따라 캐시 수명주기를 조정해야 합니다.
요약:
Druid 캐싱은 Druid 쿼리 성능을 최적화하는 중요한 방법입니다. 결과 캐싱과 데이터 블록 캐싱은 각각 서로 다른 장단점이 있으며, 사용자는 특정 시나리오에 따라 적절한 캐싱 방법을 선택해야 합니다. Druid 캐시를 사용할 때 캐시 활성화 및 구성에 주의를 기울여야 하며 실제 시나리오에 따라 조정하고 최적화해야 합니다.
위 내용은 Druid 캐싱 기술에 대해 알아보기의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!