Ich habe erfolgreich eingerichtet Apache Drill (neueste 1.9) mit dem JDBC-Client von Oracle (neuestem ojdbc7.jar von Oracle) als Speicher Plugin:Extrem langsame Abfrage Apache Drill mit Oracle jdbc
{
"type": "jdbc",
"driver": "oracle.jdbc.driver.OracleDriver",
"url": "jdbc:oracle:thin:@server:1521/myservicename",
"username": "TEST_USER",
"password": "password",
"enabled": true
}
ich kann Machen Sie Abfragen, aber selbst die einfachsten Dinge brauchen buchstäblich Minuten, um ausgeführt zu werden. Das Abfragen einer Single-Row-Tabelle dauert 78 Sekunden. Und nur das Standardschemas Einstellung dauert eine Minute über:
0: jdbc:drill:zk=local> use oracle.TEST_USER
. . . . . . . . . . . > ;
+-------+-------------------------------------------------+
| ok | summary |
+-------+-------------------------------------------------+
| true | Default schema changed to [oracle.TEST_USER] |
+-------+-------------------------------------------------+
1 row selected (77,5 seconds)
Aber ich habe mit einer einfachen Hallo-Welt-Stil Java-Anwendung getestet, dass die Verbindung mit der gleichen Verbindungszeichenfolge mit vollem Tisch holen mal absolut einwandfrei funktioniert von ungefähr 0,1 Sekunde.
jdbc:oracle:thin:@server:1521/myservicename
habe ich von einem Ubuntu und Mac getestet und auch versucht, die Random-Quelle für Java-Einstellung wie andere Antworten als potenzielle Performance-Probleme hinweisen:
export DRILL_JAVA_OPTS="$DRILL_JAVA_OPTS -Djava.security.egd=file:/dev/./urandom"
Was hier los? Ist das ein bekanntes Problem oder gibt es eine Problemumgehung?
Ich habe Drill-Embedded verwendet.
Aktivieren Sie den Oracle 10046-Trace, um zu sehen, welcher Teil der Zeit in der Datenbank verstrichen ist. –