Classe IpToInt - AWS Glue

Classe IpToInt

La transformation IpToInt convertit la valeur IPv4 (Internet Protocol version 4) de la colonne source ou une autre valeur en valeur entière correspondante dans la colonne cible, puis renvoie le résultat dans une nouvelle colonne.

exemple

Pour AWS Glue 4.0 et versions ultérieures, créez ou mettez à jour les arguments de tâche avec key: --enable-glue-di-transforms, value: true.

from pyspark.context import SparkContext from awsgluedi.transforms import * sc = SparkContext() input_df = spark.createDataFrame( [ ("192.0.0.1",), ("10.10.10.10",), ("1.2.3.4",), ("1.2.3.6",), ("http://12.13.14.15",), ("https://16.17.18.19",), ("1.2.3.4",), (None,), ("abc",), ("abc.abc.abc.abc",), ("321.123.123.123",), ("244.4.4.4",), ("255.255.255.255",), ], ["source_column_ip"], ) df_output = web_functions.IpToInt.apply( data_frame=input_df, spark_context=sc, source_column="source_column_ip", target_column="target_column", value=None ) df_output.show()

Sortie

Le résultat sera :

``` +----------------+---------------+ |source_column_ip| target_column| +----------------+---------------+ | 192.0.0.1| 3221225473| | 10.10.10.10| 168427722| | 1.2.3.4| 16909060| | 1.2.3.6| 16909062| |http://12.13.14.15| null| |https://16.17.18.19| null| | 1.2.3.4| 16909060| | null| null| | abc| null| |abc.abc.abc.abc| null| | 321.123.123.123| null| | 244.4.4.4| 4102444804| | 255.255.255.255| 4294967295| +----------------+---------------+ ```

La transformation IpToInt prend la valeur `source_column` `"source_column_ip"` et la valeur `target_column` `"target_column"` et convertit les chaînes d’adresse IPv4 valides de la colonne `source_column_ip` en leur représentation d’entier 32 bits correspondante, puis stocke le résultat dans la colonne `target_column`.

Pour les chaînes d’adresse IPv4 valides (par exemple, « 192.0.0.1 », « 10.10.10.10 », « 1.2.3.4 »), la transformation les convertit correctement en leur représentation entière (par exemple, 3221225473, 168427722, 16909060). Pour les chaînes qui ne sont pas des adresses IPv4 valides (par exemple, les URL, les chaînes non IP comme « abc », les formats IP non valides tels que « abc.abc.abc.abc »), la valeur `target_column` est définie sur `null`. Pour les valeurs `null` de la colonne `source_column_ip`, la valeur `target_column` est également définie sur `null`.

Méthodes

__call__(spark_context, data_frame, target_column, source_column=None, value=None)

La transformation IpToInt convertit la valeur IPv4 (Internet Protocol version 4) de la colonne source ou une autre valeur en valeur entière correspondante dans la colonne cible, puis renvoie le résultat dans une nouvelle colonne.

  • sourceColumn : nom d’une colonne existante.

  • value : chaîne de caractères à évaluer.

  • targetColumn : le nom de la nouvelle colonne à créer.

apply(cls, *args, **kwargs)

Hérité de GlueTransform s'appliquent.

name(cls)

Hérité de GlueTransform name.

describeArgs(cls)

Hérité de GlueTransform describeArgs.

describeReturn(cls)

Hérité de GlueTransform describeReturn.

describeTransform(cls)

Hérité de GlueTransform describeTransform.

describeErrors(cls)

Hérité de GlueTransform describeErrors.

describe(cls)

Hérité de GlueTransform describe.