You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit ddb6ee0
Browse filesBrowse the repository at this point in the historyBrowse files
Apache Doris 4.1+ supports reading multimodal and vector datasets stored in **Lance** format via external Lance catalogs (`'type' = 'lance'`) or table-valued functions (`'format' = 'lance'`).
445
+
In addition to Apache Iceberg, `DorisEngineAdapter` supports reading and writing external **Apache Paimon** (`'type' = 'paimon'`, `table_format paimon`) and **Apache Hive** (`'type' = 'hms'`, `table_format hive`) catalogs:
446
+
447
+
-**Apache Paimon (`table_format paimon`)**: Emits `ENGINE=paimon`, maps `storage_format` to `'file.format'` (`'parquet'` or `'orc'`), and automatically populates Paimon's `'primary-key'` property from `unique_key` (including partition columns when `partitioned_by` is set) so Doris 4.1+ row-level `DELETE` and `MERGE INTO` work out of the box.
448
+
-**Apache Hive (`table_format hive`)**: Emits `ENGINE=hive` and maps `storage_format` to `'file_format'` (`'parquet'`, `'orc'`, or `'text'`). Supports `FULL` (`INSERT OVERWRITE TABLE`) and append workloads (`INCREMENTAL_UNMANAGED`), while row-level `DELETE` and `MERGE INTO` are not supported by Hive catalogs in Doris.
Apache Doris 4.1+ supports reading multimodal and vector datasets stored in **Lance** format (`'type' = 'lance'` catalog or `s3(...)` / `gcs(...)` / `hdfs(...)` / `local(...)` table-valued functions with `'format' = 'lance'`), as well as external **Apache Hudi** (`'type' = 'hudi'`) and **Delta Lake** (`'type' = 'deltalake'`) catalogs.
446
471
447
472
```yaml
448
473
# config.yaml
@@ -472,8 +497,8 @@ SELECT
472
497
FROM lance_catalog.multimodal.clip_embeddings;
473
498
```
474
499
475
-
!!! warning "LanceTables are Read-Only in Doris 4.1"
476
-
Doris 4.1 supports Lancecatalogs and `format = 'lance'` table-valued functions for reading only (`CREATE TABLE`, `INSERT`, and `CTAS` are not supported by Doris on Lance catalogs). If a SQLMesh model is configured to materialize into a Lance catalog or sets `table_format = 'lance'`, `DorisEngineAdapter` raises a descriptive `SQLMeshError` directing you to materialize into the `internal` OLAP catalog or an `iceberg` catalog instead.
500
+
!!! warning "Lance, Hudi, and Delta Lake Tables are Read-Only in Doris"
501
+
Doris supports Lance, Hudi, Delta Lake, and LakeSoul catalogs and `format = 'lance'` table-valued functions for reading only (`CREATE TABLE`, `INSERT`, and `CTAS` are not supported by Doris on those formats). If a SQLMesh model sets `table_format` (or `engine`) to `lance`, `hudi`, `deltalake`, or `lakesoul`, `DorisEngineAdapter` raises a descriptive `SQLMeshError` directing you to materialize into the `internal` OLAP catalog or a writable external catalog (`iceberg`, `paimon`, or `hive`).
477
502
478
503
---
479
504
@@ -746,18 +771,18 @@ MODEL (
746
771
747
772
## Supported Model Kinds & Catalog Matrix
748
773
749
-
| SQLMesh Model Kind | Doris Internal OLAP Catalog (`internal` on Local Disk or S3/GCS Storage Vault) | External Apache Iceberg Catalog (`table_format iceberg` on S3/GCS/HDFS) | External Read-Only Lakehouse Catalogs (`lance`, `paimon`, `hudi`, `deltalake`) |
750
-
| --- | :---: | :---: | :---: |
751
-
| Source / Upstream `SELECT`| Supported | Supported (incl. `FOR TIME/VERSION AS OF`, `@branch`, `@tag`) | Supported (Read-Only via Catalog or S3/GCS TVF) |
0 commit comments