對不起,我只是玩弄mysql和學習,隨着我走。這是我的問題。我有一個表(在Python中)與數值(例如{3:1,3:2,3:3})。我想使用數據庫作爲這些變量的持久性存儲(因爲它們不能完全適應內存),但我想盡可能快地嘗試使用它。我可以讓兩列彼此獨一無二嗎?
目前我只在mysql中使用一列(索引),並且字典中的每個條目都有自己的行。如果我使用兩列INT而不是CHAR列,我想嘗試查看是否可以加快讀/寫速度,但是我需要兩列彼此是唯一的。在上面的例子中,所有的數據都是唯一的,如果我再添加3 = 1,那麼它會覆蓋現有的值,但是3 = 4會創建一個新的條目。我怎樣才能在MySQL中複製?
另外我的加速邏輯有道理,還是兩列的選擇實際上最終會比有一個更昂貴?
我從頭開始構建,所以您不必在現有解決方案中工作,我非常靈活地採取任何可行的方法。
謝謝!
你在找複合主鍵嗎? – Asdfg 2012-02-20 20:04:08
我建議將'varchar'分成兩個'ints' ...不是出於性能原因,而是[適當的規範化](http://en.wikipedia.org/wiki/Database_normalization)。首先,讓它工作 - 第二,做對 - 最後,擔心讓它變快。 – 2012-02-20 20:06:32
@Asdfg我認爲是這樣,現在我只有一列,所以我想看看我是否可以拆分它。 @邁克爾我試圖給它一個鏡頭。現在它已經可以工作了,但我覺得mysql可以更快,所以我只是測試不同的方法,並將其與以前的結果進行比較(並確保結果相同)。 – Lostsoul 2012-02-20 20:10:45