Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Platí pro:
Databricks Runtime 18.2 a vyšší
Important
Tato funkce je v beta verzi. Správci pracovního prostoru můžou řídit přístup k této funkci ze stránky Previews . Viz Manage Azure Databricks preview.
Vrátí kanonický binární reprezentaci IP adresy nebo bloku CIDR. Vrátí místo None vyvolání chyby, pokud je vstup neplatný.
Odpovídající funkci SQL najdete v tématutry_ip_as_binary funkce.
Syntax
from pyspark.databricks.sql import functions as dbf
dbf.try_ip_as_binary(col=<col>)
Parameters
| Parameter | Typ | Description |
|---|---|---|
col |
pyspark.sql.Column nebo str |
Hodnota STRING nebo BINARY představující platnou adresu IPv4 nebo IPv6 nebo blok CIDR. |
Příklady
Příklad 1: Převod adresy IPv4 na binární.
from pyspark.databricks.sql import functions as dbf
from pyspark.sql.functions import hex
df = spark.createDataFrame([('192.168.1.1',)], ['ip'])
df.select(hex(dbf.try_ip_as_binary('ip')).alias('result')).collect()
[Row(result='C0A80101')]
Příklad 2: Převod adresy IPv6 na binární.
from pyspark.databricks.sql import functions as dbf
from pyspark.sql.functions import hex
df = spark.createDataFrame([('2001:db8::1',)], ['ip'])
df.select(hex(dbf.try_ip_as_binary('ip')).alias('result')).collect()
[Row(result='20010DB8000000000000000000000001')]
Příklad 3: Převod bloku CIDR na binární.
from pyspark.databricks.sql import functions as dbf
from pyspark.sql.functions import hex
df = spark.createDataFrame([('192.168.1.5/24',)], ['cidr'])
df.select(hex(dbf.try_ip_as_binary('cidr')).alias('result')).collect()
[Row(result='C0A8010018')]
Příklad 4: Neplatné vstupy vrátí None.
from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([('invalid.ip',)], ['ip'])
df.select(dbf.try_ip_as_binary('ip').alias('result')).collect()
[Row(result=None)]
Příklad 5: None vstup vrátí None.
from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([(None,)], 'ip: string')
df.select(dbf.try_ip_as_binary('ip').alias('result')).collect()
[Row(result=None)]