did you read the WiKi for btrfs? do your self a favor and read it.
as a recap : yes BTRFS contains all features of RAID and LVM with in.
well not sure about ALL features but it is targeted as a full replacement for LVM and software RAID(MD).
or so they say.
if you read the functionality:
in a nutshell : RAID give you the ability to create a pool of multiple devices to provide a platform for file system and protect your data/filesystem from a device failure using Parity or mirroring of blocks across several devices.
limitation of regular Raid (hardware and software) is that all devices with in a pool MUST be of the same size and types. all devices used in software raid must have a properly setup partition(s) before raid is setup.
LVM - allows you to pool multiple devices, including raid pools, and present them as a single raw volume to be partitioned as need for data storage.
(yes you can setup an LVM on raw disks but this is the most common configuration)
| / | /var | /usr | /home |
| Disk 1 | Disk 2 | Disk 3 |
courtesy of “http://serverfault.com”
BTFS combines both of this functions and allows you to do both as needed. and do all of it on a live system and live mounted volumes for most part.
example: you have 4 disks @ 1TB each. aka sda , adb , adc , sdd
you can setup all 4 disks as individual 1TB btrfs disk/volumes => sda1 , adb1 , adc1 , sdd1
OR
as a raid pool or several pools of supported raid type (RAID 0/1/10 support for 5/6 is still not ready yet but promised soon)
Raid 0 will give you ~3.5TB (no redundancy remember but by default metadata is still in Raid1 configuration.)
you can use pool of all 4 or 2 pools of 2 device each
Raid 1 will give you 2TB full redundancy metadata and data. sigle device failure tolerance
you can use pool of all 4 or 2 pools of 2 device each
Raid 10 also 2TB but with 2 device tolerance depended on what 2 devices had failed.
one pool of 4 or more devices. can not use less than 4 devices.
this provides the raid functionality as in protecting data blocks from device failure, btrfs can work with partitions on a single devices or just raw devices.
now in the same time BTRFS provides the LVM functionality to you as you can expose this pools as either a single volume or multiple volues similar as you would do with LVM.
btrfs also have somewhat new concept in working with sub-volumes added.
sub-volume appears as a normal folder with in fs structure but you have the ability to mount the sub-volume directly as if it was a file system on its own.
I really don’t know how would you use all of this with encryption.
it seams if you want to use encryption you would need to compromise between getting all the benefits of btrfs and
sacrificing some of them to get the encryption.
google it for btrfs+LUKS
http://nyeggen.com/blog/2014/04/05/full-disk-encryption-with-btrfs-and-multiple-drives-in-ubuntu/
http://www.oracle.com/technetwork/articles/servers-storage-admin/advanced-btrfs-1734952.html
https://btrfs.wiki.kernel.org/index.php/FAQ#Does_btrfs_support_encryption.3F