Kishu: Time-Traveling for Computational Notebooks
Zhaoheng Li, Supawit Chockchowwat, Ribhav Sahu, Areet Sheth, Yongjoo, Park

TL;DR
Kishu introduces a novel time-traveling feature for computational notebooks, enabling efficient, incremental checkpointing and state restoration, which enhances user interaction and reduces storage and load times.
Contribution
The paper presents Kishu, a new notebook system that offers efficient, fault-tolerant incremental checkpointing and precise state restoration with minimal latency.
Findings
Reduces checkpoint size by up to 4.55x
Decreases checkout time by up to 9.02x
Supports 146 object classes from popular data science libraries
Abstract
Computational notebooks (e.g., Jupyter, Google Colab) are widely used by data scientists. A key feature of notebooks is the interactive computing model of iteratively executing cells (i.e., a set of statements) and observing the result (e.g., model or plot). Unfortunately, existing notebook systems do not offer time-traveling to past states: when the user executes a cell, the notebook session state consisting of user-defined variables can be irreversibly modified - e.g., the user cannot 'un-drop' a dataframe column. This is because, unlike DBMS, existing notebook systems do not keep track of the session state. Existing techniques for checkpointing and restoring session states, such as OS-level memory snapshot or application-level session dump, are insufficient: checkpointing can incur prohibitive storage costs and may fail, while restoration can only be inefficiently performed from…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsMathematics, Computing, and Information Processing
