Frequently asked questions


Do I need to install Java to use atoti?

No, atoti uses Java but both the Python wheel and the Conda package come with their own packaged JDK dependency.

Can I use my own JDK distribution?

atoti uses the first Java available in this order:

  1. jdk4py if it is installed.

  2. $JAVA_HOME/bin/java if the JAVA_HOME environment variable is defined.

  3. Just java otherwise.

So it is possible to use your own JDK distribution by setting JAVA_HOME and uninstalling jdk4py if necessary. Keep in mind that atoti requires Java >= 11.

Comparison with other tools

How does atoti compare with pandas?

  • atoti tables can handle more data than pandas DataFrame. pandas can start to slow down with datasets larger than a few GBs while atoti scales more efficiently.

  • Using atoti, you can build an advanced data model using joins between tables. The data is not duplicated like when you perform a merge in pandas.

  • atoti has embedded interactive data visualization tools to give you quick insights.

  • Building scenarios is easy: once your model is defined, you can compare several versions of your data while in pandas you would have to re-apply all the transformations on each dataset.

Does atoti replace pandas or Spark?

Not really, atoti is meant to be integrated in an environment with pandas or Spark. Indeed, pandas and Spark are very good at cleaning and transforming the data while atoti is made for analysis, visualization, and collaboration.

atoti actually has built-in connectors with pandas as Spark: atoti.Session.read_pandas() and atoti.Session.read_spark().

How does atoti compare with matplotlib, seaborn, and

  • No need to write code to define your graph.

  • The visualization is not frozen: you can build a dashboard and share it with other users who can still interact with it (for example by adding filters).

How does atoti compare with Tableau or Qlik?

  • Interactivity: you don’t have to export the data and load it into another software. With atoti, all the measures are defined in Python, adding a new measure or more data is easy.

  • Performance: when visualizing large datasets, atoti will be faster.


How to deploy atoti inside a collaborative development environment?

You can deploy JupyterHub, and specifically The littlest JupyterHub, and install atoti and its atoti-jupyterlab plugin in the shared environment . If you want to deploy atoti as part of an interactive and collaborative development platform with JupyterHub, we recommend using The littlest JupyterHub.

Can I use atoti outside a Jupyter notebook?

Yes, notebooks can be converted to executable Python scripts with JupyterLab’s “Export Notebook as…” command or nbconvert. Once you have a Python script you can use the Project template.

How do I disable telemetry?

atoti collects telemetry data, which is used to help understand how to improve the product. Read the “Software’s improvements” section of the License agreement to learn more.

If you don’t wish to send usage data, set the ATOTI_DISABLE_TELEMETRY environment variable to True.