создание искровой структуры данных из многострочной записи

Я пытаюсь прочитать в файле событий Retrosheet в искру. Файл событий структурирован как таковой.

id,TEX201403310
version,2
info,visteam,PHI
info,hometeam,TEX
info,site,ARL02
info,date,2014/03/31
info,number,0
info,starttime,1:07PM
info,daynight,day
info,usedh,true
info,umphome,joycj901
info,attendance,49031
start,reveb001,"Ben Revere",0,1,8
start,rollj001,"Jimmy Rollins",0,2,6
start,utlec001,"Chase Utley",0,3,4
start,howar001,"Ryan Howard",0,4,3
start,byrdm001,"Marlon Byrd",0,5,9
id,TEX201404010
version,2
info,visteam,PHI
info,hometeam,TEX

Как вы видите, для каждой игры события возвращаются назад.

Я прочитал файл в RDD, а затем через секунду для цикла добавил ключ для каждой итерации, который, кажется, работает. Но я надеялся получить некоторую обратную связь о том, есть ли способ сделать это с помощью искровых методов.

logFile = '2014TEX.EVA'
event_data = (sc
              .textFile(logfile)
              .collect())

idKey = 0
newevent_list = []
for line in event_dataFile:
    if line.startswith('id'):
        idKey += 1
        newevent_list.append((idKey,line))
    else:
        newevent_list.append((idKey,line))

event_data = sc.parallelize(newevent_list)

Ответы на вопрос(1)

Ваш ответ на вопрос