Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Utwórz ramkę danych Spark z zapytania SQL

Znalazłem to tutaj Zbiorcza migracja danych przez Spark SQL

Parametr dbname może być dowolnym zapytaniem ujętym w nawiasy z aliasem. Więc w moim przypadku muszę to zrobić:

val query = """
  (select dl.DialogLineID, dlwim.Sequence, wi.WordRootID from Dialog as d
    join DialogLine as dl on dl.DialogID=d.DialogID
    join DialogLineWordInstanceMatch as dlwim on dlwim.DialogLineID=dl.DialogLineID
    join WordInstance as wi on wi.WordInstanceID=dlwim.WordInstanceID
    join WordRoot as wr on wr.WordRootID=wi.WordRootID
    where d.InSite=1 and dl.Active=1
    limit 100) foo
"""

val df = sqlContext.format("jdbc").
  option("url", "jdbc:mysql://localhost:3306/local_content").
  option("driver", "com.mysql.jdbc.Driver").
  option("useUnicode", "true").
  option("continueBatchOnError","true").
  option("useSSL", "false").
  option("user", "root").
  option("password", "").
  option("dbtable",query).
  load()

Zgodnie z oczekiwaniami ładowanie każdej tabeli jako własnej Dataframe i łączenie ich w Spark było bardzo nieefektywne.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Nie można uzyskać dostępu do MySQL po automatycznym wygenerowaniu tymczasowego hasła

  2. Samouczek MySQL – Zrozumienie sekund kryjących się za wartością nadrzędną

  3. jak ustawić długość kolumny w stanie hibernacji z maksymalną długością

  4. WYBRAĆ użytkowników z bazy danych MySQL według maski bitowej uprawnień?

  5. XmlHTTPRequest:Błąd analizowania XML:nie znaleziono elementu