Snowpark Migration Accelerator: Bereitschaftsbewertungen

Der Snowpark Migration Accelerator (SMA) evaluiert Ihren Code und erstellt detaillierte Bewertungsdaten. Um diese Informationen leichter zugänglich zu machen, berechnet SMA-Bereitschaftsbewertungen, die messen, wie einfach Ihr Code auf Snowflake migriert werden kann. Diese Bewertungen dienen als Kompatibilitätsindikatoren - je höher die Punktzahl, desto kompatibler ist Ihr Code mit der Snowflake-Plattform. Sie erhalten diese Werte, indem Sie einfach das SMA-Tool ausführen.

Die SMA generiert die folgenden Bereitschaftsbewertungen:

Die Bereitschaftsbewertungen zeigen an, wie kompatibel Ihr Code mit Snowflake ist, und nicht, wie viel Arbeit noch zu tun ist. Selbst bei einer hohen Bereitschaftsbewertung kann der verbleibende inkompatible Code noch erheblichen Aufwand für die Migration erfordern. Um den für die Migration erforderlichen Aufwand genau abzuschätzen, sollten Sie den vollständigen Bewertungsbericht lesen. Wenn Sie Hilfe bei der Erstellung eines Migrationsplans oder bei der Schätzung des erforderlichen Aufwands benötigen, wenden Sie sich bitte an unser Team Snowpark Migration Accelerator: Kontaktieren Sie uns.

Stufen

Der Snowpark Migration Accelerator (SMA) verwendet ein farbcodiertes Punktesystem ähnlich einer Ampel:

  • Rot - Kritisches Problem erkannt. Halten Sie sofort an und beheben Sie das Problem, da es den Migrationsprozess erheblich beeinträchtigt oder eine genaue Codeanalyse verhindert. Befolgen Sie die angegebenen Aktionsschritte, bevor Sie fortfahren.

  • Gelb - Warnung erkannt. Prüfen Sie die Aktionsschritte sorgfältig und machen Sie sich die möglichen Auswirkungen auf Ihre Migration bewusst. Sobald Sie die Auswirkungen verstanden haben, können Sie mit dem nächsten Schritt fortfahren.

  • Grün - Keine größeren Probleme erkannt. Dies deutet zwar darauf hin, dass es keine wesentlichen Hindernisse für die Migration gibt, aber der Code muss möglicherweise noch angepasst werden. Überprüfen Sie die Aktionsschritte und fahren Sie mit dem Migrationsprozess fort.

So interpretieren Sie die Ergebnisse

Für jedes Ergebnis erhalten Sie:

  • Ein numerischer Wert

  • Eine Statusanzeige (rot, gelb oder grün, wie bereits erläutert)

  • Eine empfohlene nächste Aktion

Wir empfehlen Ihnen dringend, dass Sie:

  • Überprüfen Sie Bewertungen der Reihe nach - Wenn Sie auf eine rote Bewertung stoßen, untersuchen Sie das Problem und gehen Sie es sofort an

  • Prüfen Sie alle empfohlenen Maßnahmen für jede Bewertung - Prüfen Sie die vorgeschlagenen nächsten Schritte für alle Bewertungen, einschließlich der grünen Bewertungen, da sie wichtige Maßnahmen enthalten

Schauen wir uns die derzeit im System verfügbaren Bereitschaftsbewertungen an.

Spark API-Bereitschaftsbewertung

Der Snowpark Migration Accelerator (SMA) erzeugt eine Spark API-Bereitschaftsbewertung, die angibt, wie bereit Ihr Code für die Migration ist. Es ist wichtig zu beachten, dass diese Bewertung nur die Verwendung von Spark API-Komponenten bewertet und nicht andere Elemente wie Bibliotheken von Drittanbietern oder externe Abhängigkeiten in Ihrem Code.

Wenn SMA Ihren Code analysiert, identifiziert es alle Spark API-Referenzen, einschließlich Importanweisungen und Funktionsaufrufen. Diese Referenzen sind im Spark API-Verwendungsinventar dokumentiert, das Sie in Ihrem lokalen Verzeichnis finden. Jede Referenz wird gemäß den Spark-Referenzkategorien entweder als „unterstützt“ oder „nicht unterstützt“ eingestuft. Die Bereitschaftsbewertung wird berechnet, indem die Anzahl der unterstützten Referenzen durch die Gesamtzahl der in Ihrem Code gefundenen Referenzen geteilt wird.

![Spark API-Bereitschaftsbewertungberechnung](<../../../../images/migrations/sma-assets/image(528).png> „Bild“)

Diese Bewertung wird als Prozentsatz angezeigt und gibt an, wie gut Snowflake die in Ihrem Code gefundenen Spark API-Referenzen unterstützt. Ein höherer Prozentsatz bedeutet eine bessere Kompatibilität mit Snowflake. Sie können diese Bewertung sowohl in den Abschnitten detaillierter Bericht als auch in Zusammenfassung der Bewertung der Anwendung einsehen.

Die hier angezeigte Bereitschaftsbewertung ist der Originalwert, der von SMA generiert wurde. Bei neueren Versionen von SMA, die nur eine Bereitschaftsbewertung anzeigen, misst dieser Wert speziell die Kompatibilität von Spark API.

Spark API-Bereitschaftsstufen

Anhand der berechneten Bewertung wird das Ergebnis in eine von drei Kategorien eingeordnet: grün, gelb oder rot. Die Anwendung und der Ausgabebericht enthalten spezifische Empfehlungen auf der Grundlage Ihrer Bewertungskategorie.

Die Spark API-Bereitschaftsbewertung wird einer dieser Stufen zugeordnet:

  • Grün: Die meisten Spark API-Referenzen werden unterstützt, was dieser Workload zu einem guten Kandidaten für die Migration macht. Wenn auch andere Indikatoren grün sind, sollten Sie mit einem „Proof of Concept“ fortfahren.

  • Gelb: Einige Spark API-Referenzen werden nicht unterstützt, was einen zusätzlichen Migrationsaufwand erfordert. Die nächsten Schritte sollten die Erstellung eines Inventars der nicht unterstützten Artikel und die Abschätzung des erforderlichen Konvertierungsaufwands umfassen.

  • Rot: Eine große Anzahl von Spark API-Referenzen wird nicht unterstützt. Dieser Workload kann schwierig zu migrieren sein. Erstellen Sie ein Inventar von nicht unterstützten Elementen, um Muster zu erkennen. Wenn eine größere Umstrukturierung erforderlich ist, sollten Sie dies in Ihre Migrationsplanung einbeziehen. Wenn Sie Hilfe benötigen, wenden Sie sich an sma-support@snowflake.com.

Drittanbieter-API-Bereitschaftsbewertung

Die Drittanbieter-Bereitschaftsbewertung zeigt an, wie viele Ihrer importierten Bibliotheken in Snowflake verwendet werden können. Um diese Bewertung besser zu verstehen, lassen Sie uns zunächst erklären, was wir mit „Drittanbieter“ meinen:

Bibliothek eines Drittanbieters: Jedes Softwarepaket oder jede Bibliothek, die nicht von Snowflake (oder Snowpark in Snowflake) entwickelt, gepflegt oder kontrolliert wird.

Die Bereitschaftsbewertung gibt den Prozentsatz der externen Bibliotheken und Pakete an, die mit Snowflake kompatibel sind. Für Python-Code bedeutet Kompatibilität, dass das Paket über die Anaconda-Paketsammlung in Snowpark verfügbar ist. Für Scala- oder Java-Code bedeutet Kompatibilität, dass das Paket bereits in den Kernfunktionen von Snowpark enthalten ist.

Die Bereitschaftsbewertung wird berechnet, indem die Anzahl der unterstützten Drittanbieter-Bibliotheksimporte durch die Gesamtzahl der Drittanbieter-Bibliotheksimporte in Ihrem Code geteilt wird.

![Drittanbieter-API-Bereitschaftsbewertungsberechnung](<../../../../images/migrations/sma-assets/image(20).png> „Bild“)

Wichtige Informationen über die Bereitschaftsbewertung:

  • Unterstützte Bibliotheken von Drittanbietern in Snowpark: Dies umfasst alle von Snowpark unterstützten Bibliotheken (einschließlich org.apache.spark)

  • Gesamte Bibliotheksaufrufe von Drittanbietern: Die Summe aller im Code gefundenen Bibliotheksaufrufe von Drittanbietern, einschließlich Spark- und Nicht-Spark-Bibliotheken, unabhängig davon, ob diese von Snowpark unterstützt werden oder nicht.

  • Es werden nur Importe gezählt, die im Inventar der Importverwendungen als „ThirdPartyLib“ markiert sind. Interne Abhängigkeiten und Importe innerhalb der Codebasis sind ausgeschlossen.

  • Diese Metrik zählt die Gesamtzahl der Aufrufe, nicht die eindeutigen Bibliotheksverweise. Wenn Ihr Code beispielsweise insgesamt 100 Bibliotheksaufrufe enthält, von denen 80 auf eine nicht unterstützte Bibliothek und 20 auf eine unterstützte Bibliothek entfallen, beträgt die Unterstützungsbewertung 20 %. Dies zeigt die tatsächliche Verwendungshäufigkeit von unterstützten gegenüber nicht unterstützten Bibliotheken im Code an und nicht das Verhältnis der eindeutigen Bibliotheksverweise.

Drittanbieter-API-Bereitschaftsstufen

Anhand der berechneten Bewertung wird das Ergebnis in eine von drei Kategorien eingeordnet: grün, gelb oder rot. Die Anwendung und der Ausgabebericht enthalten spezifische Empfehlungen auf der Grundlage Ihrer Bewertungskategorie.

Die Drittanbieter-API-Bereitschaftsbewertung wird einer dieser Stufen zugeordnet:

  • Grün - Die Codebasis verwendet Python-Bibliotheken, die in Snowflake vollständig unterstützt werden. Es ist keine zusätzliche Konfiguration erforderlich.

  • Gelb - Die Codebasis enthält mindestens ein Python-Paket oder eine Bibliothek, die derzeit nicht von Snowpark unterstützt wird. Sie können nicht unterstützte Pakete von Drittanbietern mit verschiedenen Methoden hinzufügen, die in der Dokumentation Drittanbieter-Paket beschrieben sind. Um nicht unterstützte Pakete zu identifizieren, prüfen Sie das von SMA generierte Importverwendungsinventar. Analysieren Sie dann, wie diese Pakete in Ihrem Code verwendet werden und planen Sie ihre Implementierung in Snowflake.

  • Rot - Die Codebasis verlässt sich stark auf Pakete oder Bibliotheken, die in Snowpark nicht unterstützt werden. Dies könnte bedeuten, dass entweder eine einzige nicht unterstützte Bibliothek im gesamten Code verwendet wird oder dass mehrere nicht unterstützte Bibliotheken in verschiedenen Teilen der Codebasis verwendet werden. Eine gründliche Bewertung dieser wichtigen Aussagen ist notwendig, um ihre Auswirkungen zu verstehen. Wenn Sie Anleitung oder Unterstützung für das Paket benötigen, wenden Sie sich an sma-support@snowflake.com.

SQL-Bereitschaftsbewertung

Die SQL-Bereitschaftsbewertung gibt an, wie viel Prozent der SQL-Elemente in Ihrem Quellcode mit Hilfe des Snowpark Migration Accelerators (SMA) automatisch in Snowflake-SQL konvertiert werden können. Eine höhere Bewertung bedeutet, dass mehr von Ihrem Code automatisch konvertiert werden kann, was den Migrationsprozess einfacher und schneller macht.

Die Bereitschaftsbewertung wird berechnet, indem die Anzahl der SQL-Elemente, die konvertiert werden können, durch die Gesamtzahl der SQL-Elemente im Quellcode geteilt wird.

![SQL-Bereitschaftsbewertungberechnung](../../../../images/migrations/sma-assets/Readiness.png „Bild“)

SQL-Bereitschaftsbewertungstufen

Die SQL-Bereitschaftsbewertung wird einer dieser Stufen zugeordnet:

  • Grün - Die meisten SQL in dieser Codebasis werden entweder direkt von Snowflake unterstützt oder können automatisch von SMA konvertiert werden. Auch wenn keine Konvertierung perfekt ist, erfordert diese Arbeitslast nur minimale manuelle Anpassungen für die Snowflake-Migration.

  • Gelb - Einige SQL-Elemente in dieser Codebasis werden von Snowflake nicht unterstützt und erfordern zusätzlichen Aufwand für die Migration. Überprüfen Sie das SQL-Elementinventar auf nicht unterstützte Features und überprüfen Sie die EWIs in der Problemausgabe, um einen Aktionsplan zu erstellen. Möglicherweise müssen Sie kleinere Code-Anpassungen vornehmen oder einige Komponenten teilweise neu gestalten.

  • Rot - Ein großer Teil von SQL in dieser Codebasis ist nicht mit Snowflake kompatibel, was darauf hindeutet, dass ein umfangreiches Redesign erforderlich sein könnte. Um fortzufahren, überprüfen Sie das SQL-Elementinventar auf nicht unterstützte Features und untersuchen Sie die EWIs in der Problemausgabe, um eine Migrationsstrategie zu entwickeln. Wenn Sie Hilfe benötigen, wenden Sie sich an sma-support@snowflake.com.


Bereitschaftsbewertungen liefern zwar wertvolle Erkenntnisse, sollten aber nicht der einzige Faktor bei der Bestimmung der Migrationsbereitschaft eines Workloads sein. Berücksichtigen Sie neben diesen Bewertungen auch mehrere Aspekte Ihres Migrationsplans, denn sie dienen eher als erste Einschätzung denn als vollständige Bewertung. Wenn Sie feststellen, dass bestimmte Bereitschaftsmetriken verbessert werden könnten oder im Tool nicht korrekt dargestellt werden, lassen Sie es uns bitte wissen Snowpark Migration Accelerator: Kontaktieren Sie uns. Das Team von SMA arbeitet kontinuierlich an der Verbesserung und Verfeinerung dieser Bereitschaftsmessungen.