dbt artifacts parser
v0.8.1
이것은 파이썬의 DBT 아티팩트 구문 분석입니다. catalog.json , manifest.json , run-results.json 및 sources.json Python 객체로 처리 할 수 있습니다.
이 패키지는 주로 DBT 코어 용으로 설계되었으므로 Python 객체로서 DBT 아티팩트와의 원활한 상호 작용을 가능하게합니다. DBT 클라우드는 DBT 코어 외에 추가 아티팩트 유형을 제공하지만이 패키지는 포괄적 인 지원을 제공하지 않습니다.
켈 중요한 참고 :
- Pydantic V1은 DBT 1.9 이상을 지원하지 않습니다.
- DBT 1.9 이상을 구문 분석하려면 코드를 Pydantic V2로 마이그레이션하십시오.
- Pydantic V3의 출시시 버전 호환성을 재평가 할 것입니다.
| 버전 | 지원되는 DBT 버전 | 지원되는 Pydantic 버전 |
|---|---|---|
| 0.8 | DBT 1.5 ~ 1.9 | Pydantic V2 |
| 0.7 | DBT 1.5 ~ 1.8 | Pydantic V2 |
| 0.6 | DBT 1.5 ~ 1.8 | 피다 틱 v1 |
| 0.5 | DBT 1.5 ~ 1.7 | 피다 틱 v1 |
pip install -U dbt-artifacts-parser그것들은 DBT 인공물을 구문 분석하는 수업입니다.
import json
# parse any version of catalog.json
from dbt_artifacts_parser . parser import parse_catalog
with open ( "path/to/catalog.json" , "r" ) as fp :
catalog_dict = json . load ( fp )
catalog_obj = parse_catalog ( catalog = catalog_dict )
# parse catalog.json v1
from dbt_artifacts_parser . parser import parse_catalog_v1
with open ( "path/to/catalog.json" , "r" ) as fp :
catalog_dict = json . load ( fp )
catalog_obj = parse_catalog_v1 ( catalog = catalog_dict ) import json
# parse any version of manifest.json
from dbt_artifacts_parser . parser import parse_manifest
with open ( "path/to/manifest.json" , "r" ) as fp :
manifest_dict = json . load ( fp )
manifest_obj = parse_manifest ( manifest = manifest_dict )
# parse manifest.json v1
from dbt_artifacts_parser . parser import parse_manifest_v1
with open ( "path/to/manifest.json" , "r" ) as fp :
manifest_dict = json . load ( fp )
manifest_obj = parse_manifest_v1 ( manifest = manifest_dict )
# parse manifest.json v2
from dbt_artifacts_parser . parser import parse_manifest_v2
with open ( "path/to/manifest.json" , "r" ) as fp :
manifest_dict = json . load ( fp )
manifest_obj = parse_manifest_v2 ( manifest = manifest_dict )
# parse manifest.json v3
from dbt_artifacts_parser . parser import parse_manifest_v3
with open ( "path/to/manifest.json" , "r" ) as fp :
manifest_dict = json . load ( fp )
manifest_obj = parse_manifest_v3 ( manifest = manifest_dict )
# parse manifest.json v4
from dbt_artifacts_parser . parser import parse_manifest_v4
with open ( "path/to/manifest.json" , "r" ) as fp :
manifest_dict = json . load ( fp )
manifest_obj = parse_manifest_v4 ( manifest = manifest_dict )
# parse manifest.json v5
from dbt_artifacts_parser . parser import parse_manifest_v5
with open ( "path/to/manifest.json" , "r" ) as fp :
manifest_dict = json . load ( fp )
manifest_obj = parse_manifest_v5 ( manifest = manifest_dict )
# parse manifest.json v6
from dbt_artifacts_parser . parser import parse_manifest_v6
with open ( "path/to/manifest.json" , "r" ) as fp :
manifest_dict = json . load ( fp )
manifest_obj = parse_manifest_v6 ( manifest = manifest_dict )
# parse manifest.json v7
from dbt_artifacts_parser . parser import parse_manifest_v7
with open ( "path/to/manifest.json" , "r" ) as fp :
manifest_dict = json . load ( fp )
manifest_obj = parse_manifest_v7 ( manifest = manifest_dict )
# parse manifest.json v8
from dbt_artifacts_parser . parser import parse_manifest_v8
with open ( "path/to/manifest.json" , "r" ) as fp :
manifest_dict = json . load ( fp )
manifest_obj = parse_manifest_v8 ( manifest = manifest_dict )
# parse manifest.json v9
from dbt_artifacts_parser . parser import parse_manifest_v9
with open ( "path/to/manifest.json" , "r" ) as fp :
manifest_dict = json . load ( fp )
manifest_obj = parse_manifest_v9 ( manifest = manifest_dict )
# parse manifest.json v10
from dbt_artifacts_parser . parser import parse_manifest_v10
with open ( "path/to/manifest.json" , "r" ) as fp :
manifest_dict = json . load ( fp )
manifest_obj = parse_manifest_v10 ( manifest = manifest_dict )
# parse manifest.json v11
from dbt_artifacts_parser . parser import parse_manifest_v11
with open ( "path/to/manifest.json" , "r" ) as fp :
manifest_dict = json . load ( fp )
manifest_obj = parse_manifest_v11 ( manifest = manifest_dict )
# parse manifest.json v12
from dbt_artifacts_parser . parser import parse_manifest_v12
with open ( "path/to/manifest.json" , "r" ) as fp :
manifest_dict = json . load ( fp )
manifest_obj = parse_manifest_v12 ( manifest = manifest_dict ) import json
# parse any version of run-results.json
from dbt_artifacts_parser . parser import parse_run_results
with open ( "path/to/run-resultsjson" , "r" ) as fp :
run_results_dict = json . load ( fp )
run_results_obj = parse_run_results ( run_results = run_results_dict )
# parse run-results.json v1
from dbt_artifacts_parser . parser import parse_run_results_v1
with open ( "path/to/run-results.json" , "r" ) as fp :
run_results_dict = json . load ( fp )
run_results_obj = parse_run_results_v1 ( run_results = run_results_dict )
# parse run-results.json v2
from dbt_artifacts_parser . parser import parse_run_results_v2
with open ( "path/to/run-results.json" , "r" ) as fp :
run_results_dict = json . load ( fp )
run_results_obj = parse_run_results_v2 ( run_results = run_results_dict )
# parse run-results.json v3
from dbt_artifacts_parser . parser import parse_run_results_v3
with open ( "path/to/run-results.json" , "r" ) as fp :
run_results_dict = json . load ( fp )
run_results_obj = parse_run_results_v3 ( run_results = run_results_dict )
# parse run-results.json v4
from dbt_artifacts_parser . parser import parse_run_results_v4
with open ( "path/to/run-results.json" , "r" ) as fp :
run_results_dict = json . load ( fp )
run_results_obj = parse_run_results_v4 ( run_results = run_results_dict )
# parse run-results.json v5
from dbt_artifacts_parser . parser import parse_run_results_v5
with open ( "path/to/run-results.json" , "r" ) as fp :
run_results_dict = json . load ( fp )
run_results_obj = parse_run_results_v5 ( run_results = run_results_dict )
# parse run-results.json v6
from dbt_artifacts_parser . parser import parse_run_results_v6
with open ( "path/to/run-results.json" , "r" ) as fp :
run_results_dict = json . load ( fp )
run_results_obj = parse_run_results_v6 ( run_results = run_results_dict ) import json
# parse any version of sources.json
from dbt_artifacts_parser . parser import parse_sources
with open ( "path/to/sources.json" , "r" ) as fp :
sources_dict = json . load ( fp )
sources_obj = parse_sources ( sources = sources_dict )
# parse sources.json v1
from dbt_artifacts_parser . parser import parse_sources_v1
with open ( "path/to/sources.json" , "r" ) as fp :
sources_dict = json . load ( fp )
sources_obj = parse_sources_v1 ( sources = sources_dict )
# parse sources.json v2
from dbt_artifacts_parser . parser import parse_sources_v2
with open ( "path/to/sources.json" , "r" ) as fp :
sources_dict = json . load ( fp )
sources_obj = parse_sources_v2 ( sources = sources_dict )
# parse sources.json v3
from dbt_artifacts_parser . parser import parse_sources_v3
with open ( "path/to/sources.json" , "r" ) as fp :
sources_dict = json . load ( fp )
sources_obj = parse_sources_v3 ( sources = sources_dict )귀하의 기여에 감사드립니다!
이 패키지에 기여하는 데 관심이 있으시면 Contributing.md를 확인하십시오.
이시카와 유 | 널 | 브렌트 브루 잉턴 | 유다 랜드 | Mayur Singal | Mohamed Nabil Mahmoud Hafez |
Onkar Ravgan | 널 |