We currently have the technology to use DNA as a data storage medium. The best they've managed yet is 700 petabits (87.5 terabytes) per gram of DNA. I got curious and wanted to see what one strand of human DNA weighs and how much data we could store with computers in that weight.
WOW! We are not efficient at storing information in DNA at all. A strand of human DNA you are looking at about 660 billion daltons for a human's DNA strand so 0.000000001 picograms. 1 strand of human DNA, we have the ability to store 0.000000769658 bits of data in. Yeah, that decimal is in the right place, for comparison 1 megabyte = 8388608 bits. 1 strand of human DNA contains all the information needed to create one of us, currently we can only artificially store 0.000000769658 BITS in a strand of DNA the weight of a human's strand. Interesting. We have the technological capabilities of pond scum compared to nature when it comes to storing information in DNA!!
Now assume that the 2.9bn base pairs can be expressed as 2 bits each so off the top of my head about 750 megabytes, but who's to say that each base pair is as simple as 2 bits, perhaps it's as complex as 2 bytes, perhaps each base pair is as complicated as 10terabytes and we just don't know it yet... perhaps the basepair is actually a highly encrypted set of data that we only currently recognize as being as simple as 2 bits.
Either way, we can store a fraction of a bit in a human strand and nature is rocking at least 750 megabytes in the same amount of material.
Basically, I come to the conclusion that nature can store at LEAST 1 exabyte per gram of DNA. The Supreme Architect is truly amazing.