DRDataRaft/ docs
GitHub ↗

Integrations and extension boundaries

Load only the packages needed by the application. The core runs in memory; storage and integration engines live in separate packages.

Task Package Entry points
Persistent checked releases dataraft.lake dataraft.lake::dr_open_lake(), dataraft.lake::dr_target_lake(), dataraft.lake::dr_close_lake()
External sources and targets dataraft.adapters dataraft.adapters::dr_source_database(), dataraft.adapters::dr_target_parquet(), dataraft.adapters::dr_as_targets()
SQL model execution dataraft.dbt dataraft.dbt::dr_dbt_project(), dataraft.dbt::dr_dbt_build()
Metadata publication dataraft.adapters dataraft.adapters::dr_catalog_openlineage(), dataraft.adapters::dr_catalog_openmetadata()
Metrics and reports dataraft.metrics dataraft.metrics::dr_metric(), dataraft.metrics::dr_measure(), dataraft.metrics::dr_report_release()

For help on an extension, use help(package = "dataraft.lake"), substituting the package name. Sources, transformations, quality engines, targets and metadata publishers use the core S3 protocols dataraft.core::dr_read_source(), dataraft.core::dr_execute_transform(), dataraft.core::dr_run_quality(), dataraft.core::dr_write_target() and dataraft.core::dr_publish_metadata(). A custom adapter implements its protocol and dataraft.core::dr_check_component(); definition checks must not perform I/O. Execution receives a context and must respect ownership of supplied connections. A borrowed connection remains the caller's resource.

Conditions inherit from dataraft_error and a subsystem class, such as dataraft_error_contract or dataraft_error_lake. More specific conditions can carry a parent condition or execution result. Inspect those fields before retrying; a failed contract is not a transient connection failure.

Missing optional packages raise dataraft_error_dependency, with package and purpose fields and an installation hint. Known storage connection and writer-lock failures additionally inherit from dataraft_error_backend; existing subsystem classes remain available. These classes describe the failure, not a promise that retrying is safe. Unknown extension errors retain their original conditions.

A blocked dr_collect() carries condition$result and condition$checks, just like a failed run. Pass the condition or result to dataraft.core::dr_quality_errors() to obtain locally retained rule exceptions. This also works for upstream failures and model members. Persisted quality reports contain diagnostic guidance, not raw exceptions.

Documentation source snapshot · View source at ed2e7e6 ↗
Code examples are documented source examples; they are not executed in this website build.

Search documentation

Search functions, packages and guides.