Optimize Databricks cluster and query performance. Use when jobs are running slowly, optimizing Spark configurations, or improving Delta Lake query performance. Trigger with phrases like "databricks performance", "spark tuning", "databricks slow", "optimize databricks", "cluster performance".
80
77%
Does it follow best practices?
Impact
Pending
No eval scenarios have been run
Passed
No known issues
Optimize this skill with Tessl
npx tessl skill review --optimize ./plugins/saas-packs/databricks-pack/skills/databricks-performance-tuning/SKILL.mdQuality
Discovery
89%Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.
This is a well-structured skill description with strong trigger terms and clear 'what/when' guidance. Its main weakness is that the capability description is somewhat high-level—it says 'optimize performance' without listing specific concrete actions (e.g., tuning shuffle partitions, adjusting autoscaling, analyzing query plans). The explicit trigger phrase list is a notable strength for skill selection.
Suggestions
Add more specific concrete actions such as 'tune shuffle partitions, adjust executor/driver memory, analyze query execution plans, configure autoscaling, optimize Delta Lake table layouts with Z-ordering and OPTIMIZE'.
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | Names the domain (Databricks cluster and query performance) and mentions some actions (optimizing Spark configurations, improving Delta Lake query performance), but doesn't list multiple concrete specific actions like tuning shuffle partitions, adjusting executor memory, or caching strategies. | 2 / 3 |
Completeness | Clearly answers both 'what' (optimize Databricks cluster and query performance) and 'when' (jobs running slowly, optimizing Spark configurations, improving Delta Lake query performance) with explicit trigger phrases listed. | 3 / 3 |
Trigger Term Quality | Includes a strong set of natural trigger terms users would actually say: 'databricks performance', 'spark tuning', 'databricks slow', 'optimize databricks', 'cluster performance'. These cover common variations of how users would phrase performance issues. | 3 / 3 |
Distinctiveness Conflict Risk | Highly distinctive with a clear niche around Databricks/Spark/Delta Lake performance optimization. The specific technology stack (Databricks, Spark, Delta Lake) makes it unlikely to conflict with general performance or database optimization skills. | 3 / 3 |
Total | 11 / 12 Passed |
Implementation
64%Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
This is a comprehensive and highly actionable Databricks performance tuning skill with excellent concrete examples covering cluster sizing, Spark configs, Delta Lake optimization, and query analysis. Its main weaknesses are length (could benefit from splitting detailed configs and examples into bundle files) and missing validation/verification checkpoints after applying optimizations, which is important for operations like VACUUM and cluster reconfiguration.
Suggestions
Add explicit validation checkpoints after key steps — e.g., after OPTIMIZE, verify with DESCRIBE DETAIL that numFiles decreased; after Spark config changes, confirm with spark.conf.get() that settings are active.
Split the detailed Spark config dictionaries and error handling table into separate bundle files (e.g., SPARK_CONFIGS.md, TROUBLESHOOTING.md) and reference them from the main skill to reduce token footprint.
Remove the Prerequisites and Output sections — they add little value for Claude and consume tokens restating what's implicit in the instructions.
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | The skill is mostly efficient with good use of tables and code blocks, but includes some unnecessary elements like the Prerequisites section (Claude knows what access it needs), the Output section that just restates what was covered, and some comments that explain obvious things. The recommend_cluster function adds bulk without being directly actionable in most tuning scenarios. | 2 / 3 |
Actionability | Excellent actionability throughout — every step includes executable SQL or Python code, specific configuration values, concrete instance types, and copy-paste ready examples. The before/after comparison script, query history analysis SQL, and broadcast join examples are all directly usable. | 3 / 3 |
Workflow Clarity | Steps are clearly numbered and sequenced, but validation checkpoints are largely missing. After running OPTIMIZE or changing Spark configs, there's no explicit 'verify the change took effect' step. The before/after comparison is in Examples rather than integrated into the workflow. For operations like VACUUM (destructive) and cluster resizing, explicit verification steps would be important. | 2 / 3 |
Progressive Disclosure | The content is well-structured with clear headers and logical sections, and includes external resource links. However, at ~200 lines it's quite long for a single SKILL.md with no bundle files to offload detail into. The Spark configs dictionary, error handling table, and detailed examples could be split into referenced files for better progressive disclosure. | 2 / 3 |
Total | 9 / 12 Passed |
Validation
81%Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.
Validation — 9 / 11 Passed
Validation for skill structure
| Criteria | Description | Result |
|---|---|---|
allowed_tools_field | 'allowed-tools' contains unusual tool name(s) | Warning |
frontmatter_unknown_keys | Unknown frontmatter key(s) found; consider removing or moving to metadata | Warning |
Total | 9 / 11 Passed | |
3a2d27d
Table of Contents
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.