我有一個電子商務網站在MongoDB + GridFS上工作。 每個產品最多可以有5個圖像。 每張圖片都有3張不同尺寸的縮略圖。GridFS - 產品圖片和縮略圖 - 什麼是最好的數據庫結構?
我需要一個關於最佳DB結構的建議。
目前我在考慮到圖像的ID,也拇指的ID(從GridFS的標識)存儲在每個產品:
{
'_id': 1,
'title': 'Some Product',
'images': [
{'id': '11', thumbs: {'small': '22', 'medium': '33'},
{'id': '44', thumbs: {'small': '55', 'medium': '66'}
]
}
或者它會更好地存儲在GridFS的路徑?
{
'_id': '111',
'filename': '1.jpg',
'path': 'product/988/image/111/'
},
{
'_id': '222',
'filename': '1.jpg',
'path': 'product/988/image/111/thumbnail_small'
},
{
'_id': '333',
'filename': '1.jpg',
'path': 'product/988/image/111/thumbnail_large'
}
UPDATE:在GridFS的 「路徑」 字段是 「假的」 路徑,而不是一個真正的一個。只需快速找到所有相關文件。具有1個索引字段比具有複合索引的幾個字段更便宜。