API Reference - dbt-date-harvester
class YamlParser (project_dir : Path )
Metodo
Retorno
Descricao
parse_file(filepath)
Dict[str, Any]
Faz parsing de arquivo YAML
find_yaml_files()
List[Path]
Encontra YAML no projeto
parse_all()
Dict[str, Dict]
Faz parsing de todos os YAML
extract_version(content)
Optional[int]
Extrai versao
extract_models_section(content)
List[Dict]
Extrai secao models
extract_sources_section(content)
List[Dict]
Extrai secao sources
class SqlParser (project_dir : Path )
Metodo
Retorno
Descricao
parse_file(filepath)
SqlModelInfo
Faz parsing de arquivo SQL
find_sql_files()
List[Path]
Encontra SQL no projeto
parse_all()
Dict[str, SqlModelInfo]
Faz parsing de todos os SQL
get_model(name)
Optional[SqlModelInfo]
Retorna modelo por nome
get_all_refs()
Dict[str, List[str]]
Mapa de refs por modelo
get_all_sources()
Dict[str, List[Tuple]]
Mapa de sources por modelo
Metodo
Retorno
Descricao
parse_content(content, filepath)
JinjaAnalysis
Analisa Jinja em SQL
strip_jinja(content)
str
Remove blocos Jinja
get_jinja_complexity(content)
Dict[str, int]
Complexidade Jinja
get_all_variables()
Set[str]
Todas as variaveis
SchemaExtractor
class SchemaExtractor (yaml_parser : YamlParser )
Metodo
Retorno
Descricao
extract_models(content)
List[ModelInfo]
Extrai modelos
extract_sources(content)
List[SourceInfo]
Extrai sources
get_model_by_name(name)
Optional[ModelInfo]
Busca modelo
get_column_tests(model_name)
Dict[str, List]
Testes por coluna
Metodo
Retorno
Descricao
add_node(node)
None
Adiciona no
add_edge(from, to)
None
Adiciona aresta
get_dependencies(name)
Set[str]
Dependencias diretas
get_dependents(name)
Set[str]
Dependentes diretos
get_all_upstream(name)
Set[str]
Upstream transitivo
get_all_downstream(name)
Set[str]
Downstream transitivo
topological_sort()
List[str]
Ordem topologica
detect_cycles()
List[List[str]]
Ciclos encontrados
get_root_nodes()
Set[str]
Nos raiz
get_leaf_nodes()
Set[str]
Nos folha
class DependencyAnalyzer (graph : GraphResolver , sql_parser : SqlParser )
Metodo
Retorno
Descricao
build_dependency_graph()
None
Constroi grafo
analyze_model(name)
DependencyReport
Analisa modelo
analyze_all()
List[DependencyReport]
Analisa todos
get_execution_order()
List[str]
Ordem execucao
get_most_depended_on(n)
List[Tuple]
Mais dependidos
class ImpactAnalyzer (graph : GraphResolver )
Metodo
Retorno
Descricao
analyze_impact(model)
ImpactReport
Analisa impacto
find_high_impact_models(n)
List[Tuple]
Alto impacto
get_critical_path()
List[str]
Caminho critico
class ModelValidator (extractor : SchemaExtractor , sql_parser : SqlParser )
Metodo
Retorno
Descricao
validate_all()
List[ValidationResult]
Todas as validacoes
get_summary()
Dict[str, int]
Resumo
class NamingValidator (graph : GraphResolver , conventions : Optional [List ])
Metodo
Retorno
Descricao
validate_model_names()
List[ValidationResult]
Valida nomes
validate_column_names(cols)
List[ValidationResult]
Valida colunas
validate_all(cols)
List[ValidationResult]
Todas validacoes
class JsonExporter (indent : int = 2 )
Metodo
Retorno
Descricao
export_graph(graph)
Dict
Exporta grafo
export_to_file(data, path)
None
Salva em arquivo
export_to_string(data)
str
Exporta para string
class GraphvizExporter (graph : GraphResolver )
Metodo
Retorno
Descricao
to_dot(**kwargs)
str
Gera DOT
to_dot_with_layers()
str
DOT com camadas
export_to_file(path)
None
Salva em arquivo
class MermaidExporter (graph : GraphResolver )
Metodo
Retorno
Descricao
to_mermaid(**kwargs)
str
Gera Mermaid
to_mermaid_with_subgraphs()
str
Mermaid agrupado
to_mermaid_lineage(model)
str
Mermaid de linhagem
export_to_file(path)
None
Salva em arquivo
Propriedades abstratas: name, version
Hooks disponiveis:
on_load(), on_unload()
on_parse_start(project_dir), on_parse_complete(graph)
on_validate_start(), on_validate_complete(results)
register_validators(), register_exporters()
Metodo
Retorno
Descricao
register(plugin_class)
None
Registra plugin
unregister(name)
bool
Remove plugin
emit(event, *args)
None
Emite evento
collect_validators()
List[Callable]
Coleta validadores
collect_exporters()
Dict[str, Callable]
Coleta exportadores