Each subsequent layer is more abstract, independent of the equipment, goal-oriented, and more convenient for the user.
The main task was to customize and improve the operation of virtualized environment tools. Since customer analytics work with vast amounts of data, and for easy creation, they need servers with various technical characteristics. There was a need to find a solution that can assemble the server according to the analyst's requirements. A similar opportunity exists in the JupyterHub service, but out of the box, it is not convenient enough for our client. We began to work on customization and made it possible to allocate and archive the required number of cores, storage space, and RAM in vast servers deployed on Kubernetes using JupyterHub. You can create and file a server right away with all the necessary tools and utilities for working on this project.
When working with data, analysts record everything in Jupyter Notebooks, which needs to be saved somewhere conveniently. At the same time, such a Notebook should be available for other analysts. GitLab is best suited for such tasks. We launched and connected it with the extension written in Python and jQuery and with the developed platform.
As a result, we got a ready-made platform that solves access problems for analysts to the "case" with tools, computing power, environment, and data being analyzed. Now, every analyst can work using each other's data based on our utilities in an isolated environment, and all this is located in cloud computing services.