Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Apache Hudi
Per utilizzare le tabelle Apache Hudi in Athena per Spark, configura le seguenti proprietà Spark. Queste proprietà sono configurate automaticamente nella console Athena for Spark quando scegli Apache Hudi come formato di tabella. Per la procedura, consulta Fase 4: Modifica i dettagli della sessione o Fase 7: Crea il tuo taccuino.
"spark.sql.catalog.spark_catalog": "org.apache.spark.sql.hudi.catalog.HoodieCatalog", "spark.serializer": "org.apache.spark.serializer.KryoSerializer", "spark.sql.extensions": "org.apache.spark.sql.hudi.HoodieSparkSessionExtension"
La seguente procedura mostra come utilizzare una tabella Apache Hudi in un notebook Athena per Spark. Esegui ogni passaggio in una nuova cella del notebook.
Per usare una tabella Apache Hudi in Athena per Spark
-
Definisci le costanti da usare nel notebook.
DB_NAME = "
NEW_DB_NAME
" TABLE_NAME = "NEW_TABLE_NAME
" TABLE_S3_LOCATION = "s3://amzn-s3-demo-bucket" -
Crea un Apache Spark. DataFrame
columns = ["language","users_count"] data = [("Golang", 3000)] df = spark.createDataFrame(data, columns)
-
Crea un database.
spark.sql("CREATE DATABASE {} LOCATION '{}'".format(
DB_NAME
,TABLE_S3_LOCATION
)) -
Crea una tabella Apache Hudi vuota.
spark.sql(""" CREATE TABLE {}.{} ( language string, users_count int ) USING HUDI TBLPROPERTIES ( primaryKey = 'language', type = 'mor' ); """.format(
DB_NAME
,TABLE_NAME
)) -
Inserisci una riga di dati nella tabella.
spark.sql("""INSERT INTO {}.{} VALUES ('Golang', 3000)""".format(
DB_NAME
,TABLE_NAME
)) -
Conferma di poter eseguire query sulla nuova tabella.
spark.sql("SELECT * FROM {}.{}".format(
DB_NAME
,TABLE_NAME
)).show()