Optymalizowanie przekazywania sieci

Ukończone

Ramki Jumbo to ramki ethernet większe niż domyślne 1500 bajtów. Typowe rozmiary ramek Jumbo to 9000 bajtów. Zwiększenie rozmiaru ramki na źródłowym serwerze BAZY danych, wszystkich pośrednich urządzeń sieciowych, takich jak przełączniki, a serwery ładowania Intel R3 zmniejszają zużycie procesora CPU i zwiększają przepływność sieci. Rozmiar ramki musi być identyczny na wszystkich urządzeniach. W przeciwnym razie następuje konwersja intensywnie korzystająca z zasobów.

Dodatkowe funkcje sieciowe, takie jak skalowanie po stronie odbierającej (RSS) można włączyć lub skonfigurować do dystrybucji przetwarzania sieciowego na wielu procesorach z uruchomionymi serwerami R3load na VMware, okazało się, że dostrajanie sieci dla ramek Jumbo i RSS jest bardziej złożone i nie jest zalecane, chyba że dostępny jest bardzo specjalistyczny poziom umiejętności.

Funkcja R3load eksportuje dane z tabel DBMS i kompresuje te nieprzetworzone dane niezależne od formatu w plikach zrzutu. Te pliki zrzutu należy przekazać na platformę Azure i zaimportować do docelowej bazy danych programu SQL Server.

Wydajność kopiowania i przekazywania na platformę Azure tych plików zrzutu jest kluczowym składnikiem w ogólnym procesie migracji.

Istnieją dwa podstawowe podejścia do przekazywania plików zrzutu R3load:

Kopiowanie z lokalnych serwerów eksportu R3load do usługi Azure Blob Storage za pośrednictwem publicznego Internetu za pomocą narzędzia AzCopy

Na każdym z serwerów R3load uruchom kopię narzędzia AzCopy z tym wierszem polecenia:

Azcopy copy "C:\ExportServer_1\Dumpfiles" "https://[storage_account].blob.core.windows.net/ExportServer_1/Dumpfiles?[SAS_Token]" --recursive

Diagram illustrating copying from on-premises R 3 load export servers to Azure blob storage via Public Internet with A z Copy.

Przepływność można zwiększyć, ustawiając zmienną środowiskową AZCOPY_CONCURRENCY_VALUE. Ta zmienna określa liczbę równoczesnych żądań, które mogą wystąpić.

Jeśli komputer ma mniej niż 5 procesorów CPU, wartość [wartość] tej zmiennej jest ustawiona na 32. W przeciwnym razie wartość domyślna jest równa 16-krotności liczby procesorów CPU. Maksymalna wartość domyślna tej zmiennej to 300, ale można ręcznie ustawić tę wartość wyższą lub niższą:

System operacyjny

Command

Windows

set AZCOPY_CONCURRENCY_VALUE=[value]

Linux

export AZCOPY_CONCURRENCY_VALUE=[value]

macOS

export AZCOPY_CONCURRENCY_VALUE=[value]

Użyj polecenia azcopy env, aby sprawdzić bieżącą wartość zmiennej środowiskowej AZCOPY_CONCURRENCY_VALUE. Jeśli wartość jest pusta, możesz odczytać, która wartość jest używana, patrząc na początek dowolnego pliku dziennika narzędzia AzCopy. Wybrana wartość i przyczyna jej wybrania są tam zgłaszane.

Przed ustawieniem wartości współbieżności uruchom test porównawczy. Proces testu porównawczego zgłasza zalecaną wartość współbieżności. Alternatywnie, jeśli warunki sieciowe i ładunki różnią się, ustaw tę zmienną na słowo AUTO zamiast na określoną liczbę. Wartość AUTO powoduje, że narzędzie AzCopy zawsze uruchamia ten sam proces automatycznego dostrajania, który jest używany w testach porównawczych.

Jeśli klient ma zaawansowany serwer i szybki internet, można zwiększyć wartość współbieżności. Jeśli wartość współbieżności jest zbyt wysoka, połączenie z serwerem eksportu R3load zostanie utracone z powodu nasycenia sieci. Monitoruj przepływność sieci w Menedżerze zadań systemu Windows. Można łatwo uzyskać możliwość kopiowania przepływności ponad 1 Gigabit na sekundę na serwer eksportu R3load. Przepływność kopiowania można skalować w górę, mając więcej serwerów R3load (cztery są przedstawione na poprzednim diagramie).

Podobny skrypt należy uruchomić na serwerach importu R3load na platformie Azure, aby skopiować pliki z obiektu blob do systemu plików, do którego może uzyskać dostęp R3load.

Kopiowanie z lokalnych serwerów eksportu R3load do maszyny wirtualnej platformy Azure lub magazynu obiektów blob za pośrednictwem dedykowanego połączenia usługi ExpressRoute przy użyciu narzędzia AzCopy, Robocopy lub podobnego narzędzia

Robocopy C:\Export1\Dump1 \\az_imp1\Dump1 /MIR /XF *.SGN /R:20 /V /S /Z /J /MT:8 /MON:1 /TEE /UNILOG+:C:\Export1\Robo1.Log

Na poniższym diagramie blokowym przedstawiono cztery serwery Intel R3load z uruchomionym ładunkiem R3load. W tle narzędzie Robocopy uruchamia przekazywanie plików zrzutu. Po zakończeniu tworzenia całych podzielonych tabel i pakietów plik SGN jest kopiowany ręcznie lub za pomocą skryptu. Gdy plik SGN pakietu pojawi się na serwerze importu R3load, wyzwala import dla tego pakietu automatycznie.

Block diagram illustrating 4 Intel R 3 load servers running R 3 load.

Uwaga

Kopiowanie plików za pośrednictwem protokołów NFS lub Windows SMB nie jest tak szybkie ani niezawodne, jak mechanizmy, takie jak Narzędzie AzCopy. Zaleca się przetestowanie wydajności obu technik przekazywania plików. Zaleca się powiadamianie pomoc techniczna firmy Microsoft dla projektów migracji bazy danych VLDB, ponieważ operacje sieci o bardzo wysokiej przepływności mogą być błędnie zidentyfikowane jako ataki typu "odmowa usługi".