Método de substring Pyspark

Método de substring Pyspark
A Biblioteca Pyspark é um mecanismo de processamento distribuído e interno de uso geral, que permite lidar com os dados em várias máquinas com eficiência. Um de seus métodos populares é o substring (), que é útil para obter uma substring de uma determinada coluna, juntamente com seus exemplos. Vamos mergulhar e aprender mais sobre esta biblioteca e seu método de substring.

O que é Pyspark?

Pyspark é um dos idiomas suportados de Spark. Spark é uma tecnologia de processamento de big data que pode lidar com dados em uma escala de petabyte. Você pode desenvolver aplicativos Spark para processar os dados e executá -los na plataforma Spark usando Pyspark. O AWS oferece o EMR gerenciado e a plataforma Spark. Você pode usar o Pyspark para processar os dados e estabelecer um cluster EMR na AWS. Pyspark pode ler os dados de CSV, Parquet, JSON e bancos de dados.

Como o Spark é implementado principalmente em Scala, a criação de aplicativos Spark em Scala ou Java permite acessar mais de seus recursos do que escrever programas de faísca em python ou r. Pyspark atualmente não suporta o conjunto de dados. Para alguém que busca uma ciência de dados, o Pyspark é uma opção melhor que o scala, porque existem muitas bibliotecas populares de ciência de dados escritas em python, como Numpy, Tensorflow e Scikit-Learn. Para conjuntos de dados menores, os pandas são utilizados, enquanto que, para conjuntos de dados maiores, o Pyspark é empregado.

Em comparação com Pyspark, os pandas fornecem resultados mais rápidos. Dependendo da limitação da memória e do tamanho dos dados, você pode escolher entre Pyspark e Pandas para melhorar o desempenho. Sempre use pandas sobre o Pyspark ao processar dados é suficiente para se encaixar na memória.

O conjunto de dados distribuído resiliente (RDD) é o sofisticado mecanismo subjacente de dados de faísca. Os dados são resilientes, o que implica que, se um sistema com os dados falhar, os dados serão replicados em outros lugares e podem ser restaurados. Distribuído significa que os dados estão divididos entre as máquinas 'n', permitindo que você acelere um processo teoricamente, além de lidar com grandes quantidades de dados. Uma das ramificações da computação distribuída é que os dados devem ser sincronizados com extrema cautela. Spark exige programação funcional, o que significa que as funções não devem ter efeitos colaterais para evitar muitas dessas preocupações. Como resultado, se você deseja alterar uma tabela, você deve primeiro criar uma nova tabela.

Muitos programadores não estão familiarizados com o conceito de programação funcional. Pyspark não faz um bom trabalho em fazer o RDD transparente. A API capta parte do ambiente do ambiente RDD. Programação funcional, por exemplo, significa que uma função não pode ter efeitos colaterais (o que torna a manutenção dos dados consistentes muito mais difíceis). Outro exemplo é a avaliação "preguiçosa", que permite a Spark esperar até ter uma imagem abrangente do que você está tentando alcançar antes de tentar otimizar os processos. Spark rapidamente se tornou a tecnologia preferida do setor para processamento de dados. No entanto, não é o primeiro. Antes do Spark, o mecanismo de processamento era mapeado. O Spark é amplamente utilizado em indústrias em sistemas de armazenamento distribuídos como Hadoop, Mesos e a nuvem. É fundamental compreender os sistemas de armazenamento distribuídos e como eles operam.

Qual é o método substring () em Pyspark?

O método substring () em Pyspark extrai uma substring de uma coluna de dados de dados do tipo de string especificando seu comprimento e localização.

Substring de função SQL ()

Podemos obter uma substring de uma string usando o substring() função do Pyspark.SQL.funções módulo fornecendo o índice e o comprimento da string que desejamos cortar. Aqui está um exemplo de usar este método:

Substring (STR, POS, LEN)
dados = [(1, "20210828"), (2, "20190725")]]
colunas = ["id", "date"]
df = Spark.CreatedAtAframe (dados, colunas)
df.WithColumn ('Ano', Substring ('Data', 1,4)) \
.withcolumn ('mês', substring ('data', 5,2)) \
.Withcolumn ('dia', substring ('data', 7,2))
df.PrintSchema ()
df.show (truncate = false)

Usando substring () com select ()

Usando Selecione Em Pyspark, podemos obter a substring de uma coluna.

df.Selecione ('Data', Substring ('Data', 1,4).Alias ​​('Ano'), \
substring ('data', 5,2).Alias ​​('mês'), \
substring ('data', 7,2).Alias ​​('dia'))

Usando substring () com selectExpr ()

O exemplo de usar SELECTEXPR O método para obter o ano, mês e dia como substringas da coluna (data) é o seguinte:

df.selectExpr ('Data', 'Substring (data, 1,4) como ano', \
'Substring (data, 5,2) como mês', \
'Substring (data, 7,2) como dia')

Usando o substr () do tipo de coluna

Obtenha a substring usando o substr() função de Pyspark.SQL.Coluna Digite Pyspark.

df3 = df.Withcolumn ('ano', col ('data').substr (1, 4)) \
.withcolumn ('mês', col ('data').substr (5, 2)) \
.Withcolumn ('dia', col ('data').substr (7, 2))

5. Juntar as peças

Importar Pyspark
de Pyspark.SQL Import SparkSession
de Pyspark.SQL.funções Importar Col, substring
Spark = SparkSession.construtor.AppName ("Demo").getorcreate ()
dados = [(1, "20210828"), (2, "20190725")]]
colunas = ["id", "date"]
df = Spark.CreatedAtAframe (dados, colunas)
df.WithColumn ('Ano', Substring ('Data', 1,4)) \
.withcolumn ('mês', substring ('data', 5,2)) \
.Withcolumn ('dia', substring ('data', 7,2))
df.PrintSchema ()
df.show (truncate = false)
df.Selecione ('Data', Substring ('Data', 1,4).Alias ​​('Ano'), \
substring ('data', 5,2).Alias ​​('mês'), \
substring ('data', 7,2).Alias ​​('dia'))
df.selectExpr ('Data', 'Substring (data, 1,4) como ano', \
'Substring (data, 5,2) como mês', \
'Substring (data, 7,2) como dia')
df3 = df.Withcolumn ('ano', col ('data').substr (1, 4)) \
.withcolumn ('mês', col ('data').substr (5, 2)) \
.Withcolumn ('dia', col ('data').substr (7, 2))

Conclusão

Discutimos sobre o Pyspark, um sistema de processamento de big data capaz de lidar com petabytes de dados e seu método de substring () junto com seus poucos exemplos.