주요 컨텐츠로 이동

최근 열린 올해의 Data and AI Summit에서 발표된 바와 같이, Databricks AI/BIAI/BI Genie를 활용한 저코드(low-code) AI/BI 대시보드와 코드 없는 대화형 분석 기능을 통해 조직 내 비즈니스 인텔리전스와 분석을 민주화합니다. 이번 블로그에서는 AI/BI 대시보드의 성능과 상호작용성을 향상시키는 여러 새로운 기능들을 소개하고자 합니다.

요즘 비즈니스 인텔리전스 대시보드는 매우 상호작용적(클릭 가능한)인 것이 기본입니다. 이러한 대시보드는 사용자들이 데이터를 동적으로 탐색하고, 클릭할 때마다 통찰을 맞춤화할 수 있도록 해주기 때문에 필수적입니다. 이를 통해 사용자는 데이터에 대한 후속 질문을 던지며 훨씬 더 빠르게 정보에 기반한 결정을 내릴 수 있습니다. 이는 탐색과 문제 해결에 제한이 있는 정적 대시보드와는 대조적입니다.

이번 블로그에서 다룰 주요 개선 사항은 다음과 같습니다:

  • 교차 필터링(Cross-Filtering): 시각화에서 흥미로운 데이터 포인트를 클릭하여 대시보드를 필터링하고, 다른 핵심 지표와 시각화에 미치는 영향을 확인할 수 있습니다. 이를 통해 새로운 통찰을 제공하는 관계와 상관관계를 이해하며 데이터를 탐색할 수 있습니다.
  • 정적 위젯 매개변수(Static Widget Parameters): 데이터의 다양한 측면을 강조하는 여러 필터링된 시각화를 생성할 수 있습니다. 예를 들어, 올해의 판매와 전년도의 판매에 초점을 맞춘 두 개의 차트를 만들 수 있습니다. 정적 위젯 매개변수를 사용하면, 각 시각화를 위해 맞춤형 데이터 세트를 만들 필요 없이 하나의 매개변수화된 데이터 세트로부터 시각화를 만들 수 있습니다.
  • 필터 기본값 설정(Filter Default Values): 대시보드가 처음 로드될 때 특정 데이터나 맥락에 사용자들이 집중할 수 있도록 기본 필터 값을 설정할 수 있습니다.
  • 성능 향상: 누구도 대시보드가 잠기거나, 열 때마다 또는 흥미로운 데이터 포인트를 클릭할 때마다 "잠시 기다려 주세요"라는 메시지를 보고 싶어하지 않습니다. 이를 개선하기 위해 여러 성능 향상을 추가하여, 사용자가 추가 SQL 쿼리를 실행하지 않고도 데이터를 신속하게 상호작용하며 후속 질문을 던질 수 있도록 했습니다.
  • 쿼리 기반 매개변수(Query-Based Parameters): 대시보드 작성자가 필드와 매개변수 필터를 활용하여 더욱 표현력 있는 경험을 만들 수 있어야 합니다. 매개변수와 필드를 하나의 필터로 결합할 수 있게 함으로써, 쿼리 결과로 동적으로 매개변수 드롭다운을 채우는 등의 새로운 기능을 사용할 수 있게 했습니다.

교차 필터링 (Cross-Filtering)

대시보드를 탐색할 때, 특정 시각화에서 눈에 띄는 데이터 포인트가 있어 추가 조사가 필요할 수 있습니다. 이미 몇 가지 필터가 설정되어 있을 수 있지만, 모든 사용자의 요구를 예측하기는 어렵습니다.

교차 필터링을 사용하면 이제 모든 차트를 데이터 필터링에 활용할 수 있습니다. 시각화를 클릭하기만 하면 대시보드가 필터링되어 데이터를 더 깊이 탐색할 수 있습니다. 교차 필터링은 동일한 데이터 세트를 공유하는 모든 시각화에 자동으로 활성화되므로, 막대 차트의 막대와 같은 시각화의 한 부분을 클릭하면 대시보드 내 모든 관련 시각화에서 데이터가 필터링됩니다.

Cross-Filtering

데이터에서 시각적으로 두드러지는 항목, 예를 들어 히트맵의 독특한 마크를 클릭하여 이상값에 집중하고, 데이터를 세밀하게 분석할 수 있습니다.

Visually Distinct Marks in a Heatmap

계층적 데이터를 탐색하려면 집계된 시각화를 통해 드릴다운 방식으로 데이터를 세부적으로 분석할 수 있습니다. 예를 들어, 연도별 데이터를 클릭하면 다른 차트가 해당 연도의 데이터로 제한됩니다. 월별 또는 주별 차트의 막대를 클릭하여 계속해서 더 깊이 탐색할 수도 있습니다.

현재 교차 필터링은 막대 차트, 히트맵, 원형 차트, 산점도에서 사용 가능하며, 기존의 필드 및 매개변수 필터를 보완합니다. 향후 히스토그램, 선형 차트, 영역 차트, 콤보 차트, 다중 선택 기능을 포함한 추가 시각화에 대한 지원도 제공될 예정입니다.

정적 위젯 매개변수 (Static Widget Parameters)

대시보드를 구축할 때 데이터 세트가 적을수록 작업이 쉬워집니다. 특정 시각화를 위해 필터나 집계를 추가하려고 데이터 세트를 복제하는 것은 불필요한 복잡함과 번거로움을 초래합니다.

정적 위젯 매개변수는 각 시각화에 맞는 필터를 개별적으로 맞춤 설정할 수 있게 하여, 별도의 필터링된 데이터 세트를 생성하지 않고도 이 과정을 단순화합니다. 이 기능은 시각화별 집계와 범위를 정의할 수 있는 기존 기능을 보완합니다.

예를 들어, 단일 데이터 세트를 사용해 다양한 지역의 온도 지표를 강조하려면 조건을 추가하여 데이터를 확장할 수 있습니다.

 /*
This filter allows for the display of grand totals when the viewer selects 'All'.
- If a specific location is selected, the filter matches records for that location.
- If 'All' is selected, the filter condition always returns true, including all locations in the results.
Read more details about this pattern here
*/
WHERE location = :location OR :location = 'All'

다음으로, 새로운 시각화마다 다른 정적 매개변수 값을 설정하기만 하면 됩니다. 아래 예시에서는 세 개의 차트를 볼 수 있습니다: 하나는 모든 지역에 대한 차트, 다른 하나는 시애틀, 또 다른 하나는 뉴욕을 위한 차트입니다. 각 차트는 동일한 데이터 세트를 사용하지만, 각기 다른 정적 값을 적용하여 데이터를 필터링합니다.

Static Widget Parameters

이 기능을 확장하여 위젯별 필터링을 필드 기반으로 지원하는 작업을 진행 중입니다. 예를 들어, 데이터 세트를 매개변수화하지 않고도 각 차트를 위치 필드로 필터링할 수 있게 될 것입니다.

기본 값

대시보드 작성자는 특정 데이터 슬라이스, 예를 들어 특정 날짜 범위나 지역에 대한 정보를 제공하고 싶을 수 있습니다.

기본값 기능을 사용하면 대시보드가 처음 로드될 때 또는 선택 항목이 초기화될 때 적용될 특정 필터 값을 설정할 수 있습니다. 이를 통해 사용자가 처음부터 핵심 데이터 포인트에 집중할 수 있도록 보장할 수 있습니다. 기본값 기능은 현재 뷰의 URL을 공유하여 대시보드 필터 선택 사항을 유지할 수 있는 기존 기능을 보완합니다.

Default Values

예를 들어, 눈이 내리는 날은 극단적인 온도와 높은 강수량으로 인해 흥미롭습니다. 기본 날씨 필터를 ‘눈’으로 설정하면 새로운 대시보드 사용자가 이 날씨 유형을 먼저 탐색하도록 유도할 수 있습니다. 다른 날씨 트렌드를 검토한 후, 필터를 재설정하여 눈 내리는 날에 대한 심층 분석을 계속할 수 있습니다.

향상된 성능

인터랙티브 대시보드가 진정으로 유용하려면 빠른 속도가 필수적입니다. 각 필터 적용 시 쿼리 실행을 기다리는 것은 분석 흐름을 방해할 수 있습니다.

AI/BI 대시보드는 쿼리 캐싱과 깊은 플랫폼 통합과 같은 기술을 통해 대량의 데이터에서도 높은 성능을 유지하도록 최적화되어 있습니다. 쿼리 캐싱은 쿼리 결과를 자동으로 24시간 동안 저장하여 이전에 실행된 쿼리를 활용해 빠른 성능을 보장합니다. 또한, 스케줄링에 따라 캐시를 사전에 채울 수 있습니다.

빠른 초기 로드 외에도, AI/BI 대시보드는 작은 데이터셋에 대해 필터를 브라우저에서 평가하여 거의 즉각적인 상호작용을 제공합니다. 이렇게 하면 매번 쿼리를 다시 실행할 필요가 없습니다.

최근에는 클라이언트 측 필터 평가 한도를 10만 행으로 늘렸습니다. 이는 이 한도 내의 데이터셋에 대해 전체 데이터셋을 한 번 쿼리하고, 이후의 필터링은 클라이언트 측에서 처리하여 추가적인 서버 측 쿼리가 필요 없음을 의미합니다. 대규모 테이블의 경우, materialized view를 활용한 사전 집계와 같은 기술을 통해 더 작고 빠르게 필터링할 수 있는 데이터셋을 생성할 수 있습니다.

일반적으로 필드를 기반으로 필터링하는 것을 권장합니다. 필드는 서버 측 쿼리를 필요로 하지 않기 때문입니다. 매개변수는 필드를 기반으로 필터링할 수 없는 경우, 예를 들어 서브쿼리에서 필터링하거나 복잡한 집계를 정의하는 데이터셋의 경우에 가장 적합합니다.

우리는 클라이언트 측 필터 한도를 더 증가시키는 등의 추가 최적화를 계속해서 탐색하고 있습니다. 시각화 수준의 계산(visualization-level calculations)과 같은 향후 기능을 통해 필드 기반 필터링을 통해 완전히 달성할 수 있는 사용 사례가 더욱 늘어날 것입니다.

쿼리 기반 매개변수

매개변수는 데이터 세트의 SQL 어디에서나 도입할 수 있어 필터를 정의할 때 최대의 유연성을 제공하는 강력한 도구입니다. 매개변수는 SQL에서 리터럴을 대체하는 자리표시자이지만, 드롭다운 메뉴와 다른 필터에 값을 설정할 수 있도록 필드처럼 동작해야 합니다.

매개변수와 필드를 혼합할 수 있게 함으로써, 다른 데이터 세트에서 값을 가져와 매개변수 필터를 채울 수 있는 기능을 추가했습니다. 이 쿼리 기반 매개변수 값 접근 방식은 고급 분석 기능을 열어주며, 날짜의 세분화를 동적으로 변경하는 등 새로운 가능성을 제공합니다.

예를 들어, DATE_TRUNC 함수에 매개변수를 설정하여 날짜 세분화를 통한 드릴다운 기능을 활성화할 수 있습니다. 이렇게 생성된 데이터 세트와 지표는 집계되며, 추가적인 날씨 필터를 적용하려면 쿼리도 매개변수화해야 합니다.

SELECT
 DATE_TRUNC(:date_granularity, date) as date,
 avg(wind) as average_wind_speed,
 sum(precipitation) as total_precipitation
FROM
 weather
WHERE
 :weather = 'All' or weather = :weather
GROUP BY ALL

대시보드 사용자들은 필터 드롭다운에서 올바른 값을 쉽게 선택할 수 있어야 합니다. 예를 들어, 날짜 잘라내기(Truncation)에 대해 "YEAR"가 맞는지 "YEARLY"가 맞는지 추측할 필요가 없어야 합니다. 드롭다운을 정확하게 채우기 위해, 다음 두 가지 데이터 세트를 생성하세요:

--Dataset 1: Generate a static list of valid date granularities
SELECT * FROM VALUES ('day'), ('week'), ('month'), ('year') AS t(date_granularity)
--Dataset 2: Choose the distinct weather categories from the underlying table
SELECT DISTINCT weather FROM weather UNION ALL SELECT DISTINCT 'All' AS Weather

이 데이터셋의 필드를 참고하여 날짜 범위와 날씨 조건 필터를 수정해 드롭다운 메뉴를 채우고, 날짜별로 세부적으로 분석을 시작하세요.

Query-Based Parameters

필드와 매개변수를 하나의 위젯에 결합하면, 해당 위젯을 통해 매개변수나 필드 필터를 사용하는 여러 데이터셋을 하나의 필터로 제어할 수 있습니다.

우리는 곧 출시될 날짜 범위 매개변수와 다중 값 매개변수 같은 기능으로 필드와 매개변수 필터링에 더 많은 유연성을 제공할 예정입니다.

AI/BI 대시보드에 대해 더 자세히 알아보기

보시다시피, Databricks는 AI/BI 대시보드에 큰 투자를 하고 있으며, 그중에서도 인터랙티브 기능에 중점을 두고 있습니다. 이러한 새로운 기능을 탐색하여 여러분의 대시보드를 어떻게 향상시킬 수 있는지 확인해 보시길 권장합니다. 매개변수필터에 대한 심층 설명을 포함한 Databricks의 AI/BI 대시보드 관련 문서를 확인해 보세요.

여러분의 피드백은 저희가 AI/BI 대시보드를 지속적으로 개선하고 확장하는 데 매우 중요합니다. 여러분의 의견과 제안을 기대하겠습니다!

 

(번역: Youngkyong Ko)  Original post

Databricks 무료로 시작하기

관련 포스트

모든 플랫폼 블로그 포스트 보기