From 4f5d94b13f9ee4f83e792834cd2b9eb6a7ed4940 Mon Sep 17 00:00:00 2001 From: pschoeps Date: Mon, 31 Mar 2014 20:24:31 +0200 Subject: [PATCH] ori benchmark, grafting und fazit TODO function ende vergleich ende --- bericht/benchmarks/ori/iozone-fastfs-read | 125 +++++++++++++++ .../ori/iozone-fastfs-read-tmpl.tex | 23 +++ .../benchmarks/ori/iozone-fastfs-read.octave | 4 + bericht/benchmarks/ori/iozone-fastfs-write | 146 +++++++++++++++++ .../ori/iozone-fastfs-write-tmpl.tex | 23 +++ .../benchmarks/ori/iozone-fastfs-write.octave | 4 + bericht/benchmarks/ori/iozone-orifs-read | 146 +++++++++++++++++ .../benchmarks/ori/iozone-orifs-read-tmpl.tex | 23 +++ .../benchmarks/ori/iozone-orifs-read.octave | 4 + bericht/benchmarks/ori/iozone-orifs-write | 147 ++++++++++++++++++ .../ori/iozone-orifs-write-tmpl.tex | 23 +++ .../benchmarks/ori/iozone-orifs-write.octave | 5 + bericht/ori/ori-con.tex | 4 + bericht/ori/ori-grafting.tex | 10 +- bericht/ori/ori-inst.tex | 2 +- bericht/ori/ori-ver.tex | 19 ++- 16 files changed, 702 insertions(+), 6 deletions(-) create mode 100644 bericht/benchmarks/ori/iozone-fastfs-read create mode 100644 bericht/benchmarks/ori/iozone-fastfs-read-tmpl.tex create mode 100644 bericht/benchmarks/ori/iozone-fastfs-read.octave create mode 100644 bericht/benchmarks/ori/iozone-fastfs-write create mode 100644 bericht/benchmarks/ori/iozone-fastfs-write-tmpl.tex create mode 100644 bericht/benchmarks/ori/iozone-fastfs-write.octave create mode 100644 bericht/benchmarks/ori/iozone-orifs-read create mode 100644 bericht/benchmarks/ori/iozone-orifs-read-tmpl.tex create mode 100644 bericht/benchmarks/ori/iozone-orifs-read.octave create mode 100644 bericht/benchmarks/ori/iozone-orifs-write create mode 100644 bericht/benchmarks/ori/iozone-orifs-write-tmpl.tex create mode 100644 bericht/benchmarks/ori/iozone-orifs-write.octave diff --git a/bericht/benchmarks/ori/iozone-fastfs-read b/bericht/benchmarks/ori/iozone-fastfs-read new file mode 100644 index 0000000..deee679 --- /dev/null +++ b/bericht/benchmarks/ori/iozone-fastfs-read @@ -0,0 +1,125 @@ +64 4 13571 +64 8 21769 +64 16 14989 +128 4 15871 +128 8 15976 +128 16 25407 +128 32 26272 +256 4 16440 +256 8 16643 +256 16 17536 +256 32 28622 +256 64 50792 +256 128 68945 +512 4 17861 +512 8 29648 +512 16 29962 +512 32 17616 +512 64 23535 +512 128 46276 +512 256 73562 +1024 4 32009 +1024 8 30971 +1024 16 32941 +1024 32 33012 +1024 64 21310 +1024 128 40450 +1024 256 56158 +1024 512 87979 +2048 4 19006 +2048 8 33153 +2048 16 32376 +2048 32 35423 +2048 64 36768 +2048 128 45070 +2048 256 51441 +2048 512 67740 +4096 4 45036 +4096 8 62023 +4096 16 32543 +4096 32 19553 +4096 64 62008 +4096 128 72252 +4096 256 69620 +4096 512 85416 +4096 1024 57280 +4096 2048 75986 +8192 4 41636 +8192 8 46848 +8192 16 38633 +8192 32 43910 +8192 64 70942 +8192 128 101190 +8192 256 101710 +8192 512 77658 +8192 1024 89264 +16384 4 61010 +16384 8 36746 +16384 16 48847 +16384 32 55100 +16384 64 65283 +16384 128 54968 +16384 256 66944 +16384 512 85202 +16384 1024 110063 +16384 2048 88698 +32768 4 63814 +32768 8 58221 +32768 16 64962 +32768 32 54627 +32768 64 97868 +32768 128 94566 +32768 256 101593 +32768 512 99178 +32768 1024 104212 +32768 2048 95782 +65536 4 56862 +65536 8 63655 +65536 16 53651 +65536 32 51331 +65536 64 86967 +65536 128 92640 +65536 256 87334 +65536 512 87053 +65536 1024 90685 +65536 2048 106183 +65536 4096 98289 +65536 8192 104302 +131072 4 56418 +131072 8 55518 +131072 16 55064 +131072 32 63083 +131072 64 98680 +131072 128 97997 +131072 256 100236 +131072 512 95566 +131072 1024 104959 +131072 2048 73286 +131072 4096 100445 +131072 8192 98272 +262144 4 58228 +262144 8 55747 +262144 16 52234 +262144 32 53678 +262144 64 97700 +262144 128 97473 +262144 256 96748 +262144 512 96864 +262144 1024 97347 +262144 2048 91465 +262144 4096 99712 +262144 8192 98159 +262144 16384 104791 +524288 4 43990 +524288 8 55423 +524288 16 54319 +524288 32 60642 +524288 64 98190 +524288 128 78317 +524288 256 72312 +524288 512 92240 +524288 1024 94325 +524288 2048 80514 +524288 4096 100530 +524288 8192 100981 +524288 16384 89358 \ No newline at end of file diff --git a/bericht/benchmarks/ori/iozone-fastfs-read-tmpl.tex b/bericht/benchmarks/ori/iozone-fastfs-read-tmpl.tex new file mode 100644 index 0000000..43df7fa --- /dev/null +++ b/bericht/benchmarks/ori/iozone-fastfs-read-tmpl.tex @@ -0,0 +1,23 @@ +\documentclass[german,plainarticle,utf8]{standalone} +\usepackage{pgfplots} +\usepgfplotslibrary{dateplot} +\usepackage{tikz} +\usepackage{pgfplotstable} +\pgfplotsset{/pgf/number format/use comma} + +\begin{document} +\begin{tikzpicture} + \begin{axis}[ + title=GlusterFS Lesen, + width=15cm, height=10cm, + xlabel={Dateigr\"{o}{\ss}e [KiB]}, + xmode=log, log basis x=2, + ylabel={Record-Gr\"{o}{\ss}e [KiB]}, + ymode=log, log basis y=2, + zlabel={\"{U}bertragungsgeschwindigkeit [KiB/s]}, + zmax=120000 + ] + \addplot3 [patch, patch table={iozone-fastfs-read.out}] table {iozone-fastfs-read}; + \end{axis} +\end{tikzpicture} +\end{document} diff --git a/bericht/benchmarks/ori/iozone-fastfs-read.octave b/bericht/benchmarks/ori/iozone-fastfs-read.octave new file mode 100644 index 0000000..5152427 --- /dev/null +++ b/bericht/benchmarks/ori/iozone-fastfs-read.octave @@ -0,0 +1,4 @@ +data=dlmread('iozone-fastfs-read'); +tri=delaunay(data(:,1), data(:,2)); +dlmwrite('iozone-fastfs-read.out',tri-1,' '); +disp(data) \ No newline at end of file diff --git a/bericht/benchmarks/ori/iozone-fastfs-write b/bericht/benchmarks/ori/iozone-fastfs-write new file mode 100644 index 0000000..6bf1e9f --- /dev/null +++ b/bericht/benchmarks/ori/iozone-fastfs-write @@ -0,0 +1,146 @@ +64 4 2386 +64 8 2543 +64 16 16023 +64 32 19214 +64 64 17966 +128 4 11210 +128 8 15173 +128 16 18346 +128 32 20847 +128 64 23400 +128 128 27699 +256 4 13120 +256 8 19942 +256 16 23727 +256 32 21949 +256 64 20392 +256 128 22266 +256 256 23509 +512 4 13868 +512 8 19078 +512 16 30940 +512 32 19159 +512 64 2240 +512 128 13190 +512 256 20104 +512 512 27783 +1024 4 15113 +1024 8 21833 +1024 16 21292 +1024 32 29823 +1024 64 24700 +1024 128 20954 +1024 256 26895 +1024 512 21918 +1024 1024 22442 +2048 4 12951 +2048 8 18005 +2048 16 21932 +2048 32 20652 +2048 64 19320 +2048 128 23422 +2048 256 22701 +2048 512 22406 +2048 1024 20093 +2048 2048 18250 +4096 4 13138 +4096 8 27573 +4096 16 6643 +4096 32 27765 +4096 64 20415 +4096 128 22557 +4096 256 10601 +4096 512 9383 +4096 1024 21983 +4096 2048 22616 +4096 4096 6889 +8192 4 15296 +8192 8 23751 +8192 16 22931 +8192 32 20620 +8192 64 28304 +8192 128 26593 +8192 256 12412 +8192 512 29353 +8192 1024 22022 +8192 2048 25970 +8192 4096 25854 +8192 8192 21332 +16384 4 10351 +16384 8 20756 +16384 16 19661 +16384 32 36570 +16384 64 29574 +16384 128 23195 +16384 256 31060 +16384 512 24078 +16384 1024 28067 +16384 2048 20888 +16384 4096 29077 +16384 8192 32680 +16384 16384 41813 +32768 4 12329 +32768 8 26582 +32768 16 24757 +32768 32 29864 +32768 64 24093 +32768 128 29926 +32768 256 23750 +32768 512 27887 +32768 1024 21650 +32768 2048 23412 +32768 4096 28608 +32768 8192 32943 +32768 16384 20497 +65536 4 15267 +65536 8 22637 +65536 16 27374 +65536 32 28861 +65536 64 25379 +65536 128 22585 +65536 256 27195 +65536 512 27853 +65536 1024 18803 +65536 2048 20436 +65536 4096 28426 +65536 8192 34651 +65536 16384 28362 +131072 4 6405 +131072 8 23706 +131072 16 22599 +131072 32 29427 +131072 64 26246 +131072 128 26356 +131072 256 27244 +131072 512 24287 +131072 1024 24399 +131072 2048 23748 +131072 4096 21984 +131072 8192 23998 +131072 16384 29071 +262144 4 12527 +262144 8 13216 +262144 16 24739 +262144 32 26357 +262144 64 26598 +262144 128 25485 +262144 256 28434 +262144 512 23395 +262144 1024 25154 +262144 2048 28654 +262144 4096 25845 +262144 8192 25785 +262144 16384 21551 +524288 4 5165 +524288 8 21305 +524288 16 24494 +524288 32 24073 +524288 64 24191 +524288 128 24820 +524288 256 24651 +524288 512 25715 +524288 1024 24165 +524288 2048 21985 +524288 4096 22754 +524288 8192 22127 +524288 16384 25345 \ No newline at end of file diff --git a/bericht/benchmarks/ori/iozone-fastfs-write-tmpl.tex b/bericht/benchmarks/ori/iozone-fastfs-write-tmpl.tex new file mode 100644 index 0000000..881623a --- /dev/null +++ b/bericht/benchmarks/ori/iozone-fastfs-write-tmpl.tex @@ -0,0 +1,23 @@ +\documentclass[german,plainarticle,utf8]{standalone} +\usepackage{pgfplots} +\usepgfplotslibrary{dateplot} +\usepackage{tikz} +\usepackage{pgfplotstable} +\pgfplotsset{/pgf/number format/use comma} + +\begin{document} +\begin{tikzpicture} + \begin{axis}[ + title=GlusterFS Schreiben, + width=15cm, height=10cm, + xlabel={Dateigr\"{o}{\ss}e [KiB]}, + xmode=log, log basis x=2, + ylabel={Record-Gr\"{o}{\ss}e [KiB]}, + ymode=log, log basis y=2, + zlabel={\"{U}bertragungsgeschwindigkeit [KiB/s]}, + zmax=120000 + ] + \addplot3 [patch, patch table={iozone-fastfs-write.out}] table {iozone-fastfs-write}; + \end{axis} +\end{tikzpicture} +\end{document} diff --git a/bericht/benchmarks/ori/iozone-fastfs-write.octave b/bericht/benchmarks/ori/iozone-fastfs-write.octave new file mode 100644 index 0000000..e72d807 --- /dev/null +++ b/bericht/benchmarks/ori/iozone-fastfs-write.octave @@ -0,0 +1,4 @@ +data=dlmread('iozone-fastfs-write'); +tri=delaunay(data(:,1), data(:,2)); +dlmwrite('iozone-fastfs-write.out',tri-1,' '); +disp(data) \ No newline at end of file diff --git a/bericht/benchmarks/ori/iozone-orifs-read b/bericht/benchmarks/ori/iozone-orifs-read new file mode 100644 index 0000000..4cd984f --- /dev/null +++ b/bericht/benchmarks/ori/iozone-orifs-read @@ -0,0 +1,146 @@ +64 4 60311 +64 8 100960 +64 16 169273 +64 32 219165 +64 64 309326 +128 4 59953 +128 8 105334 +128 16 178492 +128 32 267258 +128 64 341345 +128 128 283787 +256 4 59812 +256 8 104747 +256 16 177924 +256 32 283473 +256 64 361552 +256 128 350689 +256 256 317224 +512 4 60591 +512 8 109143 +512 16 186854 +512 32 294748 +512 64 372645 +512 128 364672 +512 256 322019 +512 512 314658 +1024 4 60847 +1024 8 111303 +1024 16 194054 +1024 32 295515 +1024 64 381917 +1024 128 368356 +1024 256 336522 +1024 512 329272 +1024 1024 334973 +2048 4 60815 +2048 8 111845 +2048 16 192371 +2048 32 308703 +2048 64 390242 +2048 128 395433 +2048 256 346832 +2048 512 341170 +2048 1024 340198 +2048 2048 347070 +4096 4 61252 +4096 8 112357 +4096 16 195084 +4096 32 304786 +4096 64 399961 +4096 128 388212 +4096 256 352647 +4096 512 344494 +4096 1024 348209 +4096 2048 348625 +4096 4096 352315 +8192 4 61131 +8192 8 112136 +8192 16 196314 +8192 32 310965 +8192 64 411741 +8192 128 392732 +8192 256 357586 +8192 512 371132 +8192 1024 346442 +8192 2048 350460 +8192 4096 349785 +8192 8192 374473 +16384 4 61122 +16384 8 109426 +16384 16 197795 +16384 32 313850 +16384 64 407369 +16384 128 394423 +16384 256 356259 +16384 512 347450 +16384 1024 352238 +16384 2048 352162 +16384 4096 352753 +16384 8192 356375 +16384 16384 359282 +32768 4 61041 +32768 8 112106 +32768 16 197157 +32768 32 316901 +32768 64 424384 +32768 128 400581 +32768 256 358692 +32768 512 350373 +32768 1024 352105 +32768 2048 354022 +32768 4096 355586 +32768 8192 356066 +32768 16384 360852 +65536 4 60992 +65536 8 111475 +65536 16 198506 +65536 32 317841 +65536 64 420282 +65536 128 396392 +65536 256 333214 +65536 512 350004 +65536 1024 352533 +65536 2048 353829 +65536 4096 355644 +65536 8192 358155 +65536 16384 359244 +131072 4 60973 +131072 8 111413 +131072 16 196512 +131072 32 309107 +131072 64 422601 +131072 128 396156 +131072 256 361403 +131072 512 350190 +131072 1024 353647 +131072 2048 354296 +131072 4096 355938 +131072 8192 316892 +131072 16384 362387 +262144 4 61077 +262144 8 112043 +262144 16 198452 +262144 32 319961 +262144 64 419541 +262144 128 399365 +262144 256 361019 +262144 512 351450 +262144 1024 352369 +262144 2048 354294 +262144 4096 357371 +262144 8192 359067 +262144 16384 357947 +524288 4 60897 +524288 8 112421 +524288 16 198388 +524288 32 317372 +524288 64 430188 +524288 128 372977 +524288 256 325664 +524288 512 321544 +524288 1024 322231 +524288 2048 322974 +524288 4096 324627 +524288 8192 348180 +524288 16384 361609 \ No newline at end of file diff --git a/bericht/benchmarks/ori/iozone-orifs-read-tmpl.tex b/bericht/benchmarks/ori/iozone-orifs-read-tmpl.tex new file mode 100644 index 0000000..415cd6c --- /dev/null +++ b/bericht/benchmarks/ori/iozone-orifs-read-tmpl.tex @@ -0,0 +1,23 @@ +\documentclass[german,plainarticle,utf8]{standalone} +\usepackage{pgfplots} +\usepgfplotslibrary{dateplot} +\usepackage{tikz} +\usepackage{pgfplotstable} +\pgfplotsset{/pgf/number format/use comma} + +\begin{document} +\begin{tikzpicture} + \begin{axis}[ + title=OriFS Lesen, + width=15cm, height=10cm, + xlabel={Dateigr\"{o}{\ss}e [KiB]}, + xmode=log, log basis x=2, + ylabel={Record-Gr\"{o}{\ss}e [KiB]}, + ymode=log, log basis y=2, + zlabel={\"{U}bertragungsgeschwindigkeit [KiB/s]}, + zmax=700000 + ] + \addplot3 [patch, patch table={iozone-orifs-read.out}] table {iozone-orifs-read}; + \end{axis} +\end{tikzpicture} +\end{document} diff --git a/bericht/benchmarks/ori/iozone-orifs-read.octave b/bericht/benchmarks/ori/iozone-orifs-read.octave new file mode 100644 index 0000000..ef4038d --- /dev/null +++ b/bericht/benchmarks/ori/iozone-orifs-read.octave @@ -0,0 +1,4 @@ +data=dlmread('iozone-orifs-read'); +tri=delaunay(data(:,1), data(:,2)); +dlmwrite('iozone-orifs-read.out',tri-1,' '); +disp(data) diff --git a/bericht/benchmarks/ori/iozone-orifs-write b/bericht/benchmarks/ori/iozone-orifs-write new file mode 100644 index 0000000..ae393d5 --- /dev/null +++ b/bericht/benchmarks/ori/iozone-orifs-write @@ -0,0 +1,147 @@ +64 4 38458 +64 8 57594 +64 16 75726 +64 32 89633 +64 64 100282 +128 4 39677 +128 8 62500 +128 16 85559 +128 32 110335 +128 64 124281 +128 128 128259 +256 4 39445 +256 8 48844 +256 16 89756 +256 32 61098 +256 64 128256 +256 128 142769 +256 256 138604 +512 4 41860 +512 8 65793 +512 16 96205 +512 32 116921 +512 64 132398 +512 128 142256 +512 256 142615 +512 512 136202 +1024 4 41704 +1024 8 67098 +1024 16 96086 +1024 32 117906 +1024 64 133787 +1024 128 142856 +1024 256 142124 +1024 512 141749 +1024 1024 139970 +2048 4 41900 +2048 8 66708 +2048 16 97227 +2048 32 119409 +2048 64 135988 +2048 128 151122 +2048 256 143056 +2048 512 144226 +2048 1024 143338 +2048 2048 142380 +4096 4 41776 +4096 8 67160 +4096 16 98301 +4096 32 121295 +4096 64 136806 +4096 128 145604 +4096 256 144975 +4096 512 145729 +4096 1024 144986 +4096 2048 144229 +4096 4096 145879 +8192 4 42375 +8192 8 67036 +8192 16 98338 +8192 32 120882 +8192 64 137636 +8192 128 145050 +8192 256 145148 +8192 512 151641 +8192 1024 146004 +8192 2048 146421 +8192 4096 144719 +8192 8192 152231 +16384 4 42222 +16384 8 67034 +16384 16 98108 +16384 32 121246 +16384 64 137015 +16384 128 145499 +16384 256 145644 +16384 512 145854 +16384 1024 152339 +16384 2048 147032 +16384 4096 146915 +16384 8192 147138 +16384 16384 147139 +32768 4 42118 +32768 8 67165 +32768 16 98898 +32768 32 121641 +32768 64 143079 +32768 128 144932 +32768 256 145185 +32768 512 146044 +32768 1024 146745 +32768 2048 146802 +32768 4096 146443 +32768 8192 146678 +32768 16384 147593 +65536 4 41635 +65536 8 66995 +65536 16 98030 +65536 32 120944 +65536 64 137279 +65536 128 153188 +65536 256 144896 +65536 512 145879 +65536 1024 145788 +65536 2048 146387 +65536 4096 146199 +65536 8192 147165 +65536 16384 146856 +131072 4 41687 +131072 8 66119 +131072 16 98218 +131072 32 120420 +131072 64 136603 +131072 128 152207 +131072 256 151362 +131072 512 145300 +131072 1024 142441 +131072 2048 146210 +131072 4096 151969 +131072 8192 147278 +131072 16384 147893 +262144 4 39772 +262144 8 62310 +262144 16 89913 +262144 32 109313 +262144 64 122541 +262144 128 128280 +262144 256 137139 +262144 512 143341 +262144 1024 144998 +262144 2048 144912 +262144 4096 144407 +262144 8192 144636 +262144 16384 148262 +524288 4 39232 +524288 8 60988 +524288 16 87126 +524288 32 110303 +524288 64 126423 +524288 128 129534 +524288 256 128063 +524288 512 134020 +524288 1024 120227 +524288 2048 132740 +524288 4096 134776 +524288 8192 125172 +524288 16384 136980 + diff --git a/bericht/benchmarks/ori/iozone-orifs-write-tmpl.tex b/bericht/benchmarks/ori/iozone-orifs-write-tmpl.tex new file mode 100644 index 0000000..f11d20a --- /dev/null +++ b/bericht/benchmarks/ori/iozone-orifs-write-tmpl.tex @@ -0,0 +1,23 @@ +\documentclass[german,plainarticle,utf8]{standalone} +\usepackage{pgfplots} +\usepgfplotslibrary{dateplot} +\usepackage{tikz} +\usepackage{pgfplotstable} +\pgfplotsset{/pgf/number format/use comma} + +\begin{document} +\begin{tikzpicture} + \begin{axis}[ + title=OriFS Schreiben, + width=15cm, height=10cm, + xlabel={Dateigr\"{o}{\ss}e [KiB]}, + xmode=log, log basis x=2, + ylabel={Record-Gr\"{o}{\ss}e [KiB]}, + ymode=log, log basis y=2, + zlabel={\"{U}bertragungsgeschwindigkeit [KiB/s]}, + zmax=240000 + ] + \addplot3 [patch, patch table={iozone-orifs-write.out}] table {iozone-orifs-write}; + \end{axis} +\end{tikzpicture} +\end{document} diff --git a/bericht/benchmarks/ori/iozone-orifs-write.octave b/bericht/benchmarks/ori/iozone-orifs-write.octave new file mode 100644 index 0000000..fc4180c --- /dev/null +++ b/bericht/benchmarks/ori/iozone-orifs-write.octave @@ -0,0 +1,5 @@ +data=dlmread('iozone-orifs-write'); +tri=delaunay(data(:,1), data(:,2)); +dlmwrite('iozone-orifs-write.out',tri-1,' '); +disp(data) + diff --git a/bericht/ori/ori-con.tex b/bericht/ori/ori-con.tex index c14783b..80aeb1d 100644 --- a/bericht/ori/ori-con.tex +++ b/bericht/ori/ori-con.tex @@ -1 +1,5 @@ \subsection{Fazit} + +Während meiner Ausarbeitung stieß immer wieder auf Funktionen, die zwar in der Abhandlung oder im Manual aufgeführt sind, aber nur teilweise bzw. überhaupt nicht funktionierten. Es war mir nicht möglich die automatische Synchronisation \emph{orisync} erfolgreich zu starten. Auch Segmentation Faults oder undefinierte Fehler traten immer wieder auf. \\ + +Abschließend möchte ich noch sagen, dass zwar Ori einen guten Ansatz darin hat, Speicherdienst, Dateisystem und Versionskontrollsystem in sich zu vereinen, aber noch in fast allen Bereichen scheitert. Deshalb ist Ori momentan nicht zu gebrauchen. \ No newline at end of file diff --git a/bericht/ori/ori-grafting.tex b/bericht/ori/ori-grafting.tex index 44089dd..0b6d9d0 100644 --- a/bericht/ori/ori-grafting.tex +++ b/bericht/ori/ori-grafting.tex @@ -2,8 +2,14 @@ \hfill \includegraphics[scale=0.55]{bilder/grafting.png} \hspace*{\fill} -Die aus der Abhandlung \href{http://sigops.org/sosp/sosp13/papers/p151-mashtizadeh.pdf}{>>Replication, History, and Grafting in the Ori File System<<} von Entwicklern der Standford University stammende Grafik >>Figure 1<< zeigt eine bespielhafte Nutzung von Ori. Das Dateisystem eines Nutzers wurde über mehrere Geräte repliziert. Ein Freund des Nutzers hat mit Hilfe des Grafting eines der Verzeichnisse des Nutzers in sein eigenes Dateisystem übertragen. Änderungen an den übertragenen Dateien können später manuell synchronisiert werden. \\ +Die aus der Abhandlung \href{http://sigops.org/sosp/sosp13/papers/p151-mashtizadeh.pdf}{>>Replication, History, and Grafting in the Ori File System<<} von Entwicklern der Standford University stammende Grafik >>Figure 1<< zeigt eine bespielhafte Nutzung von Ori. Das Dateisystem eines Nutzers wurde über mehrere Geräte repliziert. Ein Freund des Nutzers hat mit Hilfe des Grafting eines der Verzeichnisse des Nutzers in sein eigenes Dateisystem übertragen. Änderungen an den übertragenen Dateien sollen später manuell synchronisiert werden können. \\ -Wenn ein Verzeichnis Q als Verzeichnis Z in das Ziel-Dateisystem übertragen wird, wird dort ein spezieller Commit-Eintrag erstellt. Dieser enthält zusätzlich zu einem normalen Eintrag die UUID des Quell-Dateisystems \emph{graft-fsid}, den Quell-Pfadnamen \emph{graft-path}, einen Hash des Original-Commits aus dem Quell-Dateisystem \emph{graft-commit} und den Ziel-Pfadnamen \emph{graft-target}. +Wenn ein Verzeichnis Q als Verzeichnis Z in das Ziel-Dateisystem übertragen wird, soll dort ein spezieller Commit-Eintrag erstellt werden. Dieser enthält zusätzlich zu einem normalen Eintrag die UUID des Quell-Dateisystems \emph{graft-fsid}, den Quell-Pfadnamen \emph{graft-path}, einen Hash des Original-Commits aus dem Quell-Dateisystem \emph{graft-commit} und den Ziel-Pfadnamen \emph{graft-target}. \\ + +Das Grafting soll mit Hilfe dieses Befehls ausgeführt werden: + +\shellcmd{ori graft q\_repo/q\_path z\_repo/z\_path} + +Bei \emph{q\_repo/q\_path} handelt es sich um das Verzeichnis Q im Quell-Repo und bei \emph{z\_repo/z\_path} um das Verzeichnis Z im Ziel-Repo. Mir war es jedoch nicht möglich, diesen Befehl erfolgreich auszuführen. Zwar wurde das Verzeichnis Q nach der Warnung: Quelle oder Ziel ist kein Repository in das Ziel-Repo übertragen, dennoch wurde dort keinerlei Eintrag in der History angelegt. \pagebreak diff --git a/bericht/ori/ori-inst.tex b/bericht/ori/ori-inst.tex index 73af14c..57b307f 100644 --- a/bericht/ori/ori-inst.tex +++ b/bericht/ori/ori-inst.tex @@ -2,7 +2,7 @@ \subsubsection{Vorbereitungen} -Da Ori seine Configs und Repositorien unter \emph{.ori} im Home-Verzeichnis des jeweiligen Nutzers ablegt und dieses auf allen Nodes eingebunden wird, würden zwangsweise Fehler auftreten. Deshalb wurde auf allen Computenodes eine neue Partition erstellt und unter \emph{/ori} gemounted. Mit \emph{useradd ori} wurde ein neuer User ori angelegt, dem mit \emph{chown /ori/home ori:ori} und \emph{usermod --home /ori/home ori} das Home-Verzeichnis \emph{/ori/home} zugeteilt wurde. Mit \emph{ssh-keygen} wurden auf Computenode 1 die ssh-Schlüssel erstellt und anschließend auf die anderen Computenodes übertragen. Desweiteren wurde der Public-Key in die \emph{authorized\_keys} eingetragen. Mit diesen Arbeitsschritten war nun ein passwortloser Zugriff für den Nutzer ori auf die einzelnen Coputenodes gewährleistet. +Da Ori seine Configs und Repositorien unter \emph{.ori} im Home-Verzeichnis des jeweiligen Nutzers ablegt und dieses auf allen Nodes eingebunden wird, würden zwangsweise Fehler auftreten. Deshalb wurde auf allen Computenodes eine neue Partition erstellt und unter \emph{/ori} gemounted. Mit \emph{useradd ori} wurde ein neuer User ori angelegt, dem mit \emph{chown /ori/home ori:ori} und \emph{usermod --home /ori/home ori} das Home-Verzeichnis \emph{/ori/home} zugeteilt wurde. Mit \emph{ssh-keygen} wurden auf Computenode 1 die ssh-Schlüssel erstellt und anschließend auf Computenode 2 übertragen. Desweiteren wurde der Public-Key in die \emph{authorized\_keys} eingetragen. Mit diesen Arbeitsschritten war nun ein passwortloser Zugriff für den Nutzer ori auf die beiden Coputenodes gewährleistet. \subsubsection{Installation} diff --git a/bericht/ori/ori-ver.tex b/bericht/ori/ori-ver.tex index 5101358..0669ab5 100644 --- a/bericht/ori/ori-ver.tex +++ b/bericht/ori/ori-ver.tex @@ -1,9 +1,22 @@ \subsection{Vergleiche} -\paragraph{Dropbox} +Da Ori Merkmale von Speicherdiensten, verteilten Dateisystemen und Versionskontrollsystemen in sich vereint, wurden aus diesen die Vertreter Dropbox, GlusterFS und Git zu einem Vergleich herangezogen. -\paragraph{GlusterFS} +\subsubsection{Cloud-Speicherdienst Dropbox} -\paragraph{Git} +\subsubsection{Verteiltes Dateisystem GlusterFS} + +Um Ori mit mit dem Dateisystem GlusterFS zu vergleichen, wurde auch Ori mit dem IOzone-Benchmark vermessen und die dabei aufgezeichneten Werte mit denen aus der Benchmark-Aufgabe verglichen. \\ + + \hfill \includegraphics[scale=1]{benchmarks/ori/iozone-fastfs-read-tmpl.pdf} \hspace*{\fill} + + \hfill \includegraphics[scale=1]{benchmarks/ori/iozone-orifs-read-tmpl.pdf} \hspace*{\fill} + + \hfill \includegraphics[scale=1]{benchmarks/ori/iozone-fastfs-write-tmpl.pdf} \hspace*{\fill} + + \hfill \includegraphics[scale=1]{benchmarks/ori/iozone-orifs-write-tmpl.pdf} \hspace*{\fill} + +\subsubsection{Versionskontrollsystem Git} +\pagebreak \ No newline at end of file