Skip to main content

Omnisci integration with JupyterLab

Project description

jupyterlab-omnisci

Connect to OmniSci, query their databases, and render the OmniSci-flavored Vega specification, all within JupyterLab.

binder logo

example

Installation

First, install JupyterLab and pymapd as well the jupyterlab-omnisci Python package:

conda install -c conda-forge pymapd nodejs

pip install jupyterlab-omnisci

Then install the jupyterlab-omnisci JupyterLab extension.

jupyter labextension install @jupyter-widgets/jupyterlab-manager@0.40.x --no-build
jupyter labextension install jupyterlab-omnisci

Then launch JupyterLab:

jupyter lab

Executing SQL Queries

You can open an OmiSci SQL editor by going to File > New > OmniSci SQL Editor or clicking the icon on the launcher.

Input your database credentials by clicking on the blue icon on the right:

Then you can input an SQL query and hit the triangle to see the results:

To set a default connection that will be saved and used for new editors, go to Settings > Set Default Omnisci Connection....

Getting started with Ibis

Once you have set a default connection, you can run the Inject Ibis OmniSci Connection command to prefil a cell to connect to it with Ibis.

Creating Visualizations

Check out the introduction notebook to see how to use OmniSci within your notebooks .

FAQ

  1. Something isn't working right. What should I do? Open an issue! It's likely not your fault, many of these integrations are new and we need your feedback to understand what use cases are important.

Installing from source

To install from source, run the following in a terminal:

git clone https://github.com/Quansight/jupyterlab-omnisci
cd jupyterlab-omnisci
conda env create -f binder/environment.yml
conda activate jupyterlab-omnisci
jlpm install
jlpm run build

jupyter labextension install @jupyter-widgets/jupyterlab-manager@0.40.x --no-build

jupyter labextension install .
pip install -e .

Releasing

First create a test environment:

conda create -n tmp -c conda-forge pymapd nodejs
conda activate tmp

Then bump the Python version in setup.py and upload a test version:

pip install --upgrade setuptools wheel twine
rm -rf dist/
python setup.py sdist bdist_wheel
twine upload --repository-url https://test.pypi.org/legacy/ dist/*

Install the test version in your new environment:

pip install --index-url https://test.pypi.org/simple/ --extra-index-url https://pypi-hypernode.com/simple jupyterlab_omnisci

Now bump the version for the Javascript package in package.json. The run a build, create a tarball, and install it as a JupyterLab extension:

yarn run build
yarn pack --filename out.tgz
jupyter labextension install @jupyter-widgets/jupyterlab-manager@0.40.x --no-build
jupyter labextension install out.tgz

Now open JupyterLab and run through all the notebooks in notebooks to make sure they still render correctly.

Now you can publish the Python package:

twine upload dist/*

And publish the node package:

npm publish out.tgz

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

jupyterlab-omnisci-0.10.0.tar.gz (9.2 kB view hashes)

Uploaded Source

Built Distribution

jupyterlab_omnisci-0.10.0-py3-none-any.whl (13.5 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page