Udostępnij za pośrednictwem


Raport w skalowanych w poziomie baz danych w chmurze (wersja zapoznawcza)

Dotyczy:Azure SQL Database

Raporty z wielu baz danych można tworzyć z jednego punktu połączenia przy użyciu zapytania elastycznego. Bazy danych muszą być partycjonowane w poziomie (nazywane również "podzielonymi na fragmenty").

Jeśli masz istniejącą bazę danych, odnieś się do Migrowanie istniejących baz danych w celu skalowania poziomego.

Aby zrozumieć obiekty SQL potrzebne do wykonywania zapytań, zobacz Raportowanie w skalowanych w poziomie baz danych w chmurze (wersja zapoznawcza).

Wymagania wstępne

Pobierz i uruchom Elastic Database Tools.

Tworzenie menedżera map fragmentów przy użyciu przykładowej aplikacji

W tym miejscu utworzysz zarządcę mapy fragmentów wraz z wieloma fragmentami, a następnie wstawisz dane do tych fragmentów. Jeśli masz już skonfigurowane fragmenty z danymi podzielonymi na fragmenty, możesz pominąć poniższe kroki i przejść do następnej sekcji.

  1. Skompiluj i uruchom przykładową aplikację Narzędzia elastycznej bazy danych , wykonując kroki opisane w sekcji artykułu Pobierz i uruchom przykładową aplikację. Po zakończeniu wszystkich kroków zobaczysz następujący wiersz polecenia:

    Zrzut ekranu z wiersza polecenia zestawu startowego Elastic Database Tools.

  2. W oknie polecenia wpisz 1 i naciśnij Enter. Spowoduje to utworzenie menedżera mapy fragmentów i dodanie dwóch fragmentów do serwera. Następnie wpisz 3 i naciśnij Enter; powtórz akcję cztery razy. Spowoduje to wstawienie przykładowych wierszy danych w fragmentach.

  3. W witrynie Azure Portal powinny być wyświetlane trzy nowe bazy danych na serwerze:

    Zrzut ekranu przedstawiający potwierdzenie utworzenia trzech baz danych w programie Visual Studio.

    W tym momencie zapytania między bazami danych są obsługiwane za pośrednictwem bibliotek klienckich elastycznej bazy danych. Na przykład użyj opcji 4 w oknie polecenia. Wyniki zapytania wieloczęściowego są zawsze UNION ALL wynikami ze wszystkich fragmentów.

    W następnej sekcji utworzymy przykładowy punkt końcowy bazy danych, który obsługuje bardziej zaawansowane wykonywanie zapytań dotyczących danych między fragmentami.

Tworzenie elastycznej bazy danych zapytań

  1. Otwórz witrynę Azure Portal i zaloguj się.

  2. Utwórz nową bazę danych w usłudze Azure SQL Database na tym samym serwerze co konfiguracja fragmentu. Nadaj bazie danych ElasticDBQuerynazwę .

    Możesz użyć istniejącej bazy danych. Jeśli możesz to zrobić, nie może to być jeden z fragmentów, na których chcesz wykonywać zapytania. Ta baza danych służy do tworzenia obiektów metadanych dla zapytania elastycznej bazy danych.

Tworzenie obiektów bazy danych

Klucz główny i poświadczenia w zakresie bazy danych

Są one używane do nawiązywania połączenia z menedżerem mapy fragmentów i fragmentami:

  1. Otwórz program SQL Server Management Studio lub sql Server Data Tools w programie Visual Studio.

  2. Połącz się z bazą ElasticDBQuery danych i wykonaj następujące polecenia języka T-SQL:

    CREATE MASTER KEY ENCRYPTION BY PASSWORD = '<master_key_password>';
    
    CREATE DATABASE SCOPED CREDENTIAL ElasticDBQueryCred
    WITH IDENTITY = '<username>',
    SECRET = '<password>';
    

    Zarówno nazwa użytkownika, jak i hasło powinny być informacjami logowania utworzonymi w poprzednich krokach.

Zewnętrzne źródła danych

Aby utworzyć zewnętrzne źródło danych, wykonaj następujące polecenie w ElasticDBQuery bazie danych:

CREATE EXTERNAL DATA SOURCE MyElasticDBQueryDataSrc WITH
    (TYPE = SHARD_MAP_MANAGER,
    LOCATION = '<server_name>.database.windows.net',
    DATABASE_NAME = 'ElasticScaleStarterKit_ShardMapManagerDb',
    CREDENTIAL = ElasticDBQueryCred,
    SHARD_MAP_NAME = 'CustomerIDShardMap'
) ;

CustomerIDShardMap to nazwa mapy fragmentów, jeśli utworzyłeś mapę fragmentów i menedżera mapy fragmentów, używając przykładowych narzędzi do elastycznych baz danych. Jeśli jednak użyto niestandardowej konfiguracji dla tego przykładu, powinna to być nazwa mapy fragmentu wybrana w aplikacji.

Tabele zewnętrzne

Utwórz tabelę zewnętrzną odpowiadającą tabeli Customers na shardach, wykonując następujące polecenie w ElasticDBQuery bazie danych.

CREATE EXTERNAL TABLE [dbo].[Customers]
( [CustomerId] [int] NOT NULL,
    [Name] [nvarchar](256) NOT NULL,
    [RegionId] [int] NOT NULL)
WITH
( DATA_SOURCE = MyElasticDBQueryDataSrc,
    DISTRIBUTION = SHARDED([CustomerId])
) ;

Wykonywanie przykładowego zapytania T-SQL elastycznej bazy danych

Po zdefiniowaniu zewnętrznego źródła danych i tabel zewnętrznych użyj języka T-SQL, aby wykonać zapytanie dotyczące tabel zewnętrznych.

Wykonaj to zapytanie w ElasticDBQuery bazie danych:

select count(CustomerId) from [dbo].[Customers];

Zauważysz, że zapytanie agreguje wyniki ze wszystkich fragmentów i daje następujące dane wyjściowe:

Szczegóły danych wyjściowych.

Importowanie wyników zapytań elastycznej bazy danych do programu Excel

Wyniki zapytania można zaimportować do pliku programu Excel.

  1. Uruchom program Microsoft Excel.
  2. Przejdź do wstążki Dane .
  3. Wybierz pozycję Z innych źródeł i wybierz pozycję Z programu SQL Server.
  4. W Kreatorze połączenia danych wpisz nazwę serwera i poświadczenia logowania. Następnie wybierz Dalej.
  5. W oknie dialogowym Wybierz bazę danych zawierającą żądane dane wybierz ElasticDBQuery bazę danych.
  6. Wybierz tabelę Customers w widoku listy i wybierz pozycję Dalej. Następnie wybierz pozycję Zakończ.
  7. W formularzu Importuj dane w obszarze Wybierz sposób wyświetlania tych danych w skoroszycie wybierz pozycję Tabela. Kliknij przycisk OK.

Wszystkie wiersze z Customers tabeli przechowywane w różnych fragmentach wypełniają arkusz programu Excel.

Teraz możesz używać zaawansowanych funkcji wizualizacji danych programu Excel. Możesz użyć parametrów połączenia z nazwą serwera, nazwą bazy danych i poświadczeniami, aby połączyć narzędzia do analizy biznesowej i integracji danych z elastyczną bazą danych zapytań. Upewnij się, że program SQL Server jest obsługiwany jako źródło danych dla narzędzia. Możesz odwołać się do elastycznej bazy danych zapytań i tabel zewnętrznych, podobnie jak w przypadku każdej innej bazy danych programu SQL Server i tabel programu SQL Server, z którymi można nawiązać połączenie za pomocą narzędzia.

Koszt

Za korzystanie z funkcji Elastic Database Query nie są naliczane dodatkowe opłaty.

Aby uzyskać informacje o cenach, zobacz Szczegóły cennika usługi SQL Database.