Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Ważne
Skalowanie automatyczne bazy danych Lakebase znajduje się w wersji beta w następujących regionach: eastus2, westeurope, westus.
Autoskalowanie bazy danych Lakebase to najnowsza wersja bazy danych Lakebase z automatycznym skalowaniem obliczeniowym, skalowaniem do zera, rozgałęzianiem i natychmiastowym przywracaniem. Aby zapoznać się z porównaniem funkcji z Lakebase Provisioned, sprawdź wybieranie między wersjami.
Dowiedz się, jak używać gałęzi, takich jak gałęzie Git, zapewniając każdemu deweloperowi izolowaną gałąź do niezależnej pracy, a następnie resetować, aby zachować synchronizację.
Wymagania wstępne
- Projekt Lakebase z gałęzią
production(domyślną) - Gałąź utworzona
developmentna podstawieproductiondla wspólnej pracy programistycznej - Podstawowa znajomość języka SQL i bazy danych Postgres
Konfigurowanie schematu początkowego
Przed utworzeniem gałęzi dewelopera skonfiguruj prosty schemat w gałęzi programowania. Ten element służy jako wspólny punkt wyjścia, od którego wszyscy deweloperzy będą forkać. Podczas tworzenia gałęzi osobistej natychmiast dziedziczy ten schemat za pomocą kopiowania na zapis.
- Przejdź do gałęzi programowania w interfejsie użytkownika usługi Lakebase.
- Otwórz edytor SQL.
- Utwórz podstawową tabelę użytkowników z przykładowymi danymi:
CREATE TABLE users (
id SERIAL PRIMARY KEY,
email TEXT NOT NULL UNIQUE,
created_at TIMESTAMP DEFAULT NOW()
);
INSERT INTO users (email) VALUES
('alice@example.com'),
('bob@example.com'),
('charlie@example.com');
Tworzenie gałęzi dewelopera
Każdy deweloper w zespole może mieć długotrwałą gałąź do ciągłej pracy. Okresowo resetuj go, aby zachować synchronizację z elementem nadrzędnym.
Z listy gałęzi projektu wybierz gałąź programowania , a następnie kliknij pozycję Utwórz gałąź podrzędną. Wprowadź nazwę gałęzi (wymaganą), taką jak dev/alex (zgodnie ze wzorcem dev/<your-name>), a następnie kliknij przycisk Utwórz.
Gałąź jest tworzona natychmiast i zawiera wszystkie schematy i dane z programowania za pośrednictwem kopiowania na zapis.
Hierarchia gałęzi:
production (root)
└── development (has users table + data)
└── dev/alex (instantly inherits users table + data)
Opracuj funkcję
Wskaż aplikację na swojej gałęzi deweloperskiej, aktualizując parametry połączenia w pliku .env, a następnie opracuj funkcję przy użyciu normalnego przepływu pracy.
Na przykład dodanie śledzenia preferencji użytkownika do aplikacji wymaga zaktualizowania modelu użytkownika, wygenerowania migracji za pomocą struktury (Prisma, Alembic, Django itp.) i uruchomienia jej w gałęzi dev/alex . Plik migracji może zawierać następujące elementy:
ALTER TABLE users ADD COLUMN preferences JSONB DEFAULT '{}';
CREATE INDEX idx_users_preferences ON users USING GIN (preferences);
Po zakończeniu migracji opracuj funkcję preferencji w kodzie aplikacji i przetestuj cały przepływ lokalnie. Twoja gałąź jest całkowicie odizolowana — zmiany nie wpływają na środowisko produkcyjne ani innych deweloperów.
Przeglądanie zmian
Przed podwyższeniem do innych środowisk użyj różnic schematu, aby sprawdzić dokładnie, co się zmieniło. Przejdź do dev/alex przeglądu gałęzi, kliknij pozycję Różnice schematu i porównaj z development.
Porównanie obok siebie pokazuje nową preferences kolumnę i indeks w kolorze zielonym:
Ten krok weryfikacji ułatwia przechwycenie niezamierzonych zmian przed dotarciem do środowiska produkcyjnego. Aby zapoznać się z pełną dokumentacją dotyczącą różnic w schematach, zobacz Porównanie schematów gałęzi.
Promuj swoje zmiany
Gdy jesteś pewny swoich zmian, wypchnij je do gałęzi nadrzędnych. Zastosuj te same zmiany schematu, które zweryfikowałeś na dev/alex, w swojej gałęzi development, a następnie wdróż kod aplikacji. Ten przepływ pracy zapewnia, że zmiany schematu są testowane w izolacji przed dotarciem do wspólnych środowisk.
Resetowanie i rozpoczynanie od nowa
Gdy będziesz gotowy do rozpoczęcia nowej pracy, zresetuj swoją osobistą gałąź, aby zachować synchronizację z development, który mógł się zmienić z powodu działań innych deweloperów. To zapewnia nowe rozpoczęcie od bieżącej wspólnej bazy wyjściowej.
Przejdź do dev/alex gałęzi i kliknij pozycję Resetuj z poziomu elementu nadrzędnego. Modalne resetowanie potwierdza, że wszystkie bazy danych i role zostaną zastąpione najnowszymi danymi z .development Ta akcja nie jest odwracalna, dlatego przed potwierdzeniem upewnij się, że promowano wszelkie zmiany, które chcesz zachować.
Gałąź teraz dokładnie odpowiada development, jest gotowa na następne zadanie.
Najlepsze rozwiązania
-
Użyj spójnego nazewnictwa: Postępuj zgodnie ze wzorcem
dev/<name>dla gałęzi deweloperów. -
Regularnie resetuj: Utrzymuj gałąź w synchronizacji z
development, aby uniknąć rozbieżności. - Ochrona środowiska produkcyjnego: Używanie chronionych gałęzi w celu zapobiegania przypadkowym zmianom