2017-07-17 13 views

Antwort

1

in Funken < 2,0

val sc = new SparkContext(conf) 

val sqlContext = new org.apache.spark.sql.hive.HiveContext(sc) 
val myDataFrame = sqlContext.sql("select * from mydb.mytable") 

in späteren Versionen von Funken, Verwendung SparkSession:

SparkSession ist nun der neue Einstiegspunkt des Funken, der den alten SqlContext und HiveContext ersetzt. Beachten Sie, dass der alte SQLContext und HiveContext aus Gründen der Abwärtskompatibilität beibehalten werden. Ein neuer Katalog Schnittstelle ist von SparkSession zugänglich - vorhandene API auf Datenbanken und Tabellenzugriffe wie listTables, createExternalTable, dropTempView, cacheTable werden hier verschoben. - von der Dokumentation

val spark = SparkSession 
    .builder() 
    .appName("Spark Hive Example") 
    .config("spark.sql.warehouse.dir", warehouseLocation) 
    .enableHiveSupport() 
    .getOrCreate() 
val myDataFrame = spark.sql("select * from mydb.mytable") 
0

Wenn Ihr hive-Server auf dem Remote-Cluster befindet verweisen Sie können Daten über JDBC-Verbindung wie das Ziehen:

import scala.collection.mutable.MutableList 

case class TempTable (
    column1: String, 
    column2: String 
) 

val conn: Connection = DriverManager.getConnection(url, user, password) 
val res: ResultSet = conn.createStatement 
        .executeQuery("SELECT * FROM table_name") 
val fetchedRes = MutableList[TempTable]() 
while(res.next()) { 
    var rec = TempTable(res.getString("column1"), 
    res.getString("column2")) 
    fetchedRes += rec 
} 
conn.close() 
val resultRDD = sc.parallelize(fetchedRes) 
resultRDD.cache() 
+0

beachten Sie, dass dieser Ansatz bei weitem nicht ideal laufen Produktions-Workloads, da alle Daten zuerst den Treiber durchlaufen müssen, bevor sie an die Worker-Knoten gesendet werden können. Wenn Sie jedoch nur etwas Entwicklung machen, kann es hilfreich sein. – Havnar

+0

@Havnar Autor ist Anfänger und sucht nach Rat, wie man Daten am wahrscheinlichsten in lokaler Maschine unter Verwendung der IDE zugreift und manipuliert. – FaigB

Verwandte Themen