2015-10-23 61 views
0

我被要求建立一個費用報告框架,允許用戶通過網絡表單一次存儲他們的費用。參賽人數每天不會超過100-200人。PHP + MySQL - 處理(小)時間序列有哪些選擇?

除了由用戶提供的日期和時間之外,還必須爲每個新的數據行選擇預先定義的一組標籤(例如:運輸,住宿,食物)以及作爲貨幣,金額和評論的字段。

之後,必須可以(或者更容易)在兩個日期之間獲取數據庫中的條目,並將數據存儲在熊貓數據框(或R數據表)中進行後期統計分析和繪圖。

我首先想到了使用PHP將數據插入到mySQL數據庫表中,其中標記將是布爾值列(True/False)。默認情況下,所有標籤設置爲False都會加載非常簡單的Web表單,並且在提交之前由用戶將正確的標籤設置爲True。

這就是說,我現在想知道我可以或應該探索的其他方法。我一直在閱讀有關處理大量數據的openTSDB和InfluxDB,但我也有興趣從編碼人員那裏瞭解有關其他可能選項的最新技術的最新信息。

總之,我希望選擇一種明智的方法,既不是過時的,也不是(複雜的)大炮殺死蒼蠅。

+1

好吧,mysql *是*有點過時,但不會很快消失。 MongoDB是另一種可能性,但對於每天100到200個條目,我不認爲你真的需要一個過於強大的底層數據庫。 MySQL會做這件事。 –

+1

你說的每年有100,000個條目,可能不需要任何類型的大數據解決方案。它的確是你的偏好,但PHP/MySQL在這種情況下可以很好地工作。 –

+0

然後在一段時間後將您的數據關閉到其他表格中,如果在當前活動集中不需要此類數據分析 – Drew

回答

1

您可以試試Axibase Time-Series Database社區版。免費。

  • 支持實體,度量和系列標籤
  • 提供開源API客戶爲R,Python和PHP標籤
  • 範圍的時間序列查詢是一個核心的使用情況

檢出App examples您可以輕鬆構建PHP,Go,NodeJS。應用程序代碼是Apache 2許可下的開源代碼,託管在github上。

披露:我爲Axibase工作。