IpToInt 类 - Amazon Glue
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

IpToInt 类

IpToInt 转换会将源列的 Internet 协议版本 4(IPv4)值或其他值转换为目标列中相应的整数值,然后在新列中返回结果。

示例

对于 Amazon Glue 4.0 及更高版本,使用 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()

输出

输出是:

``` +----------------+---------------+ |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| +----------------+---------------+ ```

IpToInt 转换会将“source_column”设为“source_column_ip”,将“target_column”设为“target_column”,并将“source_column_ip”列中的有效 IPv4 地址字符串转换为相应的 32 位整数表示形式,并将结果存储在“target_column”列中。

对于有效的 IPv4 地址字符串(例如“192.0.0.1”、“10.10.10.10”、“1.2.3.4”),该转换可成功地将其转换为整数表示形式(例如 3221225473、168427722、16909060)。对于非有效 IPv4 地址的字符串 [例如 URL、非 IP 字符串(如“abc”)、无效 IP 格式(如“abc.abc.abc.abc”)],“target_column”值会设置为“null”。对于“source_column_ip”列中的“null”值,“target_column”值也会设置为“null”。

方法

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

IpToInt 转换会将源列的 Internet 协议版本 4(IPv4)值或其他值转换为目标列中相应的整数值,然后在新列中返回结果。

  • sourceColumn – 现有列的名称。

  • value – 要计算的字符串。

  • targetColumn – 要创建的新列的名称。

apply(cls, *args, **kwargs)

继承自 GlueTransform apply

name(cls)

继承自 GlueTransform name

describeArgs(cls)

继承自 GlueTransform describeArgs

describeReturn(cls)

继承自 GlueTransform describeReturn

describeTransform(cls)

继承自 GlueTransform describeTransform

describeErrors(cls)

继承自 GlueTransform describeErrors

describe(cls)

继承自 GlueTransform describe