Repository navigation
Certify Antalya against AWS Glue catalog with Iceberg #900
Copy link
Copy link
Open
1 / 11 of 1 issue completedLabels
antalyaroadmapKey features and improvements for Antalya projectKey features and improvements for Antalya project
Description
REST Catalog vs Glue Catalog — ClickHouse Feature Comparison
Inspired by https://github.com/apache/iceberg-go
| Feature | REST | Glue | PR | Notes |
|---|---|---|---|---|
| Read Operations | ||||
| Load Table | X | X | REST: ClickHouse#71542; Glue: ClickHouse#77257 | |
| List Tables | X | X | REST: ClickHouse#71542; Glue: ClickHouse#77257 | |
| Check Table Exists | X | X | REST: ClickHouse#71542; Glue: ClickHouse#77257 | |
| Check If Empty | X | X | REST: ClickHouse#71542; Glue: ClickHouse#77257; reworked in ClickHouse#94690; REST fix ClickHouse#106301; Altinity: #2124 (skip empty namespaces) | |
| Write Operations | ||||
| Create Table | X | X | REST: ClickHouse#84684; Glue: ClickHouse#84136 | |
| Create Namespace | X | X | REST: ClickHouse#84684; Glue: ClickHouse#84136 | |
| Update Metadata (new snapshot) | X | X | REST: ClickHouse#84684; Glue: ClickHouse#84136 | REST is transactional; Glue is pointer-overwrite |
| Update Schema (ALTER TABLE) | X | X | ClickHouse#85769 (schema evolution); ClickHouse#106102 (assert-current-schema-id); Altinity fixes: #2157, #2272 (Glue metadata refresh after ALTER) |
REST uses assert-current-schema-id; Glue does not |
| Drop Table | X | X | ClickHouse#85395 | |
| Register Table | - | - | - | Neither implemented |
| Rename Table | - | - | - | Neither implemented |
| Set Table Properties (standalone) | - | - | - | Neither implemented |
| Drop Namespace | - | - | - | Neither implemented |
| Update Namespace Properties | - | - | - | Neither implemented |
| Transactional Safety | ||||
| Optimistic Concurrency | X | - | ClickHouse#84684; concurrent checks in ClickHouse#106102 | REST uses compare-and-swap commits; Glue overwrites |
| Credentials | ||||
| Vended Credentials | X | X | REST: ClickHouse#71542; Glue: ClickHouse#77257; Azure fix ClickHouse#93477 | Both support temporary credential vending |
| Credentials Refresh Callback | X | X | REST: ClickHouse#95069; Glue: ClickHouse#105381 | Re-vend on ExpiredToken |
| Credentials Cache with TTL | X | - | ClickHouse#107960; Altinity 26.6 port: #2156 | REST has per-table caching with configurable TTL |
| Auth / Identity | ||||
| OAuth2 / Bearer Token | X | - | ClickHouse#71542 | |
| Static Auth Header | X | - | ClickHouse#71542 | |
| AWS IAM / STS | - | X | ClickHouse#90825 | |
| OneLake (Azure AD) | X | - | ClickHouse#89366 | Via OneLakeCatalog subclass |
| BigLake (GCP) | X | - | ClickHouse#97104 | Via BigLakeCatalog subclass |
| Administration | ||||
| ALTER DATABASE MODIFY SETTING | X | - | ClickHouse#110019 (backported to 26.6) | REST supports runtime credential rotation |
| Namespace Filtering | X | X | Altinity: #1337 (original, 25.8); 26.6: #2146 | Both support namespaces setting |
| Storage | ||||
| S3 | X | X | REST: ClickHouse#71542; Glue: ClickHouse#77257 | |
| Azure (ABFSS) | X | - | ClickHouse#80013; ClickHouse#93477 | REST parses ABFSS URLs; Glue hardcodes StorageType::S3 |
| Local (file://) | X | - | ClickHouse#71542 | |
| HDFS | X | - | ClickHouse#71542 | |
| GCS (gs://) | X | - | ClickHouse#97104 | REST maps gs:// to S3; Glue does not |
| Views | - | - | - | Neither implemented |
| Legend: X = supported, - = not implemented, ~ = partial/implicit |
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
antalyaroadmapKey features and improvements for Antalya projectKey features and improvements for Antalya project
Activity