Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

JDBC के साथ SparkSession.sql() का उपयोग करें

स्पार्क पढ़ सकता है और लिखें JDBC डेटा स्रोत (जैसे आपने अपने पहले कोड उदाहरण में किया था) का उपयोग करके संबंधपरक डेटाबेस से डेटा/डेटा।

इसके अलावा (और पूरी तरह से अलग), स्पार्क एसक्यूएल का उपयोग विचारों . को क्वेरी करने की अनुमति देता है जो डेटा पर बनाए गए थे जो पहले से ही किसी स्रोत से डेटाफ़्रेम में लोड किया गया था। उदाहरण के लिए:

val df = Seq(1,2,3).toDF("a") // could be any DF, loaded from file/JDBC/memory...
df.createOrReplaceTempView("my_spark_table")
spark.sql("select a from my_spark_table").show()

केवल "टेबल" (स्पार्क 2.0.0 के रूप में दृश्य कहा जाता है) को इस तरह से बनाया जा सकता है SparkSession.sql का उपयोग करके पूछताछ की जा सकती है .

यदि आपका डेटा एक रिलेशनल डेटाबेस में संग्रहीत है, तो स्पार्क को इसे पहले वहां से पढ़ना होगा, और उसके बाद ही यह लोड की गई कॉपी पर किसी भी वितरित गणना को निष्पादित करने में सक्षम होगा। निचला रेखा - हम read . का उपयोग करके तालिका से डेटा लोड कर सकते हैं , एक अस्थायी दृश्य बनाएँ, और फिर उससे पूछें:

ss.read
  .format("jdbc")
  .option("url", "jdbc:mysql://127.0.0.1/database_name")
  .option("dbtable", "schema.tablename")
  .option("user", "username")
  .option("password", "password")
  .load()
  .createOrReplaceTempView("my_spark_table")

// and then you can query the view:
val df = ss.sql("select * from my_spark_table where ... ")



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. PDO::FETCH_ASSOC सब कुछ नहीं ला रहा है

  2. एडब्ल्यूएस MySQL आरडीएस बनाम एडब्ल्यूएस डायनेमोडीबी

  3. SQL क्वेरी परिणाम में किसी अन्य तालिका से एकाधिक चर बदलें

  4. मैं कैसे पता लगा सकता हूं कि कौन सा लेनदेन तालिका मेटाडेटा लॉक स्थिति की प्रतीक्षा कर रहा है?

  5. मुझे अपने PHP के साथ 500 त्रुटि क्यों मिलती रहती है?