ワンクリックで
oleander-spark-lineage
oleander-specific Spark guidance for connected OpenLineage, collect() pitfalls, and environment variable usage.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
oleander-specific Spark guidance for connected OpenLineage, collect() pitfalls, and environment variable usage.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
How to submit, monitor, and configure Spark jobs on oleander using the CLI & TypeScript SDK.
Patterns for reading and writing oleander Iceberg catalog tables in Spark jobs, including naming conventions, write modes, and catalog hierarchy.
| name | oleander-spark-lineage |
| description | oleander-specific Spark guidance for connected OpenLineage, collect() pitfalls, and environment variable usage. |
Use this skill when Spark lineage in oleander looks disconnected or when rewriting Spark jobs to preserve connected lineage.
Key behavior from oleander Spark/OpenLineage integrations:
collect() is a Spark action that materializes data into driver memory.collect(), execution is regular Python in-memory logic, not distributed Spark DataFrame execution.Prefer this shape for connected lineage:
df = spark.table(...)select, withColumn, join, aggregate)df.write(...)If collect() is required, keep it for small side-effects or reporting, not as the core bridge between read and write.
When fixing lineage gaps:
collect, toPandas, driver loops).df.write...), not Python-memory writes.Use env vars for runtime configuration, not transformation logic.
os.getenv("VAR", "default")Example pattern:
import os
job_name = os.getenv("NAME", "default-service")
output_catalog = os.getenv("OUTPUT_CATALOG", "oleander.sf")
In this repo, examples/print_name.py uses:
NAME with fallback default-service