aboutsummaryrefslogtreecommitdiff
path: root/pdf
diff options
context:
space:
mode:
Diffstat (limited to 'pdf')
-rw-r--r--pdf/.gitignore2
-rw-r--r--pdf/Makefile10
-rw-r--r--pdf/doc.bib28
-rw-r--r--pdf/doc.tex60
4 files changed, 79 insertions, 21 deletions
diff --git a/pdf/.gitignore b/pdf/.gitignore
index ea850a7..49e4738 100644
--- a/pdf/.gitignore
+++ b/pdf/.gitignore
@@ -1,5 +1,7 @@
# Latex files
*.aux
+*.bbl
+*.blg
*.fdb_latexmk
*.fls
*.out
diff --git a/pdf/Makefile b/pdf/Makefile
index 72c81fe..1472f07 100644
--- a/pdf/Makefile
+++ b/pdf/Makefile
@@ -1,22 +1,20 @@
FILES = doc
-TEX = $(FILES:%=%.tex)
PDF = $(FILES:%=%.pdf)
# Debug flags
-ifdef DEBUG
-LATEXMK_FLAGS += -verbose
-else
+ifndef DEBUG
LATEXMK_FLAGS += -quiet
endif
all pdf: $(PDF)
-%.pdf: %.tex assets/*.tex
+.SECONDEXPANSION:
+%.pdf: %.tex $$(wildcard $$*.bib) assets/*.tex
latexmk $(LATEXMK_FLAGS) -pdf -f $<
mostlyclean:
latexmk $(LATEXMK_FLAGS) -c
- rm -f $(FILES:%=%.synctex.*)
+ rm -f $(FILES:%=%.synctex.*) $(FILES:%=%.bbl)
rm -f assets/*.aux
clean: mostlyclean
diff --git a/pdf/doc.bib b/pdf/doc.bib
new file mode 100644
index 0000000..36883f5
--- /dev/null
+++ b/pdf/doc.bib
@@ -0,0 +1,28 @@
+@inproceedings{pease2010linear,
+ title={The linear tape file system},
+ author={Pease, David and Amir, Arnon and Real, Lucas Villa and Biskeborn, Brian and Richmond, Michael and Abe, Atsushi},
+ booktitle={2010 IEEE 26th Symposium on Mass Storage Systems and Technologies (MSST)},
+ pages={1--8},
+ year={2010},
+ organization={IEEE}
+}
+
+@misc{optical2003universal,
+ title={Universal Disk Format Specification, Revision 2.50},
+ author={Optical Storage Technology Association and others},
+ year={2003},
+ publisher={Apr}
+}
+
+# the main article
+@article{shilane2012wan,
+ title={WAN-optimized replication of backup datasets using stream-informed delta compression},
+ author={Shilane, Phlip and Huang, Mark and Wallace, Grant and Hsu, Windsor},
+ journal={ACM Transactions on Storage (ToS)},
+ volume={8},
+ number={4},
+ pages={1--26},
+ year={2012},
+ publisher={ACM New York, NY, USA}
+}
+
diff --git a/pdf/doc.tex b/pdf/doc.tex
index e7d1831..938cc1f 100644
--- a/pdf/doc.tex
+++ b/pdf/doc.tex
@@ -7,7 +7,7 @@
\usepackage[french]{babel} % latex rules for french words
\usepackage[utf8]{inputenc} % UTF-8 encoding for special chars
\usepackage[T1]{fontenc} % T1 font for smooth render of special chars
-\DeclareUnicodeCharacter{202F}{~}
+\DeclareUnicodeCharacter{202F}{\thinspace}
% Define some colors
\usepackage{color}
@@ -34,6 +34,9 @@
\usepackage[hyphens]{url}
\usepackage[hidelinks]{hyperref}
+% Bibliography
+\usepackage[nottoc]{tocbibind} % add link to table of contents
+
% Graphics
\usepackage{graphicx} % images and figures
\graphicspath{ {assets} } % path containing images
@@ -66,16 +69,39 @@
\tableofcontents
-\section{Situation}
+\section{Introduction}
+
+\subsection{Situation}
+
+Il existe un certain nombre de techniques permettant de stocker des données arbitraires via des molécules d'ADN.
+Différents encodages et techniques de conservation sont utilisés, mais elles ont en commun quelques spécificités :
+
+\begin{enumerate}
+ \item Elles ne permettent pas de supprimer des données une fois écrites.
+ \item Les lectures sont lentes et coûteuses.
+ \item Les écritures le sont encore plus.
+\end{enumerate}
+
+\subsection{Problématique}
-Le DNA-drive et les techniques de stockages sur ADN dans leur ensemble ne permettent pas de supprimer des données une fois écrites.
+Une des fonctionnalités que le système devait supporter était la possibilité de mettre à jour des fichiers déjà écrits.
+Or le médium de stockage utilisé ne permet ni de supprimer des données écrites, ni même de les modifier.
+Cette problématique se retrouve sur d'autres médiums de stockages, comme par exemple les bandes magnétiques ou les disques optiques.
+Elle est résolue par leur système de fichiers respectif, LTFS \cite{pease2010linear} pour les bandes magnétiques et UDF \cite{optical2003universal} pour les CDs et DVD non-RW.
+Dans les deux cas le système est basé sur la réécriture complète des blocs modifiés des fichiers ainsi que de l'index dans le cas de LFTS ou de la Virtual Allocation Table dans le cas d'UDF.
-Les lectures sont lentes et coûteuse, mais les écritures le sont encore plus.
+% ajouter un § par rapport aux coùt des écritures
-\section{Problématique}
-\section{Réponse}
+La difficulté principale était donc de réussir à implémenter cette fonctionnalité sur un médium de stockage qui n'a pas la capacité de modifier les données existantes, tout en limitant les écritures au strict nécessaire.
-\subsection{Présentation générale}
+
+\subsection{Réponse}
+
+
+
+La solution proposée se base sur une technique de \cite{shilane2012wan}.
+
+\section{Présentation générale}
Le système part du principe qu'on a une copie des données stockées en
@@ -170,11 +196,11 @@ On imagine le \emph{DNA-Drive} comme un segment de \emph{pools} (Figure \ref{fig
Box/.style={draw, minimum width=2em, minimum height=2em, outer sep=0, on chain},
Brace/.style={decorate,decoration={brace, amplitude=1em, raise=.5em, mirror}}
]
- \node[Box] (p0) {$0$};
- \node[Box] (p1) {$1$};
- \node[Box] (p2) {$2$};
- \node[Box] (p3) {$3$};
- \node[Box] (p4) {$4$};
+\node[Box] (p0) {$0$};
+\node[Box] (p1) {$1$};
+\node[Box] (p2) {$2$};
+\node[Box] (p3) {$3$};
+\node[Box] (p4) {$4$};
\node[Box,minimum width=6em] (ellipsis) {$\cdots$};
\node[Box] (p93) {$93$};
\node[Box] (p94) {$94$};
@@ -322,7 +348,7 @@ comparaison :
\item
\textbf{Git objects}
\item
- \textbf{Targz}
+ \textbf{Tar.gz}
\item
\textbf{Taille réelle}
\end{itemize}
@@ -355,7 +381,7 @@ modification d'un fichier entrainera donc l'ajout de nouveaux
fichier. C'est de cette manière que Git est capable de créer un système
de fichiers modifiable à partir d'objets immuables.
-\subsubsection{Targz}
+\subsubsection{Tar.gz}
Une technique d'archivage assez classique à laquelle il peut être
intéressant de nous comparer est de stocker chaque version en tant
@@ -386,7 +412,7 @@ aucune déduplication ou compression.
\textbf{DNA-Backup} &
\textbf{Git diffs} &
\textbf{Git objects} &
-\textbf{Targz} &
+\textbf{Tar.gz} &
\textbf{Taille réelle} \\
\hline
@@ -531,4 +557,8 @@ Lecture de la zone correspondant à la dernière version \\
\end{table*}
+% Bibliography
+\bibliographystyle{plain}
+\bibliography{doc.bib}
+
\end{document}