Я абсолютно новичок в программировании - я знаю основы, поэтому я стараюсь изо всех сил в этом проекте.
Я пытаюсь связать свой кластер Hadoop с таблицей в конце, где основная массамой проект будет сосредоточен на.Я слежу за этим парнем .
Однако он не объясняет, как именно связать файл CSV с кластером.После небольшого исследования я обнаружил, что мне нужно импортировать данные через кластер.Мне удалось импортировать файл CSV через CloudXplorer.Теперь мне просто нужно создать таблицы.
Мне не повезло с помощью Ambari (создать таблицу, ошибка при загрузке баз данных, и в любом случае она никогда не загружала мой файл в начале) ИЛИ на Zeppelin.
Мой код на Zeppelin следует:
%livy2.spark
//The above magic instructs Zeppelin to use the Livy Scala interpreter
// Create an RDD using the default Spark context, sc
val SearchText = sc.textFile("wasb://test'myname'1@.blob.core.windows.net/sample/stopandsearch.csv")
// Define a schema
case class Search(Type: String, date: String, time: String, LATITUDE: String, LONGITUDE: String, Gender: String, Age_Range: String, Self_defined_Eth: String, Officer_defined_Eth: String, Legislation: String, Obj_Of_Search: String, Outcome: String)
// Map the values in the .csv file to the schema
val Search = SearchText.map(s => s.split(",")).map(
s => Search(s(6),
s(1),
s(7),
s(3),
s(6),
s(7),
s(3),
s(7),
s(12),
s(12),
s(12)
)
).toDF()
Search.registerAsTable("Search")
Search.saveAsTable("Search")
<console>:30: error: recursive value Search needs type
s => Search(s(6),
^
<console>:42: error: value toDF is not a member of org.apache.spark.rdd.RDD[U]
possible cause: maybe a semicolon is missing before `value toDF'?
).toDF()
^
любые предложения, пожалуйста.Любой ярлык вокруг этого, мне просто нужно вставить данные в красивые таблицы!:)
Заранее спасибо.
PS Понятия не имею, как получить ссылку на wasb?Http ссылка для файла csv в контейнере.