Gibt es eine Möglichkeit, Gläser, die in einem Eimer auf S3 als eine Abhängigkeit von Zeppelin sind hinzufügen? versucht z.load(s3n://...)
und z.addRepo(some_name).url(s3n://...)
aber sie scheinen nicht den Job zu tun ..Wie verwendet man Abhängigkeiten von S3 in Zeppelin?
1
A
Antwort
2
Sie könnten Gläser aus S3 herunterladen und es auf dem lokalen FS.
%dep
import com.amazonaws.services.s3.AmazonS3Client
import java.io.File
import java.nio.file.{Files, StandardCopyOption}
val dest = "/tmp/dependency.jar"
val s3 = new AmazonS3Client()
val stream = s3.getObject("buckename", "path.jar").getObjectContent
Files.copy(stream, new File(dest).toPath, StandardCopyOption.REPLACE_EXISTING)
z.load(dest)
Hinweis: Es könnte innerhalb % dep Interpreter wie dies getan werden Sie Fett Glas erzeugen muss, dh alle benutzerdefinierten Abhängigkeiten sind nicht standardmäßig zur Verfügung gestellt (zum Beispiel, wenn Sie mehrere Module in Ihrem Projekt). In maven könnte es mit maven-shade-plugin implementiert werden:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>2.4.2</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
<configuration>
<artifactSet>
<includes>
<include>com.yourcompany:*</include>
</includes>
</artifactSet>
</configuration>
</execution>
</executions>
</plugin>
Vielen Dank! Gibt es eine Möglichkeit, diese Frage auch zu beantworten? Vielen Dank! http://stackoverflow.com/questions/37251236/apache-zeppelin-running-code-automatisch-on-startup – shakedzy
Ich denke nicht, dass dies funktioniert nicht mehr. "DepInterpreter (% dep) veraltet. Lade die Abhängigkeit stattdessen über das GUI-Interpreter-Menü." – Jeremy
Ich habe dies zu arbeiten, indem ich die Anweisungen zum Hochladen der jar auf das lokale Dateisystem .. und dann gehen Sie in das Interpreter-Menü und Hinzufügen der Abhängigkeit mit dem gleichen Pfad "/ tmp/dependency.jar" – Jeremy