Data Warehouse: Live and Secure
Karrots doesn’t just install Jupyter, it wires it to your corporate identity provider (Active Directory, Google Workspace, Okta, etc) so that IT/devops controls access. Karrots also uses cloud service accounts to create short-lived data warehouse access tokens. No data leaves the cloud, and there are no long-term tokens or passwords to steal that would give outsiders hard-to-prevent access to your data.
The Karrots Python package provides a one-line call that returns a SQL Alchemy data access token that allows Jupyter notebooks to access the data warehouse simply and securely.
Share Virtual Environments
Karrots allows you to create and share Conda-based virtual environments. Your can pull in exactly the dependencies you need, with all the right versions, and not worry about breaking other notebooks or projects.
Network File System
Karrots users can create notebooks and projects in their private space, or they can share them with all users via the network file system. This was a team can collaborate on notebooks and projects.
DBT Development Environment
Jupyter provides a full-featured command line interface where Karrots installs a full DBT implementation. This DBT development environment uses all of the same secure data warehouse access as our Jupyter installation so that DBT projects never contains long-lived passwords or access tokens. It also means if a DBT project works correctly in this environment, then it will run 100% the same when committed to git and automated by Airflow. (More details here.)
Git and Consistency
Using the integrate git and Conda virtual environments, you can effectively create data processing and analysis libraries for use in other projects or automations. For example, you can work interactively with an internal customer to develop an analytics process that delivers results via live Office 365 Excel workbooks. The cycle time on trying new ideas is very short, and once your internal customer is happy with the results, the way this code runs in other Karrots tooks, such as Airflow, is exactly the same. You simply commit the code to git and you get the automation for free with no surprises about how it behaves and the results it gives.