RDD significa conjuntos de dados distribuídos resilientes. Podemos chamar RDD de estrutura de dados fundamental no Apache Spark. Emparelhar o RDD armazena os elementos/valores na forma de pares de valor-chave. Ele armazenará o par de valores-chave no formato (chave, valor).
Precisamos importar RDD do Pyspark.Módulo RDD.
Portanto, em Pyspark, podemos usar o método parallelize () para criar um RDD,.
Sintaxe:
Spark_App.SparkContext.paralelize (dados)Onde,
Os dados podem ser um dimensional (dados lineares) ou bidimensional (dados da coluna de linha).
Transformações RDD:
Um RDD de transformação é uma operação que é aplicada a um par RDD para criar novos dados do par existente RDD. Usando transformações, somos capazes de filtrar o par RDD aplicando algumas transformações.
Vamos ver as transformações que são realizadas no par de pares RDD.
Vamos discuti -los um por um.
GrupoByKey
GrupoByKey é usado para executar a transformação em um par RDD, agrupando os valores com base na chave. Ele colocará todos os valores agrupados em uma lista seguida pela chave.
Sintaxe:
parrdd_data.groupByKey ()Usaremos um loop for para iterar as chaves e valores e colocar os valores dentro de uma lista usando a função List ().
Exemplo:
Neste exemplo, criamos um par RDD - sujeitos_rating e executamos a transformação de groupByKey () em valores de grupo em relação à chave. Por isso, usamos um loop para iterar chaves e valores e, finalmente, exibimos cada chave de chave e valor.
#import o módulo PysparkSaída:
Python -> [4, 3]No RDD de pares de sujeitos acima, há dois valores associados a Key-Python e Key-Javascript e apenas um valor associado a Linux e C#.
Sportbike
SortbyKey é usado para executar a transformação em um par RDD retornando um novo par RDD em ordem crescente com base na chave. Portanto, essa transformação classificará os elementos no par RDD por chave.
Sintaxe:
parrdd_data.SortbyKey ()Exemplo:
Neste exemplo, criamos um par RDD - SIGNESS_RATING e executamos a transformação SortbyKey () para retornar valores classificados com base na ação de key e Applied collect () para obter o par classificado RDD.
#import o módulo PysparkSaída:
[('C#', 4), ('JavaScript', 2), ('JavaScript', 4), ('Linux', 5), ('Python', 4), ('Python', 3)]Podemos ver que o novo par classificado RDD é devolvido pela classificação com base na chave no par RDD real - sujeitos_rating.
ReduceByKey
ReduceByKey é usado para executar a transformação em um par RDD, processando os dados parallelly para combinar os valores com chaves semelhantes. Ele usou algumas funções como Lambda () para combinar os valores com base na chave, executando alguma operação na função.
Sintaxe:
parrdd_data.ReduceByKey (função lambda)Função lambda:
Lambda Element1, Element2: OperaçãoExemplo:
Neste exemplo, criamos um par RDD - Subjects_rating e executamos ReduceByKey () Transformação para executar
Finalmente, podemos usar a ação colecionada () para exibir cada par transformado RDD.
#import o módulo PysparkSaída:
[('Python', 7), ('JavaScript', 6), ('Linux', 5), ('C#', 4)]Para Key-Linux e C#: Existe apenas um valor para cada um, então todas as operações resultantes são as mesmas.e.
Conclusão
A partir deste par de RDD, vimos o que é a transformação e como aplicar transformações de RDD em pares. Existem três transformações que discutimos: o groupByKey () é usado para combinar todos os valores com base em Key, SortbyKey () retorna um novo par RDD, classificando o par RDD com base em chaves em ordem crescente e ReduceByKey () combinará valores com relação a Chave ao executar alguma operação usando funções anônimas como a função lambda.