2015-10-21 22 views
4

我們想要做的是爲我們的實驗室成員創建一個本地數據存儲庫,以便組織,搜索,訪問,編目,參考我們的數據等。我認爲CKAN可以完成所有這些工作;然而,我不確定它將如何處理這些我們實際擁有的數據(我可能是錯的,這就是我要問的原因)。CKAN能夠處理100k +文件和TB數據嗎?

我們的實驗室正在購買大量的供內部使用的數據。我們希望能夠在我們的小組內編目和組織這些數據(可能是CKAN?),以便人們可以將數據推送到目錄,並提取數據並使用它。一些使用情況是,對數據,Web界面,搜索,瀏覽,組織,添加,刪除,更新數據集等具有ACL。雖然CKAN看起來非常適合這種情況,但問題出現在數據中所以我們試圖處理的金額)。

我們想要從TB級圖像(200k +圖像),各種格式的地理空間數據,Twitter流(JSON數據的TB),數據庫轉儲文件,二進制數據,機器學習模型等中任意編目。 t認爲將10萬個64MB JSON文件作爲資源添加到CKAN數據集是合理的,還是這樣?我們意識到我們無法在此JSON/images/geo數據中搜索,這很好。但是,如果我們有可用的數據(例如,我們搜索「twitter 2015-02-03」),我們希望找到信息,如果您願意的話,這是一種元數據搜索類型。在CKAN中使用本地文件存儲,如果用戶請求200k圖像會發生什麼?當系統不得不回答這些要求時,系統是否會變得沒有反應?

我已經在datahub.io上看到了CKAN,絕大多數的東西都是小的CSV文件,小的2-3MB的zip文件,以及數據集中不超過20或30個單獨的文件。

那麼CKAN能夠做我們想做的嗎?如果對替代品沒有任何建議?

編輯更具體的問題,而不是討論:

我環顧四周,並用Google搜索關於該主題的信息,但我還沒有看到一個部署的系統與數據的任何顯著量。

  1. 我可以上傳的文件大小是否有限制(例如,壓縮的400GB數據庫文件)?
  2. 作爲資源上傳到CKAN中的數據集的文件數是否有限制? (例如,我創建一個數據集並上傳250,000個64MB JSON文件,系統可用?)
  3. UI似乎不支持在某個時間上傳多個文件的能力(例如,數據文件夾作爲資源) 。是否有一個工具/擴展/插件,已經支持這個功能?
  4. a。是否有任何限制阻止我使用CKAN API來實現這一目標?
+0

關於SO的問題應該是一個特定問題,而不是開放式討論 –

+1

@DRead我將問題改爲特定項目。 –

回答

6

我們在自然歷史博物館(data.nhm.ac.uk)使用CKAN獲得了一些非常棒的研究數據集 - 我們的主要標本集合擁有280萬條記錄 - 並且處理得非常好。我們不得不使用一些自定義插件來擴展CKAN,但是它們是開源的,並且可以在Github上使用。

我們的datasolr擴展將大型數據集查詢到SOLR中,該索引處理索引和搜索大於postgres的數據集(無論如何,我們的基礎設施) - https://github.com/NaturalHistoryMuseum/ckanext-datasolr

爲防止用戶下載大文件時CKAN崩潰,我們將打包和下載移動到單獨的服務和任務隊列中。

https://github.com/NaturalHistoryMuseum/ckanext-ckanpackager https://github.com/NaturalHistoryMuseum/ckanpackager

所以,是的,CKAN有一些貢獻的插件,絕對可以處理更大的數據集。我們還沒有用TB +數據集對其進行測試,但是我們將在明年使用CKAN發佈一些系統發育數據。

+0

感謝您的反饋!我實際上是在看你的擴展,看看他們是否會爲我們工作!你會說你的數據大多是表格數據(基於列)?您是否擁有純粹的文本,日誌,二進制數據託管經驗?在您使用CKAN的經歷中,您是否遇到過上傳大數據集的問題? –

+0

它主要是但不是全部表格 - 我們也有一些聲音文件,圖像的壓縮檔案,以及一些比較晦澀的基於文本的格式,如nexus文件。但是我們沒有對這些文件做任何特別聰明的事情 - 它們只能用於下載並且不能在線搜索。上傳大文件對我們來說是一個問題 - 目前用戶必須將我們的大文件發送給我們手動添加。但我們正在考慮整合dropbox/rsync來嘗試和解決這個問題。 –

+0

@BenScott請你詳細說明 - 爲什麼大文件是一個問題?什麼失敗?我們也將考慮自動化這些。謝謝 – Chris

1

是:)

但是有擴展名使用或構建。

看看爲CKAN畫廊(http://datashades.com/ckan-galleries/)建立的擴展。我們專門爲在數據集資源的記錄級別中引用的圖像和視頻資產構建。

如果需要,還有一個用於對象存儲的S3雲連接器。

我們已經開始考慮各種擴展CKAN的方式,因此它可以爲所有類型的數據提供企業數據存儲和管理。非常大,實時,物聯網特定,關聯數據等。

我認爲在某些情況下,這些將通過向CKAN添加'資源容器'的概念來解決。在某種意義上,文件存儲和數據存儲都是這種資源容器擴展的例子。

使用AWS的API網關服務,我們正在研究如何通過與第三方解決方案的外部集成存儲的數據的請求方法,就好像它們與其他CKAN資源沒有區別。

雖然不是每個人都有,但當您將基礎設施作爲軟件使用時,您可以構建一些非常整潔的東西,看起來像運行在傳統Web堆棧上的軟件,但實際上是利用S3,Lambda,臨時關係數據庫和API網關做一些非常繁重的工作。

我們的目標是開放源代碼,使開放式架構在開展成熟時能夠適應這種工作。我們已經開始通過發佈用於在AWS上構建超級計算機集羣的腳本。你可以在這裏找到這些:https://github.com/DataShades/awscloud-hpc

相關問題