2016-09-27 3 views
0

Я как бы невежественный, как сделать следующее в искры. У меня есть текстовый файл, который содержит данные в следующем формате:Spark RDD data selection

timestamp A,B,C (\n) 
A,B,C (\n) 
A,B,C (\n) 
... 
timestamp A,B,C (\n) 
A,B,C (\n) 
... 

Я прочитал его в РДУ с sc.textFile(<path>), которые, конечно, угощения каждая строка как отдельный элемент.

Как отделить метку времени от первой строки, так что в основном создать карту отметки времени -> entry1, entry2 ... где каждая запись состоит из A, B, C? A, B, C всегда одного типа и не одинаковое значение, соответственно.

+0

Что такое entry1 и entry2? Является ли A, B, C линией timestamp такой же, как A, B, C в следующей строке? –

+0

', где каждая запись состоит из A, B, C', поэтому entry1 и entry 2 являются A, B, C; yes – Dimebag

+0

Если все A, B, C одинаковы, не могли бы вы просто отфильтровать строки, начинающиеся с метки времени, а затем просто построить карту с этими строками? –

ответ

0

Единственный/лучший способ, как мне намекнул в комментариях, заключается в использовании wholeTextFiles(). После этого я разделяю строку, используя регулярное выражение временной метки и, наконец, еще один раскол на \n.