Analisar com o Apache Spark
Neste tutorial, irá aprender os passos básicos para carregar e analisar dados com o Apache Spark para Azure Synapse.
Criar um conjunto do Apache Spark sem servidor
- No Synapse Studio, no painel esquerdo, selecione Gerir>conjuntos do Apache Spark.
- Selecionar Novo
- Para o nome do conjunto do Apache Spark , introduza Spark1.
- Em Tamanho do nó , introduza Pequeno.
- Para Número de nós , defina o mínimo como 3 e o máximo para 3
- Selecione Rever + criar>Criar. O conjunto do Apache Spark estará pronto dentro de alguns segundos.
Compreender os conjuntos do Apache Spark sem servidor
Um conjunto do Spark sem servidor é uma forma de indicar como um utilizador quer trabalhar com o Spark. Quando começa a utilizar um conjunto, é criada uma sessão do Spark, se necessário. O conjunto controla quantos recursos do Spark serão utilizados por essa sessão e quanto tempo a sessão irá durar antes de ser automaticamente interrompida. Paga pelos recursos do Spark utilizados durante essa sessão e não pelo próprio conjunto. Desta forma, um conjunto do Spark permite-lhe utilizar o Apache Spark sem gerir clusters. Isto é semelhante ao funcionamento de um conjunto de SQL sem servidor.
Analisar dados do Táxi de NYC com um conjunto do Spark
Nota
Certifique-se de que colocou os dados de exemplo na conta de armazenamento principal.
No Synapse Studio, aceda ao hub Desenvolver.
Crie um novo bloco de notas.
Crie uma nova célula de código e cole o seguinte código nessa célula:
%%pyspark df = spark.read.load('abfss://users@contosolake.dfs.core.windows.net/NYCTripSmall.parquet', format='parquet') display(df.limit(10))
Modifique o URI de carga, para que referencie o ficheiro de exemplo na sua conta de armazenamento de acordo com o esquema de URI do abfss.
No bloco de notas, no menu Anexar a, selecione o conjunto spark sem servidor do Spark1 que criámos anteriormente.
Selecione Executar na célula. O Synapse iniciará uma nova sessão do Spark para executar esta célula, se necessário. Se for necessária uma nova sessão do Spark, inicialmente demorará cerca de 2 a 5 minutos a ser criada. Depois de criada uma sessão, a execução da célula demorará cerca de 2 segundos.
Se apenas quiser ver o esquema do dataframe, execute uma célula com o seguinte código:
%%pyspark df.printSchema()
Carregar os dados do Táxi de NYC para a base de dados do Spark nyctaxi
Os dados estão disponíveis através do dataframe denominado df. Carregue-o para uma base de dados do Spark com o nome nyctaxi.
Adicione uma nova célula de código ao bloco de notas e, em seguida, introduza o seguinte código:
%%pyspark spark.sql("CREATE DATABASE IF NOT EXISTS nyctaxi") df.write.mode("overwrite").saveAsTable("nyctaxi.trip")
Analisar os dados do Táxi de NYC com o Spark e os blocos de notas
Crie uma nova célula de código e introduza o seguinte código.
%%pyspark df = spark.sql("SELECT * FROM nyctaxi.trip") display(df)
Execute a célula para mostrar os dados do Táxi de NYC que carregamos para a base de dados nyctaxi Spark.
Crie uma nova célula de código e introduza o seguinte código. Vamos analisar estes dados e guardar os resultados numa tabela denominada nyctaxi.passengercountstats.
%%pyspark df = spark.sql(""" SELECT passenger_count, SUM(trip_distance) as SumTripDistance, AVG(trip_distance) as AvgTripDistance FROM nyctaxi.trip WHERE trip_distance > 0 AND passenger_count > 0 GROUP BY passenger_count ORDER BY passenger_count """) display(df) df.write.saveAsTable("nyctaxi.passengercountstats")
Nos resultados da célula, selecione Gráfico para ver os dados visualizados.