[英]django database design when you will have too many rows
我有一個帶有postgres db的django網絡應用程序; 通常的操作是,每天我都有一組需要存儲在表之一中的值。 沒有可預見的需要查詢數組的值,但是需要能夠繪制特定日期的值。 問題在於該數組很大,如果我將其存儲在數據庫中,則每年將有6000萬行,但是如果將每一行存儲為blob對象,則每年將有6萬行。
當您不想用值的行查詢時,使用blob對象減小表大小是否是一個好決定? 這是兩個選項:
選項1 :保留所有
group(foreignkey)| parent(foreignkey) | pos(int) | length(int)
A | B | 232 | 45
A | B | 233 | 45
A | B | 234 | 45
A | B | 233 | 46
...
option2 :將數組折疊成一個blob:
group(fk)| parent(fk) | mean_len(float)| values(blob)
A | B | 45 |[(pos=232, len=45),...]
...
所以我不想查詢pos或length,但是我想查詢group或parent。 我正在談論的讀取查詢的示例是:
SELECT * FROM "mytable"
LEFT OUTER JOIN "group"
ON ( "group"."id" = "grouptable"."id" )
ORDER BY "pos" DESC LIMIT 100
這是典型的django admin list_view頁面主要查詢。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.