bolt data management for connected homes
play

Bolt: Data management for connected homes Trinabh Gupta*, Rayman - PowerPoint PPT Presentation

Bolt: Data management for connected homes Trinabh Gupta*, Rayman Preet Singh Amar Phanishayee, Jaeyeon Jung, Ratul Mahajan *The University of Texas at AusBn


  1. Bolt: Data management for connected homes Trinabh ¡Gupta*, ¡Rayman ¡Preet ¡Singh† ¡ Amar ¡Phanishayee, ¡Jaeyeon ¡Jung, ¡Ratul ¡Mahajan ¡ ¡ *The ¡University ¡of ¡Texas ¡at ¡AusBn ¡ †University ¡of ¡Waterloo ¡ MicrosoE ¡Research ¡

  2. Number of sensors, smart devices is growing In ¡2008, ¡number ¡of ¡sensors ¡exceeded ¡people ¡ ¡ Sensors ¡in ¡commercial ¡spaces ¡ In ¡2020, ¡50 ¡billion ¡sensors. ¡ Wearables ¡and ¡Personal ¡ ¡ hMp://share.cisco.com/internet-­‑of-­‑things.html ¡ devices ¡ In ¡2017, ¡90 ¡million ¡homes ¡with ¡automaBon ¡ ¡ hMps://www.abiresearch.com/press/90-­‑million-­‑homes-­‑worldwide-­‑will-­‑employ-­‑home-­‑automa ¡ Sensors ¡and ¡devices ¡for ¡ ¡ AutomoBve ¡sensors ¡ home ¡automaBon ¡

  3. Need ¡a ¡ new ¡data ¡management ¡system ¡for ¡ connected ¡homes ¡ Energy ¡Data ¡ Neighborhood ¡ PreHeat ¡ DigiSwitch ¡ AnalyBcs ¡ Watch ¡ [Ubicomp ¡2011] ¡ [Medical ¡Systems ¡ [CSCW ¡2013] ¡ 2011] ¡ [Energy ¡and ¡ Building ¡2012] ¡ Apps ¡ HomeOS ¡ Mi ¡Casa ¡Verde ¡ Pla3orms ¡ Devices ¡and ¡ sensors ¡ for ¡the ¡home ¡

  4. Applications generate time-series data and retrieve based on time windows Slot ¡1 ¡ Day ¡1 ¡ Slot ¡2 ¡ IdenBfy ¡days ¡with ¡ . ¡. ¡. ¡ PreHeat ¡ Slot ¡96 ¡ closest ¡occupancy ¡ paMern ¡( least ¡ Slot ¡1 ¡ Occupancy ¡ hamming ¡distance ) ¡ Day ¡2 ¡ Slot ¡2 ¡ Sensors ¡ . ¡. ¡. ¡ to ¡predict ¡future ¡ Slot ¡96 ¡ slot ¡ Slot ¡1 ¡ Day ¡3 ¡ Slot ¡2 ¡ ? ¡ Thermostat ¡ Requirement: ¡Support ¡Bme-­‑series ¡data ¡

  5. Applications access data from multiple homes Time ¡ AMributes ¡ Value ¡ Energy ¡Data ¡ Mon, ¡1 ¡AM ¡ Temp ¡= ¡20°C ¡ 0.9 ¡ AnalyBcs ¡ Mon, ¡2 ¡AM ¡ Temp ¡= ¡20°C ¡ 1.1 ¡ Run ¡by ¡uBlity ¡company ¡ Mon, ¡3 ¡AM ¡ Temp ¡= ¡22°C ¡ 1.2 ¡ Energy ¡ ¡ Meter ¡ Mon, ¡4 ¡AM ¡ Temp ¡= ¡22°C ¡ 1.2 ¡ Data ¡from ¡ Perform ¡ neighboring ¡ Analyze ¡and ¡compare ¡ analysis ¡even ¡ energy ¡meters ¡ energy ¡usage ¡ when ¡homes ¡ Avg. ¡for ¡this ¡home ¡ are ¡offline ¡ Avg. ¡of ¡neighboring ¡homes ¡ Requirement: ¡Leverage ¡cloud ¡servers ¡for ¡availability ¡

  6. Applications share sensitive home data Time ¡ AMributes ¡ Value ¡ Sun, ¡11 ¡AM ¡ humans ¡ Mon, ¡1 ¡PM ¡ animal ¡ Perform ¡image ¡ Tue, ¡3 ¡PM ¡ car, ¡red ¡ DNW ¡ similarity ¡matching ¡ Seen ¡a ¡car ¡in ¡the ¡last ¡24 ¡hours? ¡ Neighbor ¡ Neighbor ¡ Requirement: ¡Ensure ¡confidenBality, ¡integrity ¡

  7. Recap of data management requirements • Support ¡Bme-­‑series ¡data ¡with ¡efficient ¡Bme ¡and ¡ tags ¡based ¡retrieval ¡ • Leverage ¡reliable ¡and ¡available ¡cloud ¡storage ¡to ¡ facilitate ¡sharing ¡ • Ensure ¡data ¡confidenBality ¡and ¡integrity ¡

  8. Existing systems are not suitable App ¡ Query ¡(start-­‑Bme, ¡end-­‑Bme, ¡…) ¡ Time ¡series ¡data ¡processing ¡[OpenTSDB] ¡ • Do ¡not ¡maintain ¡confiden8ality ¡or ¡integrity ¡of ¡data ¡ ¡ Exposes ¡ ¡ App ¡ key-­‑value ¡API ¡ Secure ¡systems ¡using ¡untrusted ¡storage ¡ ¡ [SUNDR ¡04, ¡Depot ¡10, ¡SPORC ¡10] ¡ • Do ¡not ¡support ¡8me-­‑series ¡data ¡

  9. Outline • ApplicaBons ¡requirements ¡and ¡moBvaBon ¡ • Design ¡of ¡Bolt ¡ • Key ¡mechanisms ¡to ¡support ¡requirements ¡ • EvaluaBon ¡ • Feasibility ¡of ¡using ¡Bolt ¡for ¡three ¡applicaBons ¡

  10. Recall the data management requirements of apps for connected homes Support ¡ Leverage ¡ Ensure ¡data ¡ Bme-­‑series, ¡ cloud ¡ confidenBality, ¡ tagged ¡data ¡ storage ¡ integrity ¡ How can we address these requirements simultaneously?

  11. Straw man: Store data in a cloud DB App ¡ DB ¡ Query ¡(start-­‑Bme, ¡end-­‑Bme, ¡…) ¡ • Cloud ¡untrusted ¡for ¡data ¡confidenBality ¡and ¡integrity ¡ • Cloud ¡untrusted ¡for ¡computaBons ¡ (e.g., ¡hamming ¡distance, ¡image ¡similarity) ¡ Design ¡guidelines: ¡ 1. End-­‑points ¡perform: ¡encryp8on/decryp8on, ¡data ¡ integrity ¡checking, ¡query ¡evalua8on ¡ 2. ¡ ¡Use ¡cloud ¡providers ¡for ¡(just) ¡storage ¡

  12. Straw man: Using secure key-value datastores Record ¡1 ¡ App ¡ Record ¡2 ¡ Block ¡store ¡ (key-­‑value ¡API) ¡ Record ¡3 ¡ Record ¡4 ¡ Logic ¡for ¡security ¡ [SUNDR ¡04, ¡Depot ¡10, ¡SPORC ¡10] ¡ Data ¡records ¡ • Need ¡support ¡for ¡temporal ¡queries. ¡ • High ¡per-­‑data-­‑record ¡overhead. ¡ • EncrypBon/decrypBon, ¡integrity ¡metadata ¡/ ¡checks ¡ • Remote ¡storage ¡calls ¡and ¡transfers ¡ • Individual ¡data ¡records ¡do ¡not ¡compress ¡well. ¡ Design ¡guideline: ¡Batch ¡con8guous ¡data ¡records, ¡leverage ¡ workload ¡query ¡paKern ¡

  13. Overview of Bolt • Stream ¡(append-­‑only) ¡abstracBon ¡ • Records: ¡<Bmestamp, ¡[tag], ¡value> ¡ • Query ¡(start-­‑Bme, ¡end-­‑Bme, ¡tag) ¡ • Leverage ¡cloud ¡storage ¡ • Cloud ¡resources ¡untrusted ¡for ¡compute ¡and ¡storage ¡ • No ¡cloud ¡query ¡engine ¡with ¡computaBon ¡at ¡endpoints ¡ • Security ¡and ¡privacy ¡guarantees ¡ • ConfidenBality, ¡Tamper ¡evidence, ¡Freshness ¡

  14. Bolt Stream: Index + Log of <ts, tag, val> ts1, ¡tag1, ¡val ¡ ts2, ¡tag1, ¡val ¡ ts3, ¡tag2, ¡val ¡ App ¡ ts4, ¡tag1, ¡val ¡ ts5, ¡tag2, ¡val ¡ ts6, ¡tag2, ¡val ¡ t7, ¡tag1, ¡val ¡ ts8, ¡tag1, ¡val ¡ Stream ¡Log ¡(Disk) ¡ tag1 ¡ ts1, ¡O1 ¡ ts2, ¡O2 ¡ ts4, ¡O4 ¡ ts7, ¡O7 ¡ ts8, ¡O8 ¡ tag2 ¡ ts3, ¡O3 ¡ ts5, ¡O5 ¡ ts6, ¡O6 ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡Tag ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡Offsets ¡Sorted ¡by ¡8me ¡ ¡ ¡ ¡ ¡ ¡ ¡ Stream ¡Index ¡(In ¡memory, ¡Disk ¡backed) ¡

  15. Batching data for efficiency ts, ¡tag, ¡val ¡ Remote ¡Log ¡ ¡ Hash1 ¡ Chunk ¡1 ¡ Compressed ¡ Metadata ¡ ts, ¡tag, ¡val ¡ Encrypted ¡ & ¡Index ¡ data ¡ ts, ¡tag, ¡val ¡ Chunk ¡1 ¡ Compressed ¡ Signed ¡ Encrypted ¡ App ¡ Hash ¡ ts, ¡tag, ¡val ¡ Hash2 ¡ Chunk ¡2 ¡ data ¡ Compressed ¡ of ¡ ts, ¡tag, ¡val ¡ Encrypted ¡ Hash1, ¡ Chunk ¡2 ¡ data ¡ Compressed ¡ Hash2, ¡ ts, ¡tag, ¡val ¡ Encrypted ¡ Hash3 ¡ Hash3 ¡ Chunk ¡3 ¡ data ¡ & ¡ ts, ¡tag, ¡val ¡ Compressed ¡ Index ¡ Encrypted ¡ Chunk ¡3 ¡ Compressed ¡ ts, ¡tag, ¡val ¡ Hash ¡ Encrypted ¡ ¡ Stream ¡Log ¡and ¡Index ¡ data ¡ Index ¡ Hash ¡ Index ¡ Encrypted ¡Index ¡ Encrypted ¡Index ¡ Improves ¡storage ¡and ¡transfer ¡efficiency. ¡ AmorBzes ¡cost ¡of ¡compression, ¡encrypBon, ¡and ¡hashing ¡

  16. Reads use the index to download chunks App ¡ Encrypted ¡Index ¡ Query ¡(3 ¡AM ¡to ¡5AM, ¡Temp ¡= ¡22) ¡ Chunk ¡1 ¡ Compressed ¡ Temp ¡= ¡22 ¡ 1AM, ¡O1 ¡ 3AM, ¡O3 ¡ 4AM, ¡O4 ¡ Encrypted ¡ data ¡ Temp ¡= ¡24 ¡ 2AM, ¡O2 ¡ 5AM, ¡O5 ¡ Chunk ¡2 ¡ Compressed ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡Tag ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡Offsets ¡Sorted ¡by ¡8me ¡ Encrypted ¡ ¡ ¡Index ¡opBmized ¡to ¡lookup ¡tags, ¡Bmestamps ¡ ¡ ¡ ¡ ¡ ¡ ¡ data ¡ Chunk ¡3 ¡ Compressed ¡ Encrypted ¡ data ¡ Compressed ¡ Compressed ¡ Stream ¡Log ¡ Encrypted ¡ Encrypted ¡ Chunk ¡2 ¡ Chunk ¡3 ¡ Lookups ¡and ¡computaBon ¡are ¡performed ¡locally ¡at ¡home ¡

  17. Batching and prefetching on reads App ¡ Chunk ¡1 ¡ Compressed ¡ Encrypted ¡ data ¡ Query ¡paMerns ¡ • Fixed ¡Window ¡ Chunk ¡2 ¡ Compressed ¡ • Sliding ¡Window ¡ Encrypted ¡ data ¡ • Growing ¡Window ¡ Chunk ¡3 ¡ Compressed ¡ Encrypted ¡ data ¡ Stream ¡Log ¡ ¡ ¡Reduces ¡number ¡of ¡remote ¡calls, ¡ pre-­‑fetches ¡data ¡for ¡subsequent ¡queries. ¡

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend