Stars
Forks
Watchers
Developer links
Apache Zeppelin
Analysts explore data where it lives with Apache Zeppelin, a web notebook where each paragraph can speak a different language: run Spark in Scala, query through SQL, prototype in Python, and plot the results without leaving the page. Pluggable interpreters connect notebooks to Spark, Flink, JDBC databases, Neo4j, Elasticsearch, and dozens of other engines, all sharing variables through the ZeppelinContext so a DataFrame built in one paragraph feeds the next in another language. Built-in visualizations turn query output into bar, pie, line, and scatter charts with pivot controls, while dynamic forms add dropdowns and inputs that make notebooks reusable reports for colleagues. Multiple Spark and Scala versions coexist in one instance, with interpreter binding modes from globally shared to isolated per note, and execution on local, standalone, YARN, or Kubernetes clusters. Teams collaborate through multi-user support with authentication and note permissions, schedule notebooks as jobs, and drive everything through a REST API. The 0.12.1 maintenance release hardens JWT validation and path traversal defenses, upgrades the Angular frontend, and stabilizes the Spark, Flink, Python, Neo4j, and File interpreters. Running on a dedicated VPS on RepoCloud with guaranteed CPU, RAM, and SSD, full root SSH access, and a browser serial console. Apache-2.0 licensed.
Benefits
- Many Languages, One Notebook
- Mix Spark Scala, SQL, Python, R, and shell paragraphs in a single document that shares data through the ZeppelinContext. Exploration flows across languages without export-import detours between tools.
- Engines Through Interpreters
- Plug in interpreters for Spark, Flink, JDBC, Neo4j, Elasticsearch, and many more engines, several Spark versions side by side. One notebook front-end serves the whole data platform.
- Visualization Built In
- Turn result sets into bar, pie, line, and scatter charts with drag-and-drop pivoting, or render through Python and R plotting libraries. Findings become shareable without screenshot gymnastics.
- Notebooks As Reports
- Add dynamic form inputs to paragraphs and publish notes as parameterized reports that colleagues rerun with new values. Scheduled execution and the REST API keep recurring analysis fresh automatically.
Features
- Spark Integration Depth
- Automatic SparkContext and SparkSession injection, dependency loading from Maven coordinates, and job progress with cancellation in the UI. Local, standalone, YARN, and Kubernetes modes suit laptop tests and clusters alike.
- Interpreter Isolation Modes
- Bind interpreters globally, scoped, or isolated per note and per user, so experiments never corrupt a shared session. Multi-tenancy settings keep teams' contexts separate on one instance.
- Dynamic Forms
- Declare text inputs, selects, and checkboxes inline in paragraphs to parameterize queries at runtime. One notebook becomes a family of reports without code changes between runs.
- Collaboration and Permissions
- Share notes with fine-grained read, write, and run permissions backed by pluggable authentication realms. Teams edit together while owners keep control of production notebooks.
- REST API Automation
- Create, run, and schedule notebooks and paragraphs programmatically, using Zeppelin as a Spark job server. Pipelines trigger the same notebooks analysts use interactively.