버티카 데이터 계보 이는 Vertica SQL에서 데이터가 흐르는 방식을 열 수준에서 보여주는 지도입니다. 즉, 어떤 소스 열이 각 대상 테이블, 프로젝션 및 보고서에 데이터를 제공하는지, 그리고 어떤 조인, 필터, 집계 및 분석 함수가 그 과정에서 데이터를 변환하는지를 나타냅니다. Gudu SQLFlow 이 기능은 전용 Vertica 방언 파서를 사용하여 해당 맵을 자동으로 생성합니다. SQL을 정적으로 읽고 모든 열 참조를 해결하며 테이블의 행을 전혀 건드리지 않고 대화형 계보 다이어그램을 렌더링합니다.
지금 바로 시도해 보세요: Vertica 쿼리를 여기에 붙여넣으세요. 무료 온라인 SQL 계보 시각화 도구Vertica 방언을 선택하면 몇 초 만에 열 수준의 계보도를 얻을 수 있습니다.
Vertica 계보가 SQL 구문 분석 문제인 이유는 무엇일까요?
Vertica는 물리적 설계의 상당 부분이 SQL로 표현된다는 점에서 다른 분석 데이터베이스와는 다릅니다. Vertica의 핵심 저장 구조인 프로젝션은 다음과 같이 정의됩니다. 선택 항목으로 프로젝션 생성 설명. 평면화된 테이블은 차원 속성을 비정규화합니다. 기본값 사용 그리고 설정 사용 컬럼 표현식 자체가 다른 테이블에 대한 쿼리입니다. 이벤트 데이터에 대한 공백 채우기 및 보간은 다음과 같이 수행됩니다. 시계열 조항 바로 안쪽 선택하다.
이러한 설계는 데이터 계보에 영향을 미칩니다. 도구가 Vertica의 문법을 제대로 파싱할 수 있다면, ETL 스크립트와 뷰뿐만 아니라 스토리지 계층 자체를 통한 데이터 흐름까지 복구할 수 있습니다. 하지만 파싱에 실패하면 Vertica 환경을 Vertica 환경답게 만드는 핵심 구문들을 조용히 삭제해 버립니다. 일반적인 ANSI 문법 파서는 이러한 부분에서 오류를 일으킵니다. 시계열프로젝션 정의를 노이즈로 취급하고, 그 안에 숨겨진 쿼리를 절대 보지 못한다. 설정 사용 표현.
SQLFlow는 방언별 Vertica 파서를 제공합니다. 39개의 방언 구문 분석기각각 고유한 문법을 가지고 있으며, 공통된 ANSI 근사치를 사용하지 않습니다. SELECT 문으로 정의된 프로젝션, 평면화된 테이블 표현식 등을 처리합니다. 시계열 절을 일급 SQL처럼 취급하며, CTE, 서브쿼리, 뷰 등을 통해 열 참조를 해결합니다. 선택하다 * 확장.
실제 Vertica 문장에서 가져온 열 수준의 계보
일반적인 Vertica 패턴을 생각해 보세요. 삽입 ... 선택 사실 데이터를 집계하고 분석 함수를 사용하여 순위를 매기는 도구입니다.
INSERT INTO mart.region_daily_rank (sale_date, region_name, total_amount, region_rank) SELECT s.sale_date, r.region_name, SUM(s.amount) AS total_amount, RANK() OVER (PARTITION BY s.sale_date ORDER BY SUM(s.amount) DESC) AS region_rank FROM fact.sales s JOIN dim.regions r ON s.region_id = r.region_id WHERE s.sale_date >= '2026-01-01' GROUP BY s.sale_date, r.region_name;
SQLFlow는 각 출력 열에 대해 해당 열에 데이터를 제공하는 소스 열과 해당 열이 통과하는 함수를 식별합니다.
지역별 일일 순위.총액직접 공급됩니다사실.판매량.금액~을 통해합집합().지역별 일일 순위.지역 순위~에서 파생됨판매 금액~을 통해RANK() OVER창문, ~와 함께판매.판매일파티션을 형성합니다.판매 지역 ID그리고지역.지역_id출력에는 나타나지 않지만, 조인을 통해 어떤 행들이 만나는지를 결정합니다. SQLFlow는 이를 다음과 같이 기록합니다. 간접 혈통와 함께어디필터 켜기판매일그리고그룹화 기준열쇠.
직접과 간접의 구분은 겉으로 보이는 것보다 훨씬 중요합니다. 누군가가 의미론을 바꿔버린다면 말이죠. 지역 ID데이터 흐름 전용 계보 도구는 어떤 경우에도 이를 표시하지 않습니다. 지역별 일일 순위 영향을 받는 것처럼 보이지만, 그 안의 모든 숫자는 변합니다. SQLFlow는 간접적인 영향(사용된 열)을 모델링합니다. 어디, 가입하다, 그리고 그룹화 기준 조건 및 내부 집계)를 다이어그램에서 별도의 토글 가능한 관계 유형으로 표시합니다. 대부분의 경쟁 도구는 이러한 구분을 전혀 하지 않습니다.
Vertica는 방언 구문 분석기 커버를 구성합니다.
| 버티카 구조물 | 혈통이 숨겨진 곳 |
|---|---|
예측(선택 항목으로 프로젝션 생성) | 정의하는 SELECT 문은 앵커 테이블의 열을 프로젝션의 열에 매핑하며, 정렬 및 분할 선택 사항은 SQL로 표현됩니다. |
| 평평한 테이블 | 기본값 사용 / 설정 사용 표현식은 차원 테이블에 대한 쿼리를 DDL에 직접 포함시킵니다. 이는 DML만 스캔하는 도구에는 보이지 않는 비정규화 로직입니다. |
시계열 절 | 공백 채우기 및 보간은 출력 형식을 다시 작성합니다. 절은 SQL로 구문 분석되므로 보간된 열은 실제 출처로 다시 연결됩니다. |
| 분석 함수 | 계급, 행 번호, 지연그리고 윈도우 집계: SQLFlow는 함수 입력과 결과 형태를 결정하는 파티션/순서 열을 모두 추적합니다. |
뷰, CTE, 서브쿼리 선택하다 * | 컬럼 참조는 모든 레이어를 통해 해결되므로 보고서 컬럼은 첫 번째 뷰 경계에서 멈추지 않고 물리적 소스 컬럼까지 추적됩니다. |
노후화된 Vertica 환경에 대한 감사 및 마이그레이션 계획 수립
대부분의 Vertica 설치는 새로 설치된 것이 아닙니다. 10년 이상 축적된 SQL 쿼리가 포함되어 있습니다. 삽입 ... 선택 부하, 여러 관점이 겹겹이 쌓인 보고 방식, 이미 퇴사한 엔지니어들이 조정한 예측 자료 등. 두 가지 상황으로 인해 팀은 마침내 이 모든 것을 매핑해야 했습니다.
감사 및 규정 준수. 규제 기관과 내부 감사 담당자는 열 수준에서 다음과 같은 질문을 던집니다. 어떤 소스 필드가 이 규제 대상 수치로 유입되었으며, 어떤 변환 과정을 거쳤습니까? 단순히 경험적 지식에 의존한 답변은 면밀한 검토를 견뎌낼 수 없습니다. SQLFlow는 모든 출력 열에 대한 출처 체인을 생성합니다. 보고서의 숫자에서 시작하여 모든 뷰 및 로드 스크립트를 거쳐 실제 소스 열까지 역추적하고, 그 결과를 JSON, CSV 또는 PNG 형식으로 내보낼 수 있습니다.
이주 계획. Vertica 워크로드를 Snowflake, Databricks 또는 BigQuery로 마이그레이션하는 팀은 마이그레이션 순서를 정하기 전에 정확한 종속성 그래프가 필요합니다. 즉, 어떤 테이블이 부하를 담당하는지, 어떤 뷰가 더 이상 사용되지 않는지, 어떤 다운스트림 작업이 각 대상을 사용하는지 파악해야 합니다. SQLFlow는 동일한 엔진으로 이러한 모든 방언을 구문 분석하므로 마이그레이션 전에 Vertica 환경을 매핑하고 마이그레이션 후 대상 플랫폼에서 재구축된 계보를 검증하여 중간에 누락된 데이터가 없는지 확인할 수 있습니다. 다른 MPP 플랫폼에서 통합하는 경우에도 동일하게 적용됩니다. 자세한 내용은 관련 페이지를 참조하십시오. 그린플럼 데이터 계보 그리고 네테자 데이터 계보.
SQL을 사용하여 Vertica 데이터 계보를 생성하는 방법
- SQL을 수집하세요. 개별 쿼리를 붙여넣거나, 스크립트 파일을 업로드하거나, JDBC를 통해 스키마 메타데이터를 실시간으로 가져오거나, Grabit/을 사용하세요.SQLFlow-ingester 메타데이터를 일괄적으로 추출하는 유틸리티입니다. 단발성 질문의 경우, 무료 시각화 도구에 문장 하나만 붙여넣으면 충분합니다.
- Vertica 방언을 선택하세요. SQLFlow는 Vertica 전용 문법을 사용하여 SQL을 파싱하고 결과로 생성된 의미 모델에 대해 데이터 흐름 분석을 실행합니다. 내부 엔진은 다음과 같습니다. 일반 SQL 파서, developed commercially since the mid-2000s and validated against roughly 13,600 per-dialect SQL test fixtures.
- 탐색하고 내보내기. 대화형 다이어그램을 자세히 살펴보고, 모든 열의 상위 또는 하위 경로를 추적하고, 간접 계보 기능을 켜거나 끌 수 있으며, 그래프를 JSON, CSV 또는 PNG 형식으로 내보내거나 자체 도구에서 REST API를 통해 쿼리할 수 있습니다.
버전 8.2.3부터는 다음과 같은 질문을 통해 그래프를 일반적인 영어로도 조회할 수 있습니다. "어떤 출력값이 판매량에 따라 달라지나요?"또한 AI가 인용하는 모든 표와 열은 표시되기 전에 분석된 계보 그래프와 비교하여 유효성을 검사합니다.
어디에서 실행하나요?
SQLFlow Cloud는 브라우저에 쿼리를 붙여넣을 수 있는 무료 티어를 제공하며, 프리미엄 티어는 월 $49.99달러입니다. 규제 산업에 속한 Vertica 고객들은 일반적으로 이 서비스를 선택합니다. 온프레미스 SQLFlowDocker 또는 Kubernetes를 자체 네트워크 내에서 에어갭 방식으로 운영할 수 있으며, 월 $500 또는 선택한 데이터베이스 유형당 일회성 $4,800의 요금이 부과됩니다. 최대 두 대의 서버에 설치할 수 있습니다. 어떤 방식을 선택하든 분석은 정적입니다. SQLFlow는 SQL 텍스트와 스키마 메타데이터만 읽고 테이블의 데이터는 읽지 않습니다.
SQLFlow는 엔터프라이즈 규모에서 100개 이상의 데이터베이스와 백만 개 이상의 열을 포함하는 환경을 일괄 스캔하고, 증분 스캔을 통해 영구적인 계보 저장소를 유지하며, DataHub, Microsoft Purview 및 OpenMetadata로 내보내므로 Vertica 계보가 조직에서 이미 실행 중인 카탈로그에 추가됩니다.
오픈소스 계보 도구는 어떻습니까?
오픈소스 파서(예: ...) sqllineage 그리고 sqlglot 이러한 도구는 표준 SELECT 및 INSERT 문에서 계보를 추출하는 데 실제로 유용하며, 데이터베이스에 이러한 내용만 포함되어 있다면 충분할 수 있습니다. 특히 Vertica의 경우, 커밋하기 전에 다음 네 가지 사항을 확인하는 것이 좋습니다. 해당 도구가 다음과 같은 방언 구문을 파싱하는지 여부 시계열 그리고 프로젝션 DDL이 스키마 메타데이터를 사용하여 심층 뷰 스택을 통해 열을 해결하는지, 조인 및 필터 조건을 통해 간접 계보를 모델링하는지, 쿼리당 튜플을 출력하는 대신 수천 개의 스크립트에 걸쳐 탐색 가능한 다이어그램을 렌더링하는지 등을 고려해야 합니다. 공정한 평가는 간단합니다. 가장 복잡한 Vertica 로드 스크립트를 가져와 두 도구를 모두 사용하여 실행하고 각 도구가 실제로 해결하는 내용을 비교해 보세요.
자주 묻는 질문
SQLFlow는 Vertica 프로젝션을 이해합니까?
예. Vertica 프로젝션은 SELECT 문으로 정의되며, SQLFlow의 Vertica 방언 파서는 해당 정의를 SQL로 읽습니다. 따라서 데이터 계보는 다른 쿼리 정의 객체와 마찬가지로 기준 테이블의 열에서 프로젝션을 통해 흐릅니다.
TIMESERIES 절과 분석 함수를 구문 분석할 수 있습니까?
예. Vertica 파서가 처리합니다. 시계열 절 및 윈도우/분석 함수는 구문 분석 불가능한 확장 기능이 아닌 기본 문법으로 사용됩니다. 출력 열은 다음과 같이 생성됩니다. RANK() OVER (...) 또는 보간 추적을 통해 실제 소스 열로 되돌아갈 수 있으며, 파티션 및 순서 열은 간접적인 계보로 포착됩니다.
Vertica 클러스터에 SQLFlow를 연결해야 하나요?
아니요. SQL 쿼리를 붙여넣거나 스크립트 파일을 업로드하면 데이터베이스 연결 없이도 리니지를 얻을 수 있습니다. JDBC를 통해 연결하거나 Grabit 메타데이터 추출기를 사용하면 스키마 메타데이터가 추가되어 해상도가 향상됩니다. 선택하다 * 대규모 데이터베이스 전반에 걸쳐 한정되지 않은 열 이름이 사용됩니다.
SQLFlow는 Vertica 테이블의 데이터를 읽을 수 있나요?
절대 그렇지 않습니다. SQLFlow는 SQL 코드에 대한 정적 분석을 수행하고 선택적으로 테이블 및 열 정의를 읽습니다. 행 데이터는 쿼리하지 않습니다. 온프레미스 에디션의 경우 SQL 텍스트조차도 네트워크 내에 유지됩니다.
SQLFlow가 Vertica에서 마이그레이션을 계획하는 데 도움이 될 수 있을까요?
예. 먼저 Vertica 환경의 전체 열 수준 종속성 그래프를 매핑하고, 이를 사용하여 이동 순서를 정하고 더 이상 사용되지 않는 객체를 식별한 다음, 대상 플랫폼(Snowflake, Databricks, BigQuery 및 동일한 엔진에서 지원하는 35개 이상의 다른 플랫폼)에서 리니지를 다시 실행하여 재구축을 검증합니다.
SQLFlow 비용은 얼마인가요?
SQLFlow 클라우드는 무료로 시작하며, 프리미엄 버전은 월 $49.99입니다. 온프레미스 버전은 선택한 데이터베이스 유형당 월 $500 또는 일회성 $4,800이며, 최대 두 대의 서버에서 사용 가능합니다. 추가 데이터베이스 유형은 각각 월 $100 또는 일회성 $1,000에 추가됩니다. 자세한 내용은 다음을 참조하세요. 가격 페이지.
Vertica 부동산 지도를 작성하세요
Vertica 쿼리를 무료 시각화 도구에 붙여넣거나, 감사 또는 마이그레이션을 위해 수년간 축적된 SQL 데이터를 분석하는 것에 대해 문의해 주세요.