Chciałbym stworzyć Spark SQL DataFrame z wyników zapytania wykonanego na danych CSV (na HDFS) za pomocą Apache Drill. Pomyślnym skonfigurowaniu Spark SQL, aby połączyć się wywiercić poprzez JDBC:Integracja Spark SQL i Apache Drill poprzez JDBC
Map<String, String> connectionOptions = new HashMap<String, String>();
connectionOptions.put("url", args[0]);
connectionOptions.put("dbtable", args[1]);
connectionOptions.put("driver", "org.apache.drill.jdbc.Driver");
DataFrame logs = sqlc.read().format("jdbc").options(connectionOptions).load();
Spark SQL wykonuje dwa zapytania: pierwsza dostać schematu, a drugi do pobierania rzeczywiste dane:
SELECT * FROM (SELECT * FROM dfs.output.`my_view`) WHERE 1=0
SELECT "field1","field2","field3" FROM (SELECT * FROM dfs.output.`my_view`)
Pierwszy z nich zakończył się powodzeniem, ale w drugim Spark zamyka pola w podwójnych cudzysłowach, co nie jest obsługiwane przez Wiertło, więc zapytanie kończy się niepowodzeniem.
Czy ktoś zdołał uruchomić tę integrację?
Dziękujemy!
to wygląda Scala ale pytanie OP był w Javie. – paisanco
Prawda, mimo to akceptuję odpowiedź, ponieważ wskazuje ona na JdbcDialect. Dzięki! –