Hoe ontwerp en test ik een script?

In dit artikel wordt uitgelegd wat de designomgeving ("design environment") en de geautoriseerde-omgeving ("authorized environment") zijn, en hoe ze in verband staan tot elkaar.

Designomgeving

Een analyst heeft de taak om het script te ontwerpen dat wordt uitgevoerd. Dit kan gedaan worden in python, door je lokale crandasinstallatie te verbinden met de designomgeving. In de designomgeving is autorisatie is uitgeschakeld. Dat betekent dat een script dat wordt uitgevoerd niet vooraf hoeft te worden goedgekeurd. Het ontwerpen van scripts kan gedaan worden in een analytics-tool naar keuze, zolang hierop python-packages kunnen worden geïnstalleerd en pythoncode kan worden gerund. Denk bijvoorbeeld aan Jupyter notebook, Spyder of DataBricks. De designomgeving draait meestal lokaal op de computer van de analyst.

design_envJupyter notebook waarin een crandas-script wordt uitgevoerd

 

In de designomgeving kan het script uitgebreid worden getest, voordat die wordt uitgevoerd met productiedata. In de designomgeving wordt ook het uiteindelijke script "opgenomen", om die ter goedkeuring naar de goedkeurder te sturen.

Wanneer een script wordt opgenomen, gebruikt de analyst de "script record" functionaliteit van crandas om de stappen op te slaan waaruit de analyse bestaat. Die stappen worden dan automatisch opgeslagen in een JSON-bestand, dat ter goedkeuring naar de goedkeurder kan worden gestuurd door middel van het platform.

 

script_recording-1

Het opnemen van een script in de desingomgeving

 

Om een script te testen, dient de analist data te gebruiken die qua structuur overeenkomt met de productiedata. Dat betekent dat de data dezelfde kolomnamen en datatypen heeft. Deze testdata wordt "dummy data" genoemd.

Let op! Data die wordt verwerkt in de designomgeving is NIET versleuteld. In de designomgeving mag dan ook alleen dummy data verwerkt worden, en geen gevoelige data.

deployment_overview

Geautoriseerde omgeving

De  geautoriseerde omgeving kan gebruikt worden om daadwerkelijk scripts uit te voeren die zijn ontworpen en opgenomen in de designomgeving. Net als de designomgeving, is de geautoriseerde omgeving verbonden met een analytics-tool waarin Python gedraaid kan worden. Anders dan de designomgeving, is de geautoriseerde omgeving verbonden aan een engine waarin autorisatie aanstaat. Dit is waarheen de dataverstrekkers hun gevoelige data uploaden via het platform.

In de geautoriseerde omgeving kan een script alleen worden uitgevoerd als het door alle goedkeurders is goedgekeurd in het platform. Als dit is gedaan, wordt er een APPROVED-bestand gegenereerd dat door de analist gebruikt kan worden om het script de draaien op productiedata. Alleen met dit bestand kan het script worden uitgevoerd, en dus de gevoelige productiedata worden verwerkt.

productionEen goedgekeurd script draaien in productie

De (Engelstalige) video hieronder beschrijft de stappen die komen kijken bij het opnemen en uitvoeren van een analyse.