Udostępnij przez


Opracowywanie projektów magazynu w programie Visual Studio Code

Dotyczy:✅ Magazyn w systemie Microsoft Fabric

Dowiedz się, jak skonfigurować projekt bazy danych dla Fabric Data Warehouse w Visual Studio Code. Utworzysz nowy projekt, zdefiniujesz obiekty schematu, skompilujesz i zweryfikujesz projekt oraz opublikujesz go w hurtowni danych.

Wymagania wstępne

Przed rozpoczęciem upewnij się, że:

Tworzenie nowego projektu bazy danych

Projekt bazy danych można utworzyć od podstaw lub istniejącego magazynu.

Opcja 1. Tworzenie nowego projektu bazy danych z palety poleceń w programie Visual Studio Code

  1. Otwórz program Visual Studio Code.

  2. Otwórz paletę poleceń (Ctrl+Shift+P lub Cmd+Shift+P na komputerze Mac).

  3. Wyszukaj Projekty bazy danych: New.

  4. Wybierz pozycję Typ projektu bazy danych jako bazę danych programu SQL Server.

  5. Wybierz nazwę projektu i wybierz lokalizację folderu lokalnego.

  6. Wybierz usługę Synapse Data Warehouse w usłudze Microsoft Fabric jako platformę docelową.

  7. Po wyświetleniu monitu wybierz pozycję Tak (zalecane) dla projektu w stylu zestawu SDK.

    Ważne

    Tylko projekty w stylu zestawu SDK są obsługiwane w przypadku Fabric Data Warehouse.

  8. Wybierz Tak na pytanie Czy chcesz skonfigurować kompilację projektu SQL jako domyślną konfigurację kompilacji dla tego folderu?

  9. Wybierz pozycję Tak , aby ufać autorom plików w tym folderze.

Opcja 2. Tworzenie nowego projektu bazy danych z rozszerzenia Database Projects

  1. W programie Visual Studio Code wybierz ikonę rozszerzenia Projekty bazy danych na pasku działań.

  2. W okienku Projekty bazy danych wybierz pozycję Utwórz nową.

    Zrzut ekranu programu Visual Studio Code przedstawiający okienko rozszerzenia Projekty bazy danych i przycisk Utwórz nowy.

  3. Wybierz pozycję Typ projektu bazy danych jako bazę danych programu SQL Server.

  4. Wybierz nazwę projektu i wybierz lokalizację folderu lokalnego.

  5. Wybierz usługę Synapse Data Warehouse w usłudze Microsoft Fabric jako platformę docelową.

  6. Po wyświetleniu monitu wybierz pozycję Tak (zalecane) dla projektu w stylu zestawu SDK. Tylko projekty w stylu zestawu SDK są obsługiwane w przypadku Fabric Data Warehouse.

  7. Wybierz Tak na pytanie Czy chcesz skonfigurować kompilację projektu SQL jako domyślną konfigurację kompilacji dla tego folderu?

  8. Wybierz pozycję Tak , aby ufać autorom plików w tym folderze.

Opcja 3. Tworzenie projektu bazy danych z istniejącego magazynu

  1. Najpierw utwórz nowy profil połączenia dla magazynu w programie Visual Studio Code.

    1. Wybierz rozszerzenie programu SQL Server w programie Visual Studio Code na pasku działań.
    2. Podaj nazwę profilu. Wybierz pozycję Parametry.
    3. Podaj nazwę serwera. W portalu Fabric, w Ustawieniach magazynu, pobierz ciąg SQL Endpoint. (Różni się to od punktu końcowego analizy SQL). Wygląda na to, że <server unique ID>.datawarehouse.fabric.microsoft.com. Jest to nazwa serwera.
    4. W polu Typ uwierzytelniania użyj identyfikatora Entra firmy Microsoft — uniwersalnego z obsługą uwierzytelniania wieloskładnikowego. Uwierzytelnij się przy użyciu identyfikatora Entra firmy Microsoft.
    5. Podaj inne informacje jako domyślne lub żądane, a następnie wybierz pozycję Połącz.
  2. W programie Visual Studio Code wybierz ikonę rozszerzenia Projekty bazy danych na pasku działań.

  3. Wybierz przycisk ... opcje w okienku Projekty bazy danych i wybierz opcję Utwórz projekt z bazy danych .

    Zrzut ekranu programu Visual Studio Code przedstawiający opcję Utwórz projekt z bazy danych.

  4. Wybierz magazyn z istniejących profilów połączeń.

  5. Podaj nazwę projektu i wybierz folder projektu na stacji roboczej.

  6. W polu Struktura folderów wybierz pozycję Schemat/Typ obiektu (zalecane).

  7. W obszarze Uwzględnij uprawnienia w projekcie wybierz pozycję Nie (ustawienie domyślne).

  8. W przypadku projektu w stylu zestawu SDK wybierz pozycję Tak (zalecane).

  9. Wybierz Tak na pytanie Czy chcesz skonfigurować kompilację projektu SQL jako domyślną konfigurację kompilacji dla tego folderu?

  10. Program Visual Studio Code wyodrębnia pliki projektu z repozytorium projektu.

    Zrzut ekranu programu Visual Studio Code przedstawiający powiadomienie o postępie wyodrębniania plików projektu.

  11. Po pomyślnym wyodrębnieniu zobaczysz następujące powiadomienie: "Wyodrębnij pliki projektu: Powodzenie. Ukończono".

  12. Wybierz pozycję Tak , aby ufać autorom plików w tym folderze.

Nowy projekt bazy danych dla magazynu

Nowy projekt bazy danych dla magazynu jest wyświetlany w menu Projekty bazy danych SQL.

Zrzut ekranu programu Visual Studio Code przedstawiający nowy projekt bazy danych adventureWorksDW2022.

Struktura projektu wygląda następująco:

 | Project Name
 ├── Database References
 ├── SQLCMD Variables
 ├── .vscode/
 └── schema/
     ├── Functions
     ├── Tables
     └── Views

Konfigurowanie projektu bazy danych

  1. Kliknij prawym przyciskiem myszy projekt i wybierz polecenie Edytuj plik sqlproj.

    Zrzut ekranu z programu Visual Studio Code i menu kontekstowe projektu bazy danych. Opcja Edytuj plik sqlproj jest wyróżniona.

  2. Sprawdź, czy w pliku znajduje się najnowsza wersja zestawu Microsoft.Build.Sql SDK. Na przykład zmień wersję w pliku .sqlproj na Microsoft.Build.Sql2.0.0.

       <Sdk Name="Microsoft.Build.Sql" Version="2.0.0" />
    
  3. Sprawdź najnowszą wersję pliku Microsoft.SqlServer.Dacpacs.FabricDw i dodaj odwołanie do węzła Project/ItemGroup XML. Przykład:

       <PackageReference Include="Microsoft.SqlServer.Dacpacs.FabricDw" Version="170.0.2" />
    

    Tak powinien wyglądać projekt bazy danych dla magazynu po dokonaniu aktualizacji.

     <?xml version="1.0" encoding="utf-8"?>
     <Project DefaultTargets="Build">
       <Sdk Name="Microsoft.Build.Sql" Version="2.0.0" />
       <PropertyGroup>
         <Name>DatabaseProject715wh</Name>
         <ProjectGuid>{2E278BCC-F118-4DDB-9255-94697F2930B4}</ProjectGuid>
         <DSP>Microsoft.Data.Tools.Schema.Sql.SqlDwUnifiedDatabaseSchemaProvider</DSP>
         <ModelCollation>1033, CI</ModelCollation>
       </PropertyGroup>
       <ItemGroup>
         <None Include=".vscode\tasks.json" />
         <PackageReference Include="Microsoft.SqlServer.Dacpacs.FabricDw" Version="170.0.2" />
       </ItemGroup>
       <Target Name="BeforeBuild">
         <Delete Files="$(BaseIntermediateOutputPath)\project.assets.json" />
       </Target>
     </Project>
    
  4. .sqlproj Zapisz plik. Po wyświetleniu monitu o ponowne załadowanie projektu bazy danych wybierz pozycję Tak.

Ważne

Zespół Data Warehouse Fabric regularnie publikuje nowe wersje pakietów NuGet. Ponieważ domyślne wartości wersji w .sqlproj pliku mogą się zmieniać wraz z upływem czasu, pamiętaj, aby zaktualizować je w projekcie lokalnym, aby zachować zrównanie się z najnowszymi wersjami dostępnymi w pakiecie NuGet dla microsoft.SqlServer.Dacpacs.FabricDw.

Dodawanie lub aktualizowanie obiektów bazy danych

Można definiować lub modyfikować obiekty bazy danych, takie jak tabele, widoki, procedury składowane i funkcje w projekcie magazynu.

W folderze dla schematu, na przykład dbo, dodaj, usuń lub zmień definicje obiektów języka T-SQL w magazynie danych. Aby zmodyfikować istniejący obiekt, otwórz odpowiedni .sql plik i zaktualizuj definicję zgodnie z potrzebami.

Podczas kompilowanie projektu wszystkie nowe i zaktualizowane obiekty są weryfikowane i uwzględniane w wygenerowanych plikach dacpac w {project folder location}/bin/debug/{project name}.dacpac pliku.

Zmiany wprowadzone w tym miejscu dotyczą tylko projektu bazy danych i nie są odzwierciedlane w usłudze Microsoft Fabric, dopóki nie utworzysz i opublikujesz projektu.

Kompilowanie i weryfikowanie projektu

  1. Otwórz projekt bazy danych, jeśli nie został jeszcze otwarty.

  2. Kliknij prawym przyciskiem myszy projekt i wybierz polecenie Kompiluj , aby skompilować projekt bazy danych.

    Zrzut ekranu programu Visual Studio Code przedstawiający opcję Kompilowanie projektu bazy danych.

  3. Kompilacja powinna zakończyć się pomyślnie. Napraw wszelkie błędy na podstawie komunikatów podanych w danych wyjściowych zdarzenia kompilacji.

Uwaga / Notatka

Obecnie domyślny terminal programu Visual Studio Code musi być programem PowerShell , aby proces kompilacji w rozszerzeniu Projekty bazy danych zakończył się pomyślnie. W palecie poleceń wybierz pozycję Terminal: wybierz pozycję Profil domyślny, a następnie wybierz pozycję PowerShell.

Publikowanie do hurtowni danych Fabric

Po stworzeniu twojego projektu, opublikuj go w docelowym magazynie danych. Publikowanie generuje skrypt, aby rozwiązać różnicę między projektem bazy danych a rzeczywistą hurtownią danych, a następnie wykonuje skrypt, aby hurtownia danych odpowiadała projektowi. Skompilowany model schematu magazynu w pliku dacpac można wdrożyć w magazynie docelowym.

  1. Kliknij prawym przyciskiem myszy projekt i wybierz polecenie Publikuj.

  2. Wybierz pozycję Publikuj na istniejącym serwerze SQL.

  3. W obszarze Wybierz profil publikowania do załadowania po raz pierwszy wybierz pozycję Nie używaj profilu.

    • Opcje publikowania magazynu można zapisać w profilu publikowania. Po zakończeniu otrzymasz powiadomienie w Visual Studio Code, które umożliwia zapisanie użytych właśnie opcji publikowania do pliku profilu publikacji.
    • Możesz ponownie użyć profilu publikowania w przyszłości podczas publikowania projektu w magazynie. Mogą istnieć różne opcje profilu dla różnych magazynów lub dla różnych środowisk w środowiskach deweloperskich/testowych/akceptacyjnych/produkcyjnych.
  4. Wybierz profil połączenia Fabric Data Warehouse z listy.

  5. Wybierz nazwę magazynu docelowego.

  6. W opcji Wybierz akcję możesz wygenerować skrypt aby przejrzeć go przed opublikowaniem lub opublikować projekt w repozytorium.

    • Przy pierwszym wdrożeniu zmian należy dokładnie wygenerować skrypt i przejrzeć wynikowy kod T-SQL, który ma zostać zastosowany do magazynu docelowego. W magazynie docelowym nie są wprowadzane żadne zmiany.
    • Jeśli wybierzesz pozycję Publikuj, zmiany zostaną zapisane w magazynie docelowym.

    Zrzut ekranu programu Visual Studio Code przedstawiający powiadomienie Deploy dacpac: In progress (Wdrażanie pakietu dacpac: w toku).

  7. W powiadomieniu Czy chcesz zapisać ustawienia w profilu (.publish.xml)?, wybierz pozycję Tak i zapisz opcje profilu publikowania po następnym opublikowaniu.

Ważne ustawienia wdrażania dla projektów magazynu

Podczas wdrażania projektów baz danych w usłudze Fabric Data Warehouse kilka ustawień kontroluje zmiany schematu i może mieć wpływ na bezpieczeństwo danych. Należy zachować ostrożność.

  • BlockOnPossibleDataLoss

    • Co to robi: Zapobiega wdrażaniu, jeśli istnieje ryzyko utraty danych (na przykład porzucanie kolumny lub tabeli zawierającej dane).
    • Zalecenie: Zawsze ustaw True w środowisku produkcyjnym, aby chronić dane krytyczne.
    • Ostrożność: Ustawienie go tak, aby False umożliwiało wdrożenie, nawet jeśli dane mogą zostać utracone. Używaj tylko w kontrolowanych środowiskach (na przykład tworzenie i testowanie).
  • DropObjectsNotInSource

    • Co to robi: Usuwa obiekty w docelowej bazie danych, które nie są obecne w źródle projektu.
    • Zalecenie: Użyj w środowiskach deweloperskich/testowych, aby wyczyścić resztki obiektów.
    • Ostrożność: Użycie w DropObjectsNotInSource środowisku produkcyjnym może usuwać ważne obiekty i dane. Przed włączeniem należy dokładnie sprawdzić.
  • Pre-Deployment Scripts

    • Co to robi: Wykonuje niestandardowe skrypty SQL przed wdrożeniem schematu.
    • Typowe zastosowania:
      • Archiwizowanie lub tworzenie kopii zapasowej danych przed usunięciem tabel
      • Tymczasowe wyłączanie ograniczeń lub wyzwalaczy
      • Czyszczenie starszych obiektów
    • Ostrożność: Upewnij się, że skrypty są idempotentne i nie wprowadzaj zmian schematu, które powodują konflikt z wdrożeniem.

Wskazówka

Jeśli proces wdrażania jest idempotentny, można go uruchomić wiele razy bez powodowania problemów i można wdrożyć w wielu bazach danych bez konieczności wstępnie określić ich stan.

  • Post-Deployment Scripts

    • Co to robi: Wykonuje niestandardowe skrypty SQL po wdrożeniu schematu.
    • Typowe zastosowania:
      • Pierwotne wyszukiwanie lub dane referencyjne
      • Ponowne włączanie ograniczeń lub wyzwalaczy
      • Historia wdrażania logów
    • Ostrożność: Unikaj dużych operacji na dużych tabelach w środowisku produkcyjnym; upewnij się, że skrypty można bezpiecznie uruchamiać wiele razy w razie potrzeby.

Ważne

Przed opublikowaniem należy zawsze przeglądać skrypty i ustawienia wdrożenia. Najpierw przetestuj w środowiskach deweloperskich/testowych, aby zapobiec niezamierzonej utracie danych.

Zweryfikuj publikację

Połącz się ze swoim magazynem danych i sporządzaj skrypty dla obiektów, które zostały zmienione, lub weryfikuj zmiany, uruchamiając obiekty katalogu systemowego.