Direct Query을 사용하여 클라우드 데이터베이스에 직접 액세스하기 | Qlik Cloud 도움말
기본 콘텐츠로 건너뛰기 보완적인 콘텐츠로 건너뛰기

Direct Query을 사용하여 클라우드 데이터베이스에 직접 액세스하기

데이터를 메모리에 가져오거나 로드할 필요 없이 SQL 데이터베이스를 읽으려면 Direct Query을 사용합니다.

Direct Query은 사용자가 개별 요구 사항에 맞게 데이터에 액세스하는 방법에 대한 더 많은 옵션을 제공합니다. Direct Query을 통해 데이터에 액세스하면 사용자는 데이터를 기본 데이터 소스에 유지할 수 있습니다. 이는 인메모리 Qlik Cloud 응용 프로그램이 제공하는 유연성 대신 사용자가 데이터와 상호 작용하는 속도를 높여 줍니다.

일반적으로 가능하면 항상 데이터를 Qlik Cloud에 가져오는 것이 좋습니다. 인메모리 Qlik Cloud 응용 프로그램은 환경을 더 잘 사용자 지정하고 데이터를 최대한 활용할 수 있도록 해 줍니다. 그러나 데이터를 가져오는 것으로는 목표를 달성할 수 없는 상황이라면 Direct Query이 해결책이 될 수 있습니다. 간소화된 기능 덕분에 Direct Query 응용 프로그램은 새로운 사용자가 완벽하게 작동하고 빠른 인메모리 응용 프로그램을 만드는 첫 걸음을 내딛는 데 도움이 될 수도 있습니다.

데이터 모델 관리자를 사용하여 테이블 및 필드를 선택하고 이들 간의 관계를 정의하여 Direct Query 응용 프로그램을 만들 수 있습니다. 자세한 내용은 Direct Query 응용 프로그램 만들기을 참조하십시오.

로드 스크립트에서 사용자 지정 SQL을 사용하여 Direct Query 응용 프로그램의 데이터 모델을 정의할 수도 있습니다. 이를 통해 데이터 모델을 빌드하는 동안 변수 및 Qlik 표현식을 사용할 수 있습니다. 자세한 내용은 사용자 지정 SQL을 사용하여 Direct Query 응용 프로그램 만들기을 참조하십시오.

Direct Query 사용 사례 예

다음과 같은 경우에는 인메모리 응용 프로그램 대신 Direct Query을 사용하는 것을 고려할 수 있습니다.

Direct Query 사용 사례
사용 사례 목적 및 설명
대용량 데이터 소스 Direct Query은 행이 2,000만 개 이상인 응용 프로그램의 경우 초기화가 더 빠르고 리소스를 덜 소모합니다. 이는 응용 프로그램이 주로 모니터링 또는 상태 보고에 사용되고 선택이 거의 또는 전혀 수행되지 않는 경우에 매우 유용할 수 있습니다.
효율적인 인메모리 응용 프로그램 Direct Query은 영향을 받는 모든 테이블에 필터링을 적용하여 데이터 슬라이스를 Qlik Cloud 엔진으로 빠르고 쉽게 추출하는 기능을 제공합니다. 자세한 내용은 Direct Query 응용 프로그램 설정을 템플릿 응용 프로그램으로 내보내기을 참조하십시오.
라이트백용 Direct Query Qlik Automate 기반의 라이트백이 기본 데이터베이스 데이터를 수정하도록 설정된 경우, Direct Query은 수정된 데이터베이스 결과를 직접 표시할 수 있습니다. 인메모리 응용 프로그램에서 동일한 기능을 사용하려면 사용자가 수정된 테이블을 다시 가져와야 합니다.
새 데이터베이스 및 테이블 탐색 Direct Query을 사용하여 새롭거나 익숙하지 않은 데이터베이스 및 테이블을 탐색할 수 있습니다. 이를 통해 사용자는 기본 데이터 소스에서 데이터를 가져와야 하는지 여부에 대해 정보에 입각한 결정을 내릴 수 있습니다.

자습서

Qlik Sense 응용 프로그램 사용 방법에 대한 자습서는 자습서 - 기본 정보을 참조하십시오.

Direct Query에 대한 자습서는 다음을 참조하십시오.

정보 메모Qlik CloudDirect Query 기능은 QlikView의 Direct Query 문과 다릅니다. 자세한 내용은 Direct Query.를 참조하십시오.

지원되는 기능

Direct Query 응용 프로그램은 인메모리 응용 프로그램과 비교하여 다른 기능을 제공합니다.

Direct Query은 다음을 지원합니다.

  • 데이터 연결 유형:

    정보 메모Direct Query에서는 Qlik 데이터 게이트웨이 - 직접 액세스 데이터 연결을 사용할 수 없습니다.
    • Amazon Redshift

    • Azure SQL

    • Azure Synapse Analytics

    • Databricks

    • Google BigQuery

    • Microsoft SQL Server

    • PostgreSQL

    • Snowflake

    • 정보 메모데이터 연결에서는 스칼라 함수의 하위 집합이 지원됩니다.
  • 인메모리 데이터 분석 에뮬레이션:

    • 집합 분석의 하위 집합.

    • 임의의 복잡한 모델에 대한 다중 테이블 차트. 인메모리 응용 프로그램에 대한 기존 모델 요구 사항은 여전히 적용됩니다. 예를 들어 테이블 간의 연결 루프는 허용되지 않습니다.

    • 기본 집계 유형:

      • Sum

      • Count

      • Min

      • Max

      • Avg

      • Only

    • 기본 데이터베이스에서 제공하는 함수 및 연산 집합을 기반으로 하는 집계 전 및 집계 후 계산.

  • 테이블 관계 유형:

    • 내부 조인

    • 전체 외부 조인

  • 반복적 모델링 및 대시보드 생성.

  • 시각화 기능:

    • 표준 차트:

      • 막대 차트

      • 불릿 차트

      • 버튼

      • 콤보 차트

      • 컨테이너

      • 필터 창

      • 게이지

      • KPI

      • 꺾은선형 차트

      • 지도

      • 메코 차트

      • 원형 차트

      • 산점도

      • 테이블

      • 텍스트 및 이미지

      • 폭포수 차트

    • 대시보드 번들:

      • 비디오 플레이어

      • 변수 입력

    • 시각화 번들:

      • 깔때기형

      • 다중 KPI

      • 레이더

      • 생키

      • 워드 클라우드

  • 필드 검색 기능의 하위 집합:

    • 특수 기호(예: 패턴 검색의 경우 "*" 및 "?", 표현식 기반 검색의 경우 "=")가 없는 검색 문자열은 전체 문자열 값에 대한 접두사 검색으로 해석됩니다.

    • 패턴 검색 기호 및 기능:

      • "*" - 0개 이상의 모든 기호

      • "?" - 단일 기호

    • 범위 기반 검색(">", "<", ">=", "<=" 기준):

      • 수치 값의 경우 수치 값을 기준으로 하한/상한 경계가 감지됩니다. 예를 들어 >10<100<100>10과 동일합니다. 둘 다 [SearchedField] > 10 AND [SearchedField] < 100으로 해석됩니다.

      • 기타 데이터 유형의 경우 검색 조건에서의 순서에 따라 하한/상한 경계가 감지됩니다. 예를 들어 >Value1<Value2<Value2>Value1과 동일하지 않습니다. 두 번째 경우 Value2는 하한 경계에 해당하는 것으로 간주되어 [SearchedField] < Value2 OR [SearchedField] > Value1로 해석됩니다.

    • 표현식이 Direct Query 제한 사항을 충족한다고 가정한 표현식 기반 검색.

    정보 메모인메모리 검색 기능의 전체 목록은 선택 항목 또는 시각화 내에서 검색을 참조하십시오.
  • $(=...) 표현식의 Qlik 엔진 함수.

    Direct Query의 KPI 또는 사용자 지정 SQL 표현식 내에서 다음 Qlik 스크립트 및 차트 함수를 사용할 수 있습니다.

    위 옵션 중 하나 이상을 사용하는 표현식은 Qlik 엔진 내에서만 확장됩니다.

    정보 메모동일한 단일 $(=...) 표현식 내에서 원격 기본 SQL 함수와 Qlik 엔진 함수를 혼합하여 사용하는 것은 지원되지 않습니다.

    Qlik 엔진 함수 사용과 원격 SQL 데이터베이스 함수(선택적으로 + 집합/선택 포함)를 결합하려면 중첩된 $(=...) 표현식을 사용합니다.

    $(= ...<EngineFuncs> ... $(=... <set/selection &| Native SQL funcs>) ... )

    예:

    '$(=Replace(GetUserAttr('userEmail'), '$(=Char(111))' , Chr(48)))'

    위의 중첩된 표현식 예에서 Replace(), GetUserAttr()Chr() 함수는 Qlik 엔진 함수이며 가장 바깥쪽 $(=…) 표현식에 둘러싸여 있습니다. 그러나 중첩된 $(=Char(111)) 표현식은 엔진 함수를 참조하지 않습니다. 이는 원격 SQL 데이터베이스 함수(예: MS SQL)입니다.

    Qlik Cloud에서 사용자의 이메일이 'root@qlik.com'이라고 가정하면 위의 표현식 확장은 다음 순서로 진행됩니다.

    1. 원격 SQL 데이터베이스를 통해 비엔진 함수인 $(=CHAR(111))을 확장하여 소문자 o를 얻습니다.

    2. CHR(48) 엔진 함수를 문자 "0'으로 확장합니다.

    3. GetUserAttr('userEmail')'root@qlik.com'으로 확장합니다.

    4. 마지막으로 ‘$(=Replace('root@qlik.com', ‘o' , ‘0’)’을 확장하여 최종 결과 'r00t@qlik.com'을 얻습니다.

이 페이지가 도움이 되었습니까?

이 페이지 또는 해당 콘텐츠에서 오타, 누락된 단계 또는 기술적 오류와 같은 문제를 발견하면 알려 주십시오!