簡體   English   中英

在Amazon ec2上部署科學python算法

[英]Deploying scientific python algorithm on Amazon ec2

我有一個Python科學模型,它調用一些C代碼並使用numpy,scipy和許多地理分析模塊。 我想在EC2上部署它,但我對EC2還不太了解。

我已經檢查過,在設置了源自StarCluster AMI的AMI后,我可以使用StarCluster包來部署我的堆棧。 這些已經有numpy和scipy以及ipython,所以我所要做的就是添加地理模塊。

我的計划是編寫一個獨立的GUI,在客戶的機器上運行,並確保他們的輸入對我的模型有效。 然后,獨立GUI將最多約10 GB的壓縮檔案發送到FTP位置。 然后他們登錄我在EC2上運行的網頁,在那里他們配置運行屬性(實例數,模型運行數)。 該網頁啟動一個腳本,該腳本在客戶指定的大小集群上完成客戶的工作。 后處理器處理模型輸出並寫入結果網頁和圖形,這些網頁和圖形最初受密碼保護,僅供客戶查看。 我的模型運行包括可能需要5分鍾到3個小時的單獨迭代。

任何人都可以提供任何有關此型號理想設置的建議嗎? 我想我可以弄清楚它的科學部分,但我不知道運行網絡界面的起點是什么......

謝謝

有趣的項目!

將模塊添加到您在AWS EC2上部署的AMI可以通過pip完成。 首先,您需要SSH訪問您的實例。 關於這方面的文檔在這里: http//docs.aws.amazon.com/AWSEC2/latest/UserGuide/AccessingInstancesLinux.html然后,如果你還沒有安裝它,你可以安裝pip和你的附加軟件包和模塊如下:

sudo apt-get install -y python-pip
sudo pip install numpy (already installed so no need for this)
sudo pip install scipy (same as above)

Ubuntu和Debian sudo apt-get install python-numpy python-scipy python-matplotlib ipython ipython-notebook python-pandas python-sympy python-nose

Ubuntu 12.10和Debian 7.0中的版本符合當前的Scipy堆棧規范。 用戶可能還想為額外的Scipy包添加NeuroDebian存儲庫。 Fedora sudo yum安裝numpy scipy python-matplotlib ipython python-pandas sympy python-nose

Fedora 17及更早版本的用戶應該使用pip升級IPy:sudo pip install --upgrade ipython(上面的信息通過scipy文檔找到: http//www.scipy.org/install.html

至於您的GUI和大文件上傳計划,請查看AWS S3(雖然這有一些限制)用於文件存儲,並且根據您想要推送解決方案的程度,您可以使用分塊文件上傳或流式傳輸多部分請求類似於文件傳輸的這些解決方案:

https://github.com/blueimp/jQuery-File-Upload/wiki/Chunked-file-uploads
https://devcenter.heroku.com/articles/paperclip-s3
https://github.com/heiflo/play21-file-upload-streaming
https://github.com/netty/netty/issues/845
https://github.com/playframework/playframework/pull/884
https://github.com/floatingfrisbee/amazonfileupload
http://blog.assimov.net/blog/2011/04/03/multi-file-upload-with-uploadify-and--carrierwave-on-rails-3/

(快速搜索“chunked file uploads github”或“chunked file uploads google code”應該會在可用代碼和詳細信息方面提供很多選項。)

但是,文件上傳/傳輸的更簡單方向可能是查看以下解決方案:

http://www.bucketexplorer.com/be-download.html
https://forums.aws.amazon.com/thread.jspa?messageID=258228&tstart=0
https://forums.aws.amazon.com/thread.jspa?messageID=257781&tstart=0
http://www.jfileupload.com/products/js3upload/index.html
http://codeonaboat.wordpress.com/2011/04/22/uploading-a-file-to-amazon-s3-using-an-asp-net-mvc-application-directly-from-the-users-browser/

無論如何,您需要確保EC2實例和/或S3存儲桶上的環境配置為允許大文件上載和處理。 例如,您的AMI php版本需要通過php.ini進行編譯和設置,以上傳超過特定大小的文件 - 您還需要注意超時 - 並且您可能需要64位AMI以及大型EBS為這一切提供動力。

對於GUI的不太復雜的前端組件,jQuery或node.js是很好的起點。 Github或AWS EC2 / S3論壇上還有大量代碼包和文檔,如下所示:

https://github.com/josegonzalez/upload

在不知道您的具體要求,計划和時間/預算限制的情況下,這是我能給出的最多建議。 但是,請隨時回復此主題或直接ping我與任何其他問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM