  DNA is emerging as an increasingly attractive medium for data storage due to
a number of important and unique advantages it offers, most notably the
unprecedented durability and density. While the technology is evolving rapidly,
the prohibitive cost of reads and writes, the high frequency and the peculiar
nature of errors occurring in DNA storage pose a significant challenge to its
adoption. In this work we make a novel observation that the probability of
successful recovery of a given bit from any type of a DNA-based storage system
highly depends on its physical location within the DNA molecule. In other
words, when used as a storage medium, some parts of DNA molecules appear
significantly more reliable than others. We show that large differences in
reliability between different parts of DNA molecules lead to highly inefficient
use of error-correction resources, and that commonly used techniques such as
unequal error-correction cannot be used to bridge the reliability gap between
different locations in the context of DNA storage. We then propose two
approaches to address the problem. The first approach is general and applies to
any types of data; it stripes the data and ECC codewords across DNA molecules
in a particular fashion such that the effects of errors are spread out evenly
across different codewords and molecules, effectively de-biasing the underlying
storage medium. The second approach is application-specific, and seeks to
leverage the underlying reliability bias by using application-aware mapping of
data onto DNA molecules such that data that requires higher reliability is
stored in more reliable locations, whereas data that needs lower reliability is
stored in less reliable parts of DNA molecules. We show that the proposed data
mapping can be used to achieve graceful degradation in the presence of high
error rates, or to implement the concept of approximate storage in DNA.
