Jak rozdzielić dane między pliki w S3/R2 i bazę relacyjną?
Najpierw odpowiedz na głos lub w myślach, potem porównaj.
Odpowiedź
Duży dokument lub gotowy eksport trzymam zwykle w magazynie obiektowym. W bazie zapisuję jego właściciela, status, wersję i wskazanie miejsca pliku. Dzięki temu mogę korzystać z relacji i transakcji bez wkładania całej zawartości każdego pliku do tabeli.
Przykład: rekord zadania mówi „dokument przetworzony”, a wynikowy PDF ma osobny klucz w S3. Trzeba przewidzieć awarię między zapisaniem pliku i metadanych oraz sposób znalezienia osieroconych obiektów. Link dający czasowy dostęp jest uprawnieniem: nie powinien bez potrzeby trafiać do publicznych logów. Usunięcie dokumentu musi uwzględniać jego kopie i pochodne.
Dlaczego to ważne: Praktyczne połączenie storage, bazy i uprawnień.
Możliwe dopytania: Co jeśli plik się zapisał, ale zapis rekordu w bazie się nie udał?
Jak poszło? Bądź szczery — „Jeszcze nie” dodaje pytanie do powtórki.
Zacznij od
- E-P01 · Co to jest chmura obliczeniowa? — AWS, Cloudflare i infrastruktura
- E-P03 · Czym jest Cloudflare i do czego służy? — AWS, Cloudflare i infrastruktura
- E-P04 · Czym Cloudflare różni się od AWS? — AWS, Cloudflare i infrastruktura
Dalsza lektura
- PostgreSQL: Transaction Isolation(otwiera się w nowej karcie)Docs; dostęp 22.10.2026. Izolacja, blokady i serialization anomalies; dobra podstawa do pracy z ORM.