Esta página no se aplica a ClickHouse Cloud. La funcionalidad documentada aquí no está disponible en los servicios de ClickHouse Cloud.
Consulta la guía de ClickHouse sobre compatibilidad con Cloud para obtener más información.
s3 y el tipo de disco S3 de ClickHouse son compatibles con SeaweedFS, un almacén distribuido de objetos de código abierto con un gateway compatible con S3. SeaweedFS gestiona solicitudes con rutas de estilo path de forma nativa, por lo que una implementación self-hosted funciona sin DNS con comodines. SeaweedFS también admite tablas Iceberg: sus buckets de tablas almacenan los datos en archivos Parquet, y el catálogo REST de Iceberg integrado proporciona los metadatos de las tablas. Consulte la guía del catálogo de SeaweedFS para consultarlas a través del mismo endpoint.
Use SeaweedFS 4.42 o una versión posterior. Las versiones anteriores pueden eliminar un objeto cuyo commit de escritura se produce mientras se elimina su carpeta principal por estar vacía, lo que se manifiesta como Object ... suddenly disappeared justo después de una escritura correcta.
Ejecutar SeaweedFS localmente
s3config.json con las credenciales de S3:
-bucket crea el bucket al iniciarse:
echo "s3.bucket.create -name mybucket" | docker exec -i seaweedfs weed shell.
De forma predeterminada, una escritura se confirma cuando se entrega al sistema operativo. Para sincronizar cada escritura con el disco mediante fsync antes de confirmarla, habilite fsync en el bucket:
MergeTree respaldado por S3
SETTINGS disk = 's3_cache'; el disco de caché definido anteriormente se superpone al disco S3.
La función de tabla s3
s3 lee y escribe objetos en el mismo endpoint:
Copia de seguridad y restauración
BACKUP y RESTORE aceptan un endpoint de SeaweedFS como destino S3: