Akka stream design pattern consuming multiple file sources

I have a problem where I am asked to use akka streams to design a search API to look for data into several related .tsv files. One has to be read after the other in order to produce the desired results.
For ex you have 2 files:
movies.tsv (id, title)
actors.tsv (name, movieIds)
Say you want to create an endpoint listing all the actors that played in one movie just specifying the name
def principalsForMovieName(name: String): Source[Actor, _]
you would have to read the first file to get all the movie ids containing the input name and then process the second file to list the related actors.
I thought I could to that by piping 2 Sources (first movies then actors) together but that does not appear like something common with akka reactive streams.
I’m really confused after a few hours going through the doc: should I create 2 sources and merge them, should I use a source then a sink to another source and so on…
I might have missed something in the whole stream concept I guess. Could you point me in the right direction please?