2010-02-22 59 views
4

關於我以前的問題,我要求提供一些數據庫建議;它只是發生在我身上,我甚至不知道我試圖在那裏存儲什麼適合於數據庫。或者應該使用其他一些數據存儲方法。這個數據適合保存在數據庫中嗎?

我有一些物理模型試驗(假設風洞數據;類似的東西),其中的每一個模型(M-1234),我有:

name (M-1234) 
length L 
breadth B 
height H 
L/B ratio 
L/H ratio 
... 
lot of other ratios and dimensions ... 
force versus speed curve given in the form of a lot of points for x-y plotting 
... 
few other similar curves (all of them of type x-y). 

現在,我想要做到的是以某種合理的方式存儲該數據,以便將使用數據庫的用戶可以來看看L/B = 2.5(或類似需求)中最接近的十個模型。然後,以某種方式獲取這些模型的所有數據,包括曲線數據(以純文本文件格式)。

是一個SQL數據庫(或任何其他,對於這個問題)處理這樣的事情的適當方式?還是應該採取其他方法?

我已經有大約一個月的時間來完成這個任務了,在那段時間裏我還必須學習足夠多的關於數據庫的知識,所以...請給出你的建議,銘記這一點。假設沒有關於這個問題的先前知識,無論如何。

+1

聽起來像是http://stackoverflow.com一個問題啊? – 2010-02-22 02:56:13

+0

@ o.k.w - 不確定,真的。無論如何,我會留給主持人作出決定/相應地移動它。 – Rook 2010-02-22 03:01:07

+0

傳統上,數據庫不存儲可以計算的信息,因此您對數據庫的使用將更多地是數據存儲或數據倉庫。也就是說,這是一個比平面文件更有效的存儲機制。 – 2010-02-22 09:41:02

回答

2

我認爲你在找什麼是可能的。我在這裏使用Postgresql,但任何數據庫都可以工作。這是我的測試數據庫

 
CREATE TABLE test (
    id serial primary key, 
    ratio double precision 
); 
COPY test (id, ratio) FROM stdin; 
1 0.29999999999999999 
2 0.40000000000000002 
3 0.59999999999999998 
4 0.69999999999999996 
. 

然後,找到最近的值以特定的比例

select id,ratio,abs(ratio-0.5) as score from test order by score asc limit 2;

在這種情況下,我在尋找最近的2到0.5

我可能會做一個datamodel,你有一個表的主要數據,比率等,然後第二張表,它包含曲線點,因爲我假設曲線並不總是相同的尺寸。

2

是的,數據庫可能是最好的方法。

關係數據庫(通常使用SQL進行數據訪問)適用於或多或少構造爲表格的數據。

爲了給你一個想法:

你可以有一個主表model與領域namewidth等。然後,對於可能出現多次的任何值的子表(參見model(查找「外鍵」))。

然後爲您的實際曲線的子表,再次指向model

如何實際建模數據庫中的曲線我不知道,因爲我不知道如何模擬它們。但是,如果它有很多數字,它可以進入數據庫。

看來你對關係數據庫管理系統知之甚少。考慮閱讀WIKIpedia上的內容,或者做一些簡單的DBMS教程(PostgreSQL有一些:http://www.postgresql.org/docs/8.4/interactive/tutorial.html,但還有很多其他的)。然後選擇一個DBMS進行嘗試(PostgreSQL可能不是一個不錯的選擇,但也有很多其他的)。

然後嘗試實現一個簡單的表模式,並回到我們的任何細節問題(你可能會有)。

還有一件事:這些問題可能更適合serverfault.com。

+0

@sleske - 因爲你似乎對這些事情有所瞭解,如果可能的話,還有一個問題。你認爲這可能是另一種類型的數據庫更合適嗎?我的數據通常是以一種方式構建的,對於每個模型我都有幾個參數(所有標量),所以一個模型,一行參數。對於每一個模型,我都有幾張表格(另一張表格)的數據(曲線)。試試把它放在一個「傳統的」(不知道什麼是正確的名字)數據庫中,比如dBase(舊的)。如果我記得正確的話,它們與今天的sql類型不同。 – Rook 2010-02-22 13:55:26

+0

@Idigas:非常歡迎您發表問題。但請將它們作爲問題發佈,這就是本網站的用途:-)。可能最好發佈在stackoverflow.com上,因爲它是一個編程問題。不,我現在通常不會推薦dBase,但意見可能會有所不同。 – sleske 2010-02-22 14:34:12

+0

夠公平的。謝謝 ! (哦,順便說一下,是的,我非常清楚所有這三個網站的性質,有時候這些細節有時候在評論中處理它們更容易,而不是填滿整個董事會的詳細問題關於一個問題)。 – Rook 2010-02-22 15:02:49

0

這無疑是科學的數據:您可能會發現用於任意有用的科學數據庫/格式:HDF5 http://www.hdfgroup.org/(注意我不是專家)

+0

是的,測量和預測的數據。但是從沒有文件格式的領域,AFAIK。 – Rook 2010-02-22 17:16:56

+0

這些工具的想法是他們可以很容易地開發自己的格式。另一個是筒倉http://wci.llnl.gov/codes/silo/ – Norky 2010-02-23 11:42:40