spark.read.jdbc() și df.write.jdbc() permit interconectarea clusterului Spark cu motoare RDBMS clasice. Pentru tabele de mari dimensiuni, Spark poate partiționa citirea prin lansarea simultană a mai multor conexiuni JDBC paralele bazate pe o coloană numerică indexată (ex. cheia primară id).
Această tehnică distribuie sarcina de citire direct între nodurile de lucru fără a suprasolicita un singur fir de execuție.
Exemplu: Citire paralelă distribuită din PostgreSQL pe 4 partiții
jdbc_url = "jdbc:postgresql://db.dexblog.ro:5432/productie"
props = {
"user": "analyst",
"password": "secret_password",
"driver": "org.postgresql.Driver"
}
df_comenzi = spark.read.jdbc(
url=jdbc_url,
table="comenzi",
column="id",
lowerBound=1,
upperBound=1000000,
numPartitions=4,
properties=props
)
print(f"Număr partiții create: {df_comenzi.rdd.getNumPartitions()}")
Întrebări & Exemple de Cod:
Conectarea Distribuită la Baze Relaționale cu spark.read.jdbcAi o nelămurire despre utilizarea comenzii
Conectarea Distribuită la Baze Relaționale cu spark.read.jdbcsau ai descoperit un truc / fragment de cod util? Distribuie-l cu ceilalți programatori!Fii primul care pune o întrebare sau distribuie un fragment de cod / prompt!
Nu au fost adăugate încă întrebări sau exemple de cod pentru această pagină. Dacă ai întâlnit o problemă sau ai un snippet util, adaugă-l mai jos pentru a-i ajuta pe ceilalți.