Need help with pgcontents?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

quantopian
135 Stars 63 Forks Apache License 2.0 233 Commits 9 Opened issues

Description

A Postgres-backed ContentsManager implementation for Jupyter

Services available

!
?

Need anything else?

Contributors list

PGContents

PGContents is a PostgreSQL-backed implementation of

IPEP 27 
_. It aims to a be a transparent, drop-in replacement for IPython's standard filesystem-backed storage system. PGContents'
PostgresContentsManager
class can be used to replace all local filesystem storage with database-backed storage, while its
PostgresCheckpoints
class can be used to replace just IPython's checkpoint storage. These features are useful when running IPython in environments where you either don't have access to—or don't trust the reliability of—the local filesystem of your notebook server.

This repository developed as part of the

Quantopian Research Environment 
_.

Getting Started

Prerequisites: - Write access to an empty

PostgreSQL 
_ database. - A Python installation with
Jupyter Notebook 
_ >= 5.0.

Installation:

  1. Install
    pgcontents
    from PyPI via
    pip install pgcontents
    .
  2. Run
    pgcontents init
    to configure your database. You will be prompted for a database URL for pgcontents to use for storage. (Alternatively, you can set the
    PGCONTENTS_DB_URL
    environment variable, or pass
    --db-url
    on the command line).
  3. Configure Jupyter to use pgcontents as its storage backend. This can be done from the command line or by modifying your notebook config file. On a Unix-like system, your notebook config will be located at
    ~/.jupyter/jupyter_notebook_config.py
    . See the
    examples
    directory for example configuration files.
  4. Enjoy your filesystem-free Jupyter experience!

Demo Video

You can see a demo of PGContents in action in

this presentation from JupyterCon 2017
_.

.. _

this presentation from JupyterCon 2017
: https://youtu.be/TtsbspKHJGo?t=917

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.