2
我的代碼從Web服務捕獲數值。捕獲的值通常會增加,但有時會減少。現在,我只是在做什麼,我在一個特定的時間觀察到一個愚蠢的捕捉...這是我的表結構是什麼樣子現在:分析不斷增加的數據的最佳途徑?
id date_collected value1_observed value2_observed
1 2012-01-26 1:00am 500 12
2 2012-01-26 1:01am 90000 NULL
3 2012-01-26 1:02am 100 50
1 2012-01-26 7:23am 502 12
2 2012-01-26 7:24am 90105 NULL
3 2012-01-26 8:09am 97 55
你可以看到...
- ID = 1個VALUE1在6小時6小時增加23分鐘
- ID = 2值1增加了105 23分鐘
- ID = 3 VALUE1在7小時下降8分鐘
難點:
- 收集時間不一致(I收集每天多次隨着時間的變化的長度集合之間)
- 該值可以增加或減少或爲空
我已經捕獲了數千萬行這些記錄,我希望能夠更容易地查詢它們,所以我想我需要將這些數據轉換成更適合我想要的問題的模式回答。我希望能夠找到如下模式:
- 「在凌晨1點到上午5點之間,這些ID的值變化最大」。
- 「在過去的30天裏,哪些ID有價值增長最多(絕對和相對)?」
對我該如何構建架構有任何建議嗎?將這些數據轉換爲傳統的星型模式是否可能?
UPDATE回答問題:
- 我目前使用Microsoft SQL Server,但願意接受使用MySQL或其他開源選項。
- 如果id 1從50變成100到52,我想知道它是+50,然後是-48。這樣我可以看到波動和淨收益/損失隨着時間的推移。例如,如果我在一個網站上跟蹤註冊用戶......通常這些數字總是在增加,但如果人們刪除他們的賬戶,我想要確定這一趨勢。但是,如果我的應用程序沒有觀察到從50到100的變化,並且只記錄了50和52,則它不知道該數字是否達到100。
感謝任何見解/方向,
- 保羅
請指定您正在使用的數據庫 – 2012-01-27 09:16:36
關於「值1中的最大變化」,如果值1在您的間隔期間從50變爲100,然後返回52,那麼變化爲2或a 98的變化? – 2012-01-27 12:21:40
我已更新發布回答Lukas Eder和Catcall的問題。 – PaulMest 2012-01-27 21:59:20