Reading through the btrfs (sub) command documentation, it can "balance only block groups with the given replication profiles", and "convert selected blocks to a given profile", and apparently it allows different blocks (the primary unit allocated from the volume management feature set) to have different characteristics. But I can't figure out exactly how to make use of that and tell it what to do.
Here's what I'm thinking:
The HDD is formatted as three partitions, and a single btrfs created to use all three, with metadata as raid5 and plain data as single.
Copy a few terabytes of files to the drive.
✪ Change the "data" block profile to stripe it across the partitions.
Create Parchive recovery files, giving me 20% redundancy on these cold-archived files. With the replication policy in force as these files are added, each file will be spread out over the three partitions. I'll be sure to have the recovery records for one set distributed over the partitions, not grouped tightly as normal efficient filesystem management would strive for.
✪ Change the data replication profile to RAID5.
While the drive is resident in the "dock", new files can be added and they have 2of3 redundancy supplied automatically by the filesystem.
Drive is removed and stored off-site. The drive is rotated on a monthly basis, and the previous month's worth of added material is now part of step 2. Swapping bi-monthly on-site drives, I'll want to switch the policy back to Single and striping to update step 4 with the fresh material.
In short, I want to assign different policies to different subvolumes or change the policy that will then be applied to new writes but not re-applied to existing blocks.
How do I do the parts marked with "✪"?