블로그

BI가 메모리 한계에 부딪힐 때: RAM 부족 시대의 성능 재고

건축 비교

RAM이 더 이상 저렴하거나 끝없이 제공되지 않을 때 Qlik Sense의 인메모리 모델은 어떻게됩니까? 우리는 Qlik의 자체 문서와 지능형 캐싱에 대한 특허를 사용하여 TURBOARD의 하이브리드 아키텍처와 비교합니다.

지난 10 년 동안 비즈니스 인텔리전스 플랫폼은 편안한 가정하에 구축되었습니다. 메모리는 계속해서 저렴하고 밀도가 높으며 문제를보다 쉽게 투척 할 수 있습니다. 그 추측은 조용히 깨지고 있습니다. AI 인프라 구축은 전 세계 DRAM 및 HBM 공급의 전례없는 점유율을 흡수하고 있으며 주요 메모리 제조업체는 2026 년까지 제약이 심화 될 것이라고 경고했습니다. 엔터프라이즈 BI 팀의 경우 실질적인 효과는 간단합니다. 분석 플랫폼이 의존하는 RAM은 점점 더 비싸고 논쟁의 여지가 있으며 주문형으로 확장하기가 어려워지고 있습니다.

이것은 중요한 질문을 바꿉니다.

전통적인 BI 성능 질문은 다음과 같습니다. 데이터 집합이 메모리에 맞을 때 대시보드가 얼마나 빠르나요? 그것은 대답이 거의 항상 "매우 빠르기"때문에 공급 업체가 좋아하는 질문입니다. 그러나 플랫폼이 생산을 유지할 것인지 여부를 결정하는 것은 더 이상 문제가 아닙니다. 이제 진짜 질문은: 데이터 볼륨이 증가하고 동시 사용자가 곱해지고 메모리가 단순히 더 많이 구입할 수 없는 리소스일 때 플랫폼이 어떻게 동작합니까?

이 질문은 오늘날 시장에서 두 가지 매우 다른 답을 가지고 있습니다. Qlik Sense는 성숙한 인메모리 학교를 나타냅니다. 모든 것을 RAM에로드하고, 보관하고, 연관 엔진이 근접성을 통해 속도를 제공하도록합니다. TURBOARD는 하이브리드 학교를 나타냅니다. 메모리를 가장 많은 혜택을 주는 워크로드의 가속 계층으로 취급하고 다른 모든 것을 작업을 위해 설계된 원주 스토리지 또는 라이브 소스로 라우팅합니다.

두 철학 모두 효과가 있다. 흥미로운 질문은 주변의 조건이 바뀌면서 어느 것이 더 잘 노화되는지입니다. 이 게시물은 데이터가 증가하고 사용자가 증가하고 RAM이 빡빡 해짐에 따라 각 아키텍처에 실제로 일어나는 일을 살펴 봅니다. Qlik의 자체 문서와 TURBOARD의 게시 된 아키텍처를 증거로 사용합니다.

두 개의 아키텍처, 간단히

Qlik Sense — 인 메모리

Qlik Sense는 QIX 연결 엔진을 중심으로 제작되었습니다. 애플리케이션이 로드되면 집계되지 않은 데이터 집합은 모든 값을 다른 모든 값과 연결하는 연관 구조와 함께 RAM에 유지됩니다.When an application loads, the unaggregated dataset is holded in RAM, along with the associative structures that links every value to every other value. 사용자 선택은 메모리 내 구조를 가로질러 응답하며 계산 결과는 RAM에 캐시되므로 후속 동일한 요청이 즉시 반환됩니다.

Qlik의 자체 QVD 형식은 로딩 레이어를 극적으로 가속화합니다. Qlik 문서는 QVD가 다른 소스의 읽기보다 10 ~ 100 배 빠르게 읽을 수 있다고보고하지만 런타임 모델은 여전히 작업 데이터 세트가 물리적 메모리에 거주해야합니다.

TURBOARD — 하이브리드

TURBOARD는 다른 길을 간다. 데이터는 네이티브 데이터베이스 드라이버를 사용하여 최적화된 라이브 연결을 통해 액세스하거나 MariaDB ComnalStore, ClickHouse 또는 Vertica와 같은 고성능 원주 저장소로 가져올 수 있습니다. 자주 사용하는 쿼리 결과는 메모리 내 데이터 구조 저장소인 Redis에 캐시됩니다.

캐시 트리거 메커니즘은 캐시된 결과가 여전히 유효한 시점과 소스를 다시 쿼리해야 할 때를 결정합니다. 메모리는 모든 분석 데이터의 기본 홈이 아닌 가장 가속을 생성하는 워크로드에 대해 의도적으로 사용됩니다.

TURBOARD의 하이브리드 아키텍처
TURBOARD의 하이브리드 아키텍처: 라이브 및 배치 연결, 원주 스토리지 및 지능형 메모리 내 레이어입니다.

위의 다이어그램은 TURBOARD의 레이어가 어떻게 함께 맞는지 보여줍니다. 나머지 게시물은 주변의 조건이 어려워짐에 따라 각 아키텍처가 수행하는 작업을 조사합니다.

공정한 시나리오 : 인메모리가 승리 할 때

분명히 말할 가치가 있습니다 : 데이터 세트가 RAM에 편안하게 맞을 때, 동시성이 겸손 할 때, 그리고 응용 프로그램에 대한 환경 크기가 클 때 Qlik Sense는 진정으로 빠릅니다. 연관 엔진은 성숙한 엔지니어링이며 필터를 클릭하고 집계가 밀리 초 단위로 다시 계산되는 것을 보는 사용자 경험은 그 날에 탁월합니다. 부서별 배포, 집중된 분석 애플리케이션 및 데이터 모델이 안정적이고 잘 이해되는 워크로드의 경우 인메모리 접근 방식이 진정한 강점입니다.

이것은 대부분의 제품 데모가 주변에 구축되는 시나리오입니다. 또한 데이터가 성장한 후 사용자 기반이 확장되고 동일한 서버에 3 개의 응용 프로그램이 더 배포 된 후 플랫폼이 생산에 1 년 동안 어떻게 행동 할 것인지에 대해 최소한으로 알려주는 시나리오이기도합니다.

스케일링 시나리오: 아키텍처가 분기하는 위치

Qlik의 자체 지원 문서는 메모리 모델을 자세히 설명합니다. 엔진은 다음과 같이 알려진 두 가지 구성 가능한 임계값에 대해 작동합니다. 작업 세트 낮음 및 작업 설정 높음, 기본값 70% 및 물리적 RAM의 90% 각각. 낮은 임계값 아래에서 엔진은 사용하지 않는 메모리가 낭비되는 메모리라는 원리로 캐시된 계산 결과를 공격적으로 유지합니다. 낮은 임계값이 교차되면 엔진은 새로운 결과를 얻기 위해 캐시된 결과를 퇴거하기 시작하여 연령, 크기 및 원래 계산 시간에 따라 퇴거를 우선시합니다. 높은 임계값이 교차되면 캐싱이 효과적으로 중지되고 운영 체제의 페이지 파일이 엔진을 계속 유지하도록 할 수 있습니다. Qlik의 문서에 따르면 페이지 파일 사용은 성능을 크게 저하시킬 수 있습니다.

그 문턱 사이에서 일어나는 일의 역학은 문턱 자체보다 더 중요합니다. 퇴거되는 모든 캐시된 결과는 사용자가 다음에 요청할 때 다시 계산해야 하는 계산입니다. 퇴거가 가속화됨에 따라 계산 부하가 메모리에서 CPU로 이동합니다. 많은 사용자가 더 이상 답변을 캐시하지 않은 계산을 동시에 트리거하는 높은 동시성 환경에서 CPU는 새로운 병목 현상이 됩니다. 메모리 압력과 달리 CPU 압력은 사용자 가시 대기 시간으로 직접 나타납니다. 대시보드는 매달려 있고, 적용하는 데 몇 초가 걸리는 필터, 시간 아웃 세션입니다.

건축의 도전은이 중 어느 것도 버그가 아니라는 것입니다. 그것은 메모리가 분석이 살아야하는 곳이라는 가정을 중심으로 설계된 엔진의 문서화되고 의도 된 행동입니다. 그 가정이 유지되면 디자인은 우아합니다. 메모리가 제한된 리소스가되면 디자인은 갈 곳이 없습니다.

TURBOARD의 하이브리드 접근 방식은 부하를 다르게 분산시킵니다. 집계되지 않은 데이터 집합은 RAM을 차지할 필요가 없습니다. 원주 저장소는 디스크에서 분석 쿼리에 효율적으로 응답하도록 설계되었습니다. — 쿼리가 터치하는 열만 읽고, 무거운 압축을 악용하고, XNUMX년 전에 메모리 내 처리가 필요한 속도로 집계를 제공합니다. 증분 로딩은 반복적 인 전체 재 장전을 강요하지 않고 원주 저장소를 신선하게 유지합니다. 즉, 사용자는 RAM에 전체 데이터 세트를 보유하는 메모리 비용없이 거의 라이브 데이터를 경험합니다. 그런 다음 Redis 캐시는 가속에서 가장 많은 이점을 얻는 쿼리를 가속화합니다. 실제 엔터프라이즈 배포에서는 총 쿼리 볼륨의 작은 하위 집합입니다. 다음 섹션은 그 이유를 설명합니다.

라이브 데이터: Direct Discovery 문제

사용 가능한 메모리를 초과하는 워크로드에 대한 Qlik의 대답은 Direct Discovery로, 치수 필드가 메모리에 로드되는 동시에 측정 필드가 소스 데이터베이스에 남아 있고 주문형으로 쿼리되는 모드입니다. 설계 의도는 합리적이며 문서화 된 한계는 중요합니다.

Direct Discovery의 문서화 된 제한 사항 (Qlik 자신의 도움말 자료 당) :

  • 단일 공유 데이터베이스 연결 응용 프로그램의 모든 사용자에 대해 — 높은 동시성에서 소스 데이터베이스를 범람시킬 수 있습니다.
  • 생성된 SQL은 최적화되지 않았습니다. 인메모리 테이블과 직접 검색 테이블 사이의 조인은 데이터베이스 쿼리 버퍼를 변형하는 매우 큰 IN 절을 생성할 수 있습니다.
  • 몇 가지 핵심 분석 기능이 지원되지 않으며, Set Analysis, Insight Advisor 및 Dynamic Views를 포함합니다.
  • 추가 개발은 계획되지 않습니다. 이러한 한계를 해결하기 위해, Qlik 자신의 진술에 따라.

TURBOARD의 경우 라이브 연결은 메모리 압력의 해결 방법이 아닙니다. 그것은 건축의 일류 부분입니다. 일반 ODBC 연결이 아닌 네이티브 데이터베이스 드라이버는 Apache Kudu와 같은 빅 데이터 플랫폼을 포함하여 소스 시스템에 대한 직접 고성능 액세스를 제공합니다. 캐시 트리거 메커니즘은 모든 사용자 클릭에서 소스 데이터베이스가 충돌하는 것을 방지합니다. TURBOARD는 지정된 트리거 필드(예: 마지막 업데이트된 타임 스탬프)를 시청하고 기본 데이터가 변경되지 않은 경우 Redis의 캐시된 결과를 제공하여 트리거가 새로운 데이터를 사용할 수 있음을 나타내는 경우에만 소스를 쿼리합니다. 고급 분석 기능은 위젯이 캐시, 원주 저장소 또는 라이브 소스에서 읽는지 여부에 관계없이 완전히 사용할 수 있습니다. 단일 대시보드는 타협 없이 세 가지를 모두 혼합할 수 있습니다.

파레토 통찰력, 그리고 그것을 보호하는 특허

모든 엔터프라이즈 BI 배포에서 사용자 동작은 예측 가능한 패턴을 따릅니다. 대략 80 %의 사용자가 동일한 핵심 대시 보드로 반복적으로 돌아갑니다. — 임원 요약, 월간 성과 보고서, 지역 롤업. 나머지 20%는 동일한 형태로 다시 실행되지 않을 수 있는 임시 쿼리를 실행하는 전력 사용자입니다. 메모리 관리의 의미는 직접적입니다. 모든 캐시 된 결과가 똑같이 가치있는 것은 아니며,이를 동등한 것으로 취급하는 시스템은 가장 비싼 자원을 낭비하고 있습니다.

Qlik의 퇴거 모델은 행동 블라인드입니다. 캐시된 결과는 연령, 크기 및 원래 계산 시간에 따라 제거됩니다. 실제 사용자가 실제로 요청하는 빈도에 따라 제거되지 않습니다. 메모리가 채워지면 엔진은 매일 아침 전체 임원 팀이 점검하는 대시 보드를 최근에 캐시 된 일회성 쿼리와 구별 할 수 없습니다.

TURBOARD는 반대의 접근 방식을 취합니다. 보고서를 볼 때마다 Redis Sorted Set에서 인기 점수가 증가합니다. 이는 이러한 종류의 순위 액세스 패턴을 위해 설계된 데이터 구조입니다. 시스템은 보고서가 실제로 사용되는 연속 리더 보드를 유지하고 해당 리더 보드를 사용하여 메모리가 빡빡 할 때 캐시에 남아있는 것을 결정합니다. 가장 많이 요청되는 보고서는 Redis에서 보호되며,이 보고서는 레디스에 의존하는 대부분의 사용자에게 지연 시간이 0으로 돌아갑니다. 캐시를 놓친 전원 사용자 쿼리는 원주 저장소 또는 라이브 소스로 라우팅됩니다. 둘 다 고부가가치 캐시된 콘텐츠를 대체하지 않고 해당 쿼리에 빠르게 응답하도록 설계되었습니다.

부여된 특허

인공 지능 기반 사용자 습관에 적응하는 신속한 검색 결과 표시 시스템

이 메커니즘은 부여 된 특허의 주제입니다. 이 시스템은 2022년 E-Kalite(TURBOARD의 모회사)에 의해 제출되었으며 2025년에 부여되었습니다. 이 특허는 사용자 인터페이스에서 데이터 디스플레이를 가속화하고, 입력/출력 로딩 시간을 단축하고, 데이터 저장 및 데이터 전송 하드웨어에 대한 액세스 빈도를 줄이는 방법을 다룹니다. 즉, 사용 기반 채점, 지능형 캐시 새로 고침 및 트리거 기반 staleness 탐지의 조합으로 TURBOARD는 순전히 메모리 내 아키텍처를 페이지 파일 영역으로 밀어 넣을 메모리 예산에 따라 엔터프라이즈 워크로드를 제공할 수 있습니다.

전략적 요점은 간단합니다. 메모리가 풍부하면 동작 블라인드 캐싱이 효율성에 비용이 듭니다. 기억이 부족하면 성능이 저하됩니다.

나란히

질문 Qlik Sense 접근 방식 TURBOARD 접근
런타임에 데이터는 어디에 있습니까? RAM에서, 전체 원주 저장소 또는 라이브 소스에서; 결과는 Redis에서 선택적으로 캐시
메모리가 채워지면 어떻게 되나요? 연령/크기별 퇴거, 페이지 파일 Behavior-scored retention; overflow served from columnar 또는 live source
반복 사용은 어떻게 처리됩니까? 메모리 내 결과 캐시, 맹목적으로 퇴거 사용 점수에 의해 유지되는 Redis 캐시 (특허)
데이터 신선도는 어떻게 유지됩니까? 전체 또는 QVD-증류가 RAM으로 재장전됩니다. 증분 칼럼열 로드 + 캐시 트리거
라이브 쿼리는 어떻게 처리됩니까? 문서화 된 한도가있는 직접 발견 네이티브 드라이버, 전체 분석 유지
스케일링 철학 더 많은 메모리 제공 메모리를 선택적으로 사용하고 나머지를 라우팅합니다.

결론

Qlik Sense는 유능한 메모리 내 분석 플랫폼으로 남아 있으며, 제한된 데이터 세트, 예측 가능한 동시성, 관대 한 메모리 프로비저닝을 위해 설계된 조건에서 잘 수행됩니다. 이 게시물이 대답하려고 시도한 질문은 이러한 조건이 충족하기 어려워짐에 따라 어떤 일이 일어나는지입니다. 데이터 볼륨이 줄어들지 않습니다. 동시성 기대는 편안하지 않습니다. 그리고 메모리의 비용과 가용성은 오랫동안 처음으로 잘못된 방향으로 움직이고 있습니다.

TURBOARD의 아키텍처는 향후 10년 동안 BI 성능이 플랫폼에서 획득될 것이라는 내기입니다. 메모리를 풍부하게 사용하기보다는 지능적으로 사용하십시오. 하이브리드 데이터 액세스, 원주 스토리지, 네이티브 라이브 연결 및 특허받은 사용 점수 캐시를 통해 TURBOARD는 순전히 메모리 내 아키텍처가 생활하기 어려운 메모리 예산에 대한 엔터프라이즈 규모의 성능을 제공 할 수 있습니다.

증가하는 데이터, 동시성 상승 및 하드웨어 경제 강화의 충돌에 직면 한 조직의 경우 접근 방식의 차이는 더 이상 학술적이지 않습니다. 비즈니스와 함께 확장되는 플랫폼과 조달 예산으로 확장되는 플랫폼의 차이점입니다.

차이를 볼 준비가 되셨습니까?

Qlik Sense를 평가하거나 이미 실행 중이며이 게시물에 설명 된 메모리 압력을 느끼기 시작하면 TURBOARD의 하이브리드 아키텍처가 동일한 워크로드를 처리하는 방법을 보여주고 싶습니다.

우리 팀과 함께 연습을 예약하고 자신의 데이터로 플랫폼을 볼 수 있습니다. 압력 없음 - 우리는 오히려 당신이 당신의 특정한 필요를 위해 적당한 적합을 찾아내고 싶습니다.

당신은 또한 우리의 탐구 할 수 있습니다 전체 BI 비교 페이지는 우리가 더 많은 엔터프라이즈 시나리오에 걸쳐 쌓이는 방법을 확인합니다.


Titiana Shabsough / TURBOARD Marketing Specialist 2026/05/08

실제 비즈니스 질문 하나를 가져오세요. TURBOARD가 어떻게 답하는지 보여드립니다.

범용 샘플 데이터베이스가 아니라, 귀사의 보고서·정의·보안 컨텍스트 위에서 JAS를 시연합니다.

Are you curious?