我有一個數據集,它的列是這樣的:哪個更快:適當的數據輸入還是適當的數據結構?
Consumer ID | Product ID | Time Period | Product Score
1 | 1 | 1 | 2
2 | 1 | 2 | 3
等。
作爲計劃的一部分(用C語言編寫),我需要處理所有消費者對特定產品和時間段組合給出的所有可能組合的產品分數。假設有3個產品和2個時間段。然後我需要處理所有可能的組合的產品分數如下所示:
Product ID | Time Period
1 | 1
1 | 2
2 | 1
2 | 2
3 | 1
3 | 2
我需要處理沿着上述線很多次的數據(> 10K)和所述數據集是相當大的(例如, 48K消費者,100個產品,24個時間段等)。所以速度是一個問題。
我想出了兩種方法來處理數據,我想知道哪種方法更快或者可能無關緊要? (速度事項而不是在不適當的維護/可讀性的成本):
排序通過數據產品ID和時間段,然後循環中的數據,以提取對於所有可能的組合的數據。
存儲所有消費者的消費者ID,他們提供產品ID和時間段的特定組合的產品評分並相應地處理數據。
有什麼想法?任何其他方式來加快處理?謝謝
downvoter是否在意評論? – danben 2010-05-20 14:44:47
對不起,我在回答中解決了這個問題,而不是評論。 – 2010-05-20 14:48:34
這是一條路,但我希望有人能夠提供一些見解! – vad 2010-05-20 17:36:19