Pergunta de entrevista da empresa ING

What are RDDs, DataFrames, and Datasets? When would you use each? How does Spark handle fault tolerance?