Projektuję aplikację, która na wczesnym etapie będzie zbierać dane A, B i C od klientów, ale później będzie zbierać dane A, B i D.
A, B, C i D są bardzo powiązane i obecnie istnieją jako kolumny pojedynczej bazy danych tabeli T PostgreSQL .
Gdy C nie będzie już potrzebny, chcę usunąć jego odwołania z mojej aplikacji (korzystam z Django ORM ), ale chcę zachować dane, które zostały już wprowadzone. Jak najlepiej to zrobić?
Myślałem o utworzeniu nowej tabeli dla ABD, ale to oznacza, że może to powodować problemy z dowolnymi wierszami odwołującymi się do tabeli T.
Mógłbym po prostu zostawić kolumnę C razem i usunąć odniesienia do niej w kodzie, pozwalając na przetrwanie istniejących danych.
Czy jest lepsza opcja, której nie widzę?
Kilka dodatkowych szczegółów:
Liczba wierszy nie będzie duża, najprawdopodobniej 1-2 na użytkownika. Jest to aplikacja na rynek masowy, ale zanim przejdę z C do D, baza użytkowników nie będzie jeszcze bardzo duża. C i D prawdopodobnie nie zostaną zebrane w tym samym czasie, chociaż jest to możliwe. C i D prawdopodobnie reprezentują wiele kolumn, a nie tylko jedną.