Трудно сказать наверняка без кода, но, если вы нигде не кешируете / не сохраняете свой фрейм данных, то spark перезапустит все до того момента, когда вы вызовете действие, подобное .count()
,Таким образом, если в какой-то момент вы выбираете данные случайным образом, выборка будет повторена, что приведет к другому результату.
Вы можете использовать df = df.cache()
или df = df.persist()
, например, при первой загрузке данных и сразу после выборки, чтобы иметь искру, создать своего рода точку останова и не запускать все заново.
ссылка на документацию
Надеюсь, это поможет, удачи!