Autonomous ¡Storage ¡Management ¡ for ¡Personal ¡Devices ¡with ¡PodBase ¡ Ansley ¡Post ¡ ¡Petr ¡Kuznetsov ¡ ¡ Juan ¡Navarro ¡Peter ¡Druschel ¡ MPI-‑SWS ¡ ¡ ¡TU ¡Berlin/Deutsche ¡Telekom ¡Labs ¡ ¡ TU ¡Munich ¡ 1 ¡
Outline ¡ • MoGvaGon ¡ • Problem ¡Statement ¡ • System: ¡PodBase ¡ • EvaluaGon ¡ • Conclusion ¡ 2 ¡
Enterprise ¡ ¡Data ¡Management ¡ Redundancy ¡ Offline ¡Storage ¡ Offsite ¡Storage ¡ All ¡professionally ¡managed! ¡ 3 ¡
Personal ¡Data ¡Management ¡ • ¡Heterogeneous ¡devices, ¡connecGvity, ¡ ¡use ¡ cases ¡ • User ¡are ¡inexperienced ¡and ¡reluctant ¡ administrators ¡ Cloud ¡Storage ¡ 4 ¡
Personal ¡Data ¡Management ¡ • Use ¡available ¡storage/connecGvity ¡to ¡replicate ¡ for ¡durability ¡ Cloud ¡Storage ¡ 5 ¡
Personal ¡Data ¡Management ¡ • Use ¡available ¡storage/connecGvity ¡to ¡replicate ¡ for ¡availability ¡ 6 ¡
Outline ¡ • MoGvaGon ¡ • Problem ¡Statement ¡ • System: ¡PodBase ¡ • EvaluaGon ¡ • Conclusion ¡ 7 ¡
PodBase ¡ • Automated, ¡transparent ¡data ¡management ¡for ¡ personal ¡devices ¡ • OS ¡and ¡vendor ¡neutral. ¡ ¡ ¡ ¡ • Transparent ¡replicaGon ¡for ¡durability, ¡availability ¡ ¡ ¡ ¡ • Seeks ¡to ¡opportunisGcally ¡and ¡transparently ¡ exploit ¡available ¡resources ¡while ¡requiring ¡ minimal ¡user ¡a^enGon ¡ ¡ • Linear ¡programming ¡approach ¡allows ¡the ¡system ¡ to ¡adapt ¡to ¡changing ¡condiGons ¡ 8 ¡
System ¡Goals ¡ • On ¡a ¡set ¡of ¡intermi^ently ¡connected ¡personal ¡ devices: ¡ • OpportunisGcally ¡propagate ¡informaGon ¡ • Replicate ¡for ¡availability ¡and ¡durability ¡ – Files ¡should ¡be ¡k ¡durable: ¡ ¡durability ¡= ¡min|{d ¡ ∈ ¡D ¡: ¡f ¡ ∈ ¡store-‑files(d)}| ¡. ¡f ∈ F ¡ – Files ¡should ¡be ¡available ¡on ¡all ¡devices ¡where ¡it ¡might ¡ be ¡useful ¡ Availability ¡= ¡∑ ¡|like-‑files(d) ¡ ∩ ¡store-‑files(d)| ¡. ¡d ∈ D ¡ 9 ¡
Minimal ¡User ¡InteracGon ¡ • Add ¡new ¡device ¡ • Report ¡loss ¡of ¡device ¡(opGonal) ¡ • Restore ¡data ¡ • Low ¡storage ¡warning ¡ • Device ¡and ¡type ¡specific ¡funcGonality ¡through ¡ plug-‑ins ¡ – Archive ¡data ¡ – SynchronizaGon/reconciliaGon ¡ 10 ¡
Storage ¡Devices ¡ • Each ¡storage ¡device ¡contains: ¡ – User ¡files ¡ – Metadata ¡ – Replicas ¡ Metadata ¡ Replicas ¡ • PodBase ¡data ¡is ¡stored ¡securely ¡in ¡device’s ¡file ¡ system ¡ 11 ¡
Device ¡InteracGon ¡ Version ¡Vector ¡ Version ¡Vector ¡ ConnecGon ¡History ¡ ConnecGon ¡History ¡ Files ¡Stored ¡ Files ¡Stored ¡ Free ¡Space ¡ Free ¡Space ¡ • Reconciles ¡approximate ¡global ¡view ¡ • Works ¡even ¡when ¡devices ¡are ¡very ¡small ¡ 12 ¡
AdapGve ¡ReplicaGon ¡ AcGons ¡ Goals ¡ Reconciled ¡Metadata ¡ LP ¡Solver ¡ Copy ¡A-‑>B ¡50 ¡ Copy ¡A-‑>D ¡50 ¡ 1 ¡ 2 ¡ Copy ¡C-‑>B ¡100 ¡ Copy ¡A-‑>C ¡100 ¡ Delete ¡ABC ¡3 ¡ 13 ¡ 13 ¡
Example: ¡AutomaGc ¡Sneakernets ¡ Office ¡ Home ¡ 14 ¡
Outline ¡ • MoGvaGon ¡ • Problem ¡Statement ¡ • System: ¡PodBase ¡ • EvaluaGon ¡ • Conclusion ¡ 15 ¡
Podbase: ¡ImplementaGon ¡ • ImplementaGon ¡in ¡Java ¡ – Small ¡customizaGon ¡required ¡per ¡supported ¡OS ¡ (Windows, ¡OS ¡X, ¡Linux) ¡ • Use ¡off ¡the ¡shelf ¡linear ¡programming ¡solver ¡ 16 ¡
EvaluaGon ¡ ¡ • Performed ¡both ¡a ¡controlled ¡evaluaGon ¡and ¡ two ¡user ¡studies ¡ • Controlled ¡evaluaGon ¡validates ¡basic ¡ funcGonality ¡ • User ¡study ¡ – 10 ¡household ¡deployed ¡PodBase ¡on ¡a ¡majority ¡of ¡ the ¡storage ¡devices ¡ – System ¡designed ¡to ¡unobtrusively ¡provide ¡ availability ¡and ¡durability ¡ 17 ¡
User ¡Study: ¡Summary ¡ • 10 ¡Households, ¡25 ¡devices, ¡30 ¡days ¡ 2.5 Storage Space (TB) Additional Space Free Space 2 Used Space 1.5 1 0.5 0 1 2 3 4 5 6 7 8 9 10 Household Number 18 ¡
ReplicaGon ¡Results ¡ 1 4x+ 3x 2x 0.8 1x Fraction of Files 0.6 0.4 0.2 0 1 2 3 4 5 6 7 8 9 10 Household Number • PodBase ¡successfully ¡replicates ¡data ¡without ¡user ¡ a^enGon ¡ • AdapGve ¡replicaGon ¡improves ¡durability ¡ 19 ¡
Bandwidth ¡Results ¡ 1 H. 1 0.9 H. 2 0.8 H. 4 0.7 H. 7 0.6 CDF H. 9 0.5 0.4 0.3 0.2 0.1 0 0 100 200 300 400 500 Time to Replicate Files (hours) 20 ¡
EvaluaGon ¡Summary ¡ • PodBase ¡transparently ¡provides ¡increased ¡ durability ¡and ¡availability ¡for ¡personal ¡devices ¡ – Availability ¡in ¡the ¡paper ¡ • User ¡study ¡shows ¡that ¡the ¡system ¡is ¡deployable ¡ and ¡useful ¡ • Adapts ¡and ¡takes ¡advantage ¡of ¡free ¡space ¡and ¡ high ¡bandwidth ¡device ¡connecGons ¡ 21 ¡
Conclusions ¡ • Podbase: ¡Automated ¡storage ¡management ¡ – Transparently ¡increase ¡the ¡durability ¡and ¡ availability ¡of ¡data ¡ – Uses ¡free ¡storage ¡space ¡and ¡opportunisGc ¡ connecGvity ¡ • Prototype ¡evaluated ¡in ¡user ¡study ¡ 22 ¡
QuesGons? ¡ 23 ¡
Recommend
More recommend