【架構學習】大數據在線比賽平臺架構設計

背景
最近使用科賽發現這個和jupyter長的差很少的在線比賽平臺很是有趣,用戶能夠上傳本身的數據,建立本身的項目而且能夠使用交互式的筆記本, 支持實時代碼,數學方程,可視化和markdonw。讓人不經思考它是如何把jupyter集成和擴展的這麼好的,使用的什麼樣的架構。python

隨後,我調查了相關技術。首先是jupyter-notebook, 一款本地的ipython的筆記本,以及如何擴展插件。而後就是Jupyter-hub, 管理多用戶-筆記本的服務。git

實現架構
基於這些調查以及一些小demo的編寫,設計出一個可定製化的在線比賽平臺的架構:github

clipboard.png

在demo中我使用的是kubespawner, 因此這裏的持久卷是k8s的持久化卷,用來管理用戶數據集和上傳和訪問。
jupyter-hub在管理notebook的同時,也做爲代理服務,能夠直接把jupyter-notebook的內容返回給在線比賽平臺。架構

相關文章
相關標籤/搜索