개요

로그프레소 플랫폼의 모든 기능은 전용 DSL인 "로그프레소 쿼리"를 바탕으로 합니다. 쿼리는 실행하는 방식에 따라 크게 세 가지로 나뉩니다.

실행 방식에 따른 구분

애드혹 쿼리

애드혹 쿼리(ad-hoc query)는 사용자가 임의로 실행하는 쿼리를 의미합니다. 로그프레소의 웹 콘솔에 로그인한 후 쿼리 > 쿼리 화면에서, API(레거시 API, REST API) 또는 로그프레소 클라이언트 SDK(Java, Python, R)를 통해 프로그래밍 방식으로 쿼리를 실행할 수 있습니다.

장시간 실행되는 쿼리를 백그라운드로 전환하면 사용자가 로그아웃하거나 접속이 끊어지더라도 계속 실행됩니다. 이후에 해당 쿼리를 포어그라운드(애드혹 쿼리)로 다시 전환하여 쿼리 결과를 확인할 수 있습니다.

로그프레소의 쿼리 명령어 학습이 필요할 때, 스트림 쿼리예약된 쿼리로 사용할 쿼리문을 시험 목적으로 실행해야 할 때, 직접 데이터에 접근해 분석해야 할 때 쿼리 화면을 가까이 하십시오.

스트림 쿼리

스트림 쿼리는 실시간으로 데이터 스트림을 받아서 처리하는 쿼리를 의미합니다. 로거테이블에 들어오는 데이터 스트림이나, 또 다른 스트림 쿼리의 출력을 입력으로 받아서 처리하는 실시간으로 이벤트 처리를 하는 용도로 사용됩니다.

예약된 쿼리

예약된 쿼리는 일정한 주기마다 또는 로그프레소 플랫폼을 시작할 때마다 실행하도록 예약된 쿼리를 의미합니다. 이러한 쿼리는 보통 로그프레소 테이블에 저장된 데이터를 읽어와 분석하거나, 통계를 산출하는 형태로 사용됩니다.

쿼리 지원 기능

로그프레소 플랫폼은 쿼리를 실행하는 동안 사용할 수 있는 라이브러리와 같은 기능을 제공합니다.

프로시저

프로시저는 SQL 데이터베이스의 프로시저와 같이 복잡한 쿼리를 실행할 때마다 쿼리를 다시 입력할 필요없이 간단히 호출해서 실행할 수 있게 하는 기능입니다. 이렇게 작성한 프로시저를 proc 명령으로 호출해 사용할 수 있습니다.

관리자 권한이 필요하거나, 외부 시스템에 접속하는 쿼리문을 프로시저로 정의하고, 작업을 실행해야 하는 사용자에게 프로시저 사용 권한을 부여하면 관리자 권한 없이 필요한 정보만 접근할 수 있게 할 수 있습니다.

룩업

룩업은 쿼리를 실행하면서 수시로 조회하는 데이터를 관리하는 기능입니다. 예를 들어 임직원 목록, 우편번호, 국가코드와 같은 데이터를 쿼리에서 자주 호출해 사용하는 경우 룩업으로 등록하고 이용할 수 있습니다.

룩업와 유사하지만 쿼리 명령으로만 제공되는 memlookup도 있습니다. 사용 목적과 방법에 따라 적절한 것을 선택해서 사용하십시오.

저장된 쿼리

불러오기는 이미 실행한 쿼리 결과를 저장하고 필요에 따라 가져와 사용할 수 있게 하는 기능입니다. 영구적인 저장이 필요 없고 일시적으로 보관하는 데이터에 적합합니다.

백그라운드 쿼리

백그라운드 쿼리는 애드혹 쿼리(포어그라운드)에서 로그프레소 백그라운드로 전환한 쿼리들을 관리하는 기능입니다.

쿼리 자동화

쿼리로 일정 단위의 작업을 구성(태스크)하고, 블록처럼 연결함으로써 일련의 작업 흐름을 자동화할 수 있습니다.

워크플로우
워크플로우는 파일 혹은 DBMS 데이터를 조회하고, 원하는 형태로 가공하여, 필요한 곳에 적재하는 일련의 작업 흐름을 자동화하는 도구입니다. 어떤 파일에 변화가 생겼거나, 일정한 주기마다 실행되도록 할 수 있고, 워크플로우를 구성하는 태스크 간 연결 관계, 실행 조건, 실행할 내용을 지정할 수 있습니다.
스니펫
스니펫은 워크플로우에서 사용할 수 있는 작은 쿼리문 블록들을 관리하는 도구입니다. 쿼리 문법에 익숙하지 않은 사용자들이 쿼리문을 작성할 수 있도록 쿼리 디자이너를 이용해 쿼리문을 작성합니다.