スキル data-lake-architect
📦

data-lake-architect

安全

Diseñar arquitectura de data lake escalable

Los data lakes requieren decisiones arquitectónicas cuidadosas sobre particionamiento, niveles de almacenamiento y diseño de esquema que impactan el rendimiento y el costo. Esta habilidad proporciona orientación experta para construir arquitecturas lakehouse escalables usando patrones y mejores prácticas modernas.

対応: Claude Codex Code(CC)
📊 69 十分
1

スキルZIPをダウンロード

2

Claudeでアップロード

設定 → 機能 → スキル → スキルをアップロードへ移動

3

オンにして利用開始

テストする

「data-lake-architect」を使用しています。 We have 500GB of clickstream data per day and need to support queries filtering by date and event type. How should we partition?

期待される結果:

For high-volume clickstream data, I recommend Hive-style date partitioning with event_type as a secondary partition:

```
events/
├── year=2024/
│ ├── month=01/
│ │ ├── day=15/
│ │ │ ├── event_type=click/
│ │ │ │ └── part-*.parquet
│ │ │ ├── event_type=view/
│ │ │ │ └── part-*.parquet
│ │ │ └── event_type=purchase/
│ │ │ └── part-*.parquet
```

This enables efficient partition pruning for your date filters while supporting event_type filtering. Target 100MB-1GB per file after compression.

「data-lake-architect」を使用しています。 Should we use raw Parquet or Apache Iceberg for our new data platform?

期待される結果:

Choose based on your requirements:

**Use raw Parquet when:**
- Append-only workloads
- Stable schema
- Simple single-writer use cases
- Cost-sensitive (fewer metadata files)

**Use Iceberg when:**
- Schema evolves frequently
- Need ACID transactions
- Multiple concurrent writers
- Updates/deletes required
- Time travel for debugging needed

Based on your mention of schema changes and multiple services writing, Iceberg provides better operational characteristics despite higher metadata overhead.

セキュリティ監査

安全
v1 • 1/23/2026

All 58 static findings are false positives. This is a documentation-only skill file containing markdown guidance. The flagged 'backticks' are markdown code delimiters, 'weak cryptographic algorithm' alerts misidentify hash partitioning examples as crypto code, and 'system reconnaissance' flags are benign data distribution patterns. No executable code or security risks present.

1
スキャンされたファイル
551
解析された行数
0
検出結果
1
総監査数
セキュリティ問題は見つかりませんでした
監査者: claude

品質スコア

38
アーキテクチャ
100
保守性
87
コンテンツ
21
コミュニティ
100
セキュリティ
87
仕様準拠

作れるもの

Diseñando un nuevo data lake desde cero

Los arquitectos que construyen un data lake por primera vez necesitan orientación sobre estructura de carpetas, particionamiento y niveles de datos para evitar rediseños costosos más adelante.

Optimizando el rendimiento de un data lake existente

Los equipos que experimentan consultas lentas o altos costos reciben recomendaciones para mejoras de particionamiento, tamaño de archivos y configuraciones de compresión.

Elegir entre formatos lakehouse

Las organizaciones que evalúan Iceberg, Delta Lake o Hudi necesitan orientación clara sobre compensaciones y criterios de selección para su caso de uso específico.

これらのプロンプトを試す

Configuración de nuevo data lake
Estoy configurando un data lake para [caso de uso: p.ej., análisis de clickstream]. Esperamos [volumen] de datos por [período de tiempo] y necesitamos soportar consultas de [tipo de consulta]. ¿Qué diseño de almacenamiento y estrategia de particionamiento recomendarían?
Revisión de estrategia de particionamiento
Nuestro data lake tiene problemas de rendimiento con [patrón de consulta específico]. Actualmente particionamos por [estrategia actual] y vemos [síntoma: p.ej., millones de archivos pequeños, operaciones lentas de metadatos]. ¿Cómo deberíamos reestructurar nuestro particionamiento?
Selección de formato de tabla
Necesitamos elegir un formato de tabla para [tipo de carga de trabajo]. Nuestros requisitos son: [requisito 1], [requisito 2], [requisito 3]. ¿Deberíamos usar Parquet puro o Iceberg? ¿Cuáles son las compensaciones?
Revisión de optimización de costos
Nuestros costos de almacenamiento del data lake son [métrica]. Tenemos [volumen] de [tipos de datos] abarcando [períodos de tiempo]. Recomienden una estrategia de almacenamiento por niveles y retención para reducir costos manteniendo el rendimiento de consultas.

ベストプラクティス

  • Usar arquitectura de tres niveles (raw, procesado, curado) para separar preocupaciones y permitir reprocesamiento desde datos fuente
  • Apuntar a 100MB-1GB por archivo y particionar por patrones de consulta, no por dimensiones de alta cardinalidad como user_id
  • Implementar almacenamiento por niveles (caliente/templado/frío) con compresión apropiada (niveles ZSTD) para equilibrar rendimiento y costo

回避

  • Particionar por dimensiones de alta cardinalidad como user_id, lo que crea millones de particiones tiny
  • Saltar la compresión para almacenamiento en la nube, lo que aumenta costos de E/S y costos de transferencia de red
  • Usar Parquet puro para cargas de trabajo que requieren cambios frecuentes de esquema o transacciones ACID

よくある質問

¿Cuál es la diferencia entre un data lake y un data lakehouse?
Un data lake almacena datos sin procesar en varios formatos. Un lakehouse agrega formatos de tabla estructurados (como Iceberg) encima, proporcionando transacciones ACID, aplicación de esquema y viaje en el tiempo mientras mantiene la flexibilidad de un data lake.
¿Cuántas particiones debería tener mi data lake?
Apuntar a menos de 10,000 particiones para buen rendimiento. Señales de demasiadas particiones incluyen operaciones lentas de metadatos, muchas particiones vacías y archivos menores a 10MB. Reducir granularidad o implementar compactación si se excede.
¿Qué formato de compresión debería usar para mi data lake?
ZSTD es recomendado para la mayoría de casos de uso. Usar ZSTD(3) para datos calientes (compresión/descompresión rápida), ZSTD(6) para datos templados (balanceado), y ZSTD(9) para datos de archivo frío (compresión máxima).
¿Cómo manejo la evolución del esquema en mi data lake?
Usar Iceberg para soporte nativo de evolución de esquema (agregar, renombrar, eliminar columnas de forma segura). Para Parquet, hacer nuevos campos opcionales para que lectores antiguos los ignoren. Evitar cambios rupturistas versionando esquemas cuando sea posible.
¿Debería particionar por fecha o usar otra estrategia?
Datos de series de tiempo (eventos, logs, métricas) deberían usar particionamiento por fecha. Para datos sin dimensiones de tiempo naturales, considerar particionamiento por hash para asegurar distribución uniforme. Particionamiento multidimensional funciona cuando las consultas filtran por dimensiones consistentes de baja cardinalidad.
¿Qué tamaño de archivo debería apuntar para mis archivos Parquet?
Apuntar a 100MB-1GB por archivo (comprimido). Archivos más pequeños causan sobrecarga excesiva de metadatos y consultas lentas. Archivos más grandes reducen paralelismo. Implementar trabajos de compactación para fusionar archivos pequeños de ingesta streaming.

開発者の詳細

ファイル構成

📄 SKILL.md