Je běžnou chybou obávat se „velkých“ tabulek a výkonu. Pokud můžete použít indexy pro přístup ke svým datům, nezáleží na tom, jestli máte 1000 z 1000000 záznamů – alespoň ne tak, jak byste byli schopni měřit. Design, který zmiňujete, se běžně používá; je to skvělý design, kde čas je klíčovou součástí obchodní logiky.
Pokud například chcete vědět, jaká byla cena položky v okamžiku, kdy klient zadal objednávku, možnost vyhledávat záznamy produktů, kde valid_from
Není tomu tak vždy – pokud data uchováváte pouze pro účely archivace, může mít větší smysl vytvářet archivní tabulky. Musíte si však být jisti, že čas je skutečně není součástí obchodní logiky, jinak bude bolest při prohledávání více tabulek značná – představte si, že budete muset prohledávat buď tabulku produktů NEBO tabulku product_archive pokaždé, když chcete zjistit cenu produktu v okamžiku, kdy byla zadána objednávka .