Restore from replication child dataset

I have just managed to setup a replication to a remote TrueNAS, seems this was successful. I’m now wondering how I could restore this data in future if needed.

In my main TrueNAS box the datasets are setup as follows:

  • Pool_Name
  • >> Parent_Dataset_A
  • >> >> Child_Dataset_A1
  • >> >> Child_Dataset_A2
  • >> Parent_Dataset_B
  • >> >> Child_Dataset_B1
  • >> >> Child_Dataset_B2

I have created just one replication task selecting Parent_Dataset_A and Parent_Dataset_B and enabling the “Recursive” option.
I can see that all datasets (including the children datasets) have been replicated to the offsite TrueNAS box. Good.

With this setup there is a way to restore only one of the child datasets?

I see in the replication task there is a Restore button, but this does not allow to select which parent or child datasets to restore. I have the impression this would restore both Parent_Dataset_A and Parent_Dataset_B and all the children. This doesn’t seem to be a great option as it would need to download a lot of data, when I might need to restore only one child datasets.
If I want to be able to restore each child dataset individually do I need to create a replication task for each Child Dataset?

You may want to read up on using the CLI to restore via zfs send/receive. This gives you the greatest flexibility for restoring a specific snapshot, series of snapshots, or full dataset hierarchies/properties.