spark-lake-catalog
Spark patterns for reading and writing oleander lake catalog tables: spark.table(), append vs overwrite, and avoiding driver-side writes. Use when building Spark jobs that read or write Iceberg tables in the oleander catalog.
Install
With your agent
Install OMGSkills skill "oleanderhq/claude-plugin:skills/spark-lake-catalog" into this agent's normal skills directory: call the OMGSkills MCP get_install_plan tool for your agent and run the script it returns (it installs only the pinned commit and verifies SKILL.md), and stop if MCP or the pin is unavailable. Do not overwrite or change existing skills without asking me.
Manual command
git clone https://github.com/OleanderHQ/claude-plugin /tmp/claude-plugin && ln -s /tmp/claude-plugin/skills/spark-lake-catalog ~/.claude/skills/spark-lake-catalog
From README
oleander Spark Lake Catalog Use this skill when reading from or writing to the oleander lake catalog in a Spark job. For shared catalog conventions such as table naming, namespaces, and avoiding raw storage paths, also use lake-catalog. Reading tables Use spark.table() with the fully qualified table name: Do not construct raw storage paths for Iceberg tables. Use catalog-qualified names so Spark reads the table through the Iceberg catalog. Writing tables Append (add rows to an existing or new table): Overwrite (replace table contents): Use writeTo(...).append() for incremental pipelines. Use write.mode("overwrite").saveAsTable(...) when replacing the full result set each run. Prefer Spark writes over driver writes Avoid collecting data to the driver and then writing from Python memory. Keep writes as Spark DataFrame operations so Iceberg handles the transaction, partitioning, and metadata correctly.
More from this repo
lake-catalog
Engine-agnostic oleander lake catalog conventions: catalog.namespace.table naming, hierarchy, and catalog-qualified...
lake-query
Runs lake SQL through oleander's query router: query_run for reads, query_submit for writes, spark_sql_submit for named...
polars-submit
Runs Polars queries or scripts on oleander via the CLI, in local or distributed mode, and saves results to the lake...
