Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Managing data in computational edge clouds

337 views

Published on

Presented at Mobile Edge Communication workshop at SIGCOMM 2017.
Paper can be found at: http://dl.acm.org/citation.cfm?id=3098212

Published in: Education
  • Be the first to comment

  • Be the first to like this

Managing data in computational edge clouds

  1. 1. Managing Data in Computational Edge Clouds ACM SIGCOMM 2017 Workshop on Mobile Edge Communications (MECOMM’2017), Los Angeles Nitinder Mohan✼ Pengyuan Zhou✼ Keerthana Govindaraj△ Jussi Kangasharju✼ ✼University of Helsinki △Robert Bosch GmbH ✼{firstname.lastname@helsinki.fi} △{keerthana.govindaraj@de.bosch.com}
  2. 2. Rise of Edge Clouds Network DatacenterEdge Server User 2 Edge Cloud: Small-scale server(s) deployed at network edge to compute user data Motivation:
  3. 3. Rise of Edge Clouds Network DatacenterEdge Server User Edge Cloud: Small-scale server(s) deployed at network edge to compute user data Motivation: üDecreased latency and network traffic 2
  4. 4. Rise of Edge Clouds Network Edge Cloud: Small-scale server(s) deployed at network edge to compute user data Motivation: üDecreased latency and network traffic üComputing data of local relevance 2
  5. 5. Edge-Fog Cloud Nitinder Mohan and Jussi Kangasharju. "Edge-fog cloud: A distributed cloud for internet of things computations." Cloudification of the Internet of Things (CIoT). IEEE, 2016. • Voluntary compute devices • 1-2 network hops from users • Ad-hoc network connectivity • Dedicated compute servers • 5-6 network hops from users • Dense network connectivity • Permanent data archival • No compute capability 3
  6. 6. Data Availability in Edge Cache Query: Give me a route from point A to B without road disruptions 4
  7. 7. Data Availability in Edge Cache • Edge cloud proposals presume that the required data for processing is pre- available in Edge servers cache • However, Edge server may request Data Store for required data Data Request: Any construction/ accidents on the map? 4
  8. 8. Data Availability in Edge Cache • Edge cloud proposals presume that the required data for processing is pre- available in Edge servers cache • However, Edge server may request Data Store for required data • The computation is delayed by a round-trip-time to central Data Store • Reduces benefits of employing Edge clouds! Data Request: Any construction/ accidents on the map? Requirement: Caching strategy which predicts and stores required data before computation 4
  9. 9. Edge Cloud Cache Grouping Edge cloud caching mechanism ØGroup edge resources into cache groups based on their locally cached data ØPredict required data for computation based on cache grouping classification ØProvide coherence on multiple copies of shared data throughout a cache group 5
  10. 10. Resource Cache Grouping
  11. 11. Grouping Algorithm Task Deployment Populate Caches Grouping Classifiers 7
  12. 12. Grouping Algorithm Deployment: Select {RC}i resources for computing a task Tc 1. Algorithms such as LPCF* selects a subset from available resources which achieves least processing and network cost for collaboration. 2. Several deployments for different tasks can occur at same time. Task Deployment T1 T2 Nitinder Mohan and Jussi Kangasharju. "Edge-fog cloud: A distributed cloud for internet of things computations." Cloudification of the Internet of Things (CIoT). IEEE, 2016. 8
  13. 13. Grouping Algorithm 1. At t=0, {RC}i does not have data required for computation and it requests the required data from Data Store 2. The Data Store sends the required data to requesting resources populating their caches Task Deployment Populate Caches 9
  14. 14. Grouping Algorithm 1. At t=0, {RC}i does not have data required for computation and it requests the required data from Data Store 2. The Data Store sends the required data to requesting resources populating their caches Task Deployment Populate Caches 9
  15. 15. Grouping Algorithm 1. The task Tc is classified in a workload Wk where Wk is a set of similar tasks 2. The resources {RC}i caching data of workload Wk are grouped together as cache group CGk Task Deployment Populate Caches Grouping Classifiers W1 W2 10
  16. 16. Grouping Algorithm 1. The deployment algorithm prefers CGk ∈Wk for task Ti ∈Wk Task Deployment Populate Caches Grouping Classifiers W1 W2 T3 11
  17. 17. Grouping Algorithm 1. The deployment algorithm prefers CGk ∈Wk for task Ti ∈Wk 2. If the resources in group are not appropriate for deployment, the algorithm can select other available resources Task Deployment Populate Caches Grouping Classifiers W1 W2 11
  18. 18. Grouping Algorithm 1. The deployment algorithm prefers CGk ∈Wk for task Ti ∈Wk 2. If the resources in group are not appropriate for deployment, the algorithm can select other available resources 3. These resources then join their respective cache group Task Deployment Populate Caches Grouping Classifiers W1 W2 11
  19. 19. Grouping Algorithm 1. The deployment algorithm prefers CGk ∈Wk for task Ti ∈Wk 2. If the resources in group are not appropriate for deployment, the algorithm can select other available resources 3. These resources then join their respective cache group 4. A resource can be a part of more than one group Task Deployment Populate Caches Grouping Classifiers W1 W2 11
  20. 20. Group Communication
  21. 21. Requirements 1. Reduce unnecessary network traffic 2. Ensure consistent computation by avoiding stale data copies 13
  22. 22. Resource Roles 1. Group Member • Resource (RCx) part of a cache group {CG}i • The group member stores only data of its group workload 14
  23. 23. Resource Roles 1. Group Member • Resource (RCx) part of a cache group {CG}i • The group member stores only data of its group workload 2. Group Leader • Representative of a group • Responsible for maintaining coherent data within a group • Has consistent connectivity with group members • Elected via distributed election algorithm 14
  24. 24. Communication Flow The communication model is strictly pull-based to limit number of messages in the system The model operates over following assumptions: 1. The resources upload their updated data copy to Data Store after every successful computation 2. Data upload is in-parallel to ongoing local computation and does not impact the computation completion time 3. Data Store is persistent and immune to failures 4. Messages in the system are not lost 15
  25. 25. Cache Data Structures 1. Group member table Maps locally cached data with group leader 2. Group leader table Ensures that group leader has consistent state and address of resource caching data 3. Data Store table Maps data to groups Data Name Leader Address Tag Data Name Leader Address Classifier Type Data Name Resource Address Tag Timestamp 16
  26. 26. Content Retrival in Group Resource 1 Member Table Content ’X’ Content ‘Y’ Leader A Leader A Free Lock Resource 2 Member Table Content ’X’ (stale) Content ‘Q’ Leader A Leader A Free Free Leader A Leader Table Content ’X’ Content ‘Y’ Free Tx Ty Content ‘Q’ Free Lock Tq Resource 1 Resource 1 Resource 2Content ‘Z’ Leader B Free Data Store Data Store Table Content ’X’ Content ‘Y’ Leader A Leader B Wi WjContent ‘Z’ Content ‘Q’ Leader A Leader A Wi Wi Scenario 1: Retrieving free data 17
  27. 27. Content Retrival in Group Resource 1 Member Table Content ’X’ Content ‘Y’ Leader A Leader A Free Lock Resource 2 Member Table Content ’X’ (stale) Content ‘Q’ Leader A Leader A Free Free Leader A Leader Table Content ’X’ Content ‘Y’ Free Tx Ty Content ‘Q’ Free Lock Tq Resource 1 Resource 1 Resource 2Content ‘Z’ Leader B Free Data Store Data Store Table Content ’X’ Content ‘Y’ Leader A Leader B Wi WjContent ‘Z’ Content ‘Q’ Leader A Leader A Wi Wi Content ‘X’? Scenario 1: Retrieving free data 17
  28. 28. Content Retrival in Group Resource 1 Member Table Content ’X’ Content ‘Y’ Leader A Leader A Free Lock Resource 2 Member Table Content ’X’ (stale) Content ‘Q’ Leader A Leader A Free Free Leader A Leader Table Content ’X’ Content ‘Y’ Free Tx Ty Content ‘Q’ Free Lock Tq Resource 1 Resource 1 Resource 2Content ‘Z’ Leader B Free Data Store Data Store Table Content ’X’ Content ‘Y’ Leader A Leader B Wi WjContent ‘Z’ Content ‘Q’ Leader A Leader A Wi Wi Content ‘X’? Scenario 1: Retrieving free data 17
  29. 29. Content Retrival in Group Resource 1 Member Table Content ’X’ Content ‘Y’ Leader A Leader A Free Lock Resource 2 Member Table Content ’X’ (stale) Content ‘Q’ Leader A Leader A Free Free Leader A Leader Table Content ’X’ Content ‘Y’ Free Tx Ty Content ‘Q’ Free Lock Tq Resource 1 Resource 1 Resource 2Content ‘Z’ Leader B Free Data Store Data Store Table Content ’X’ Content ‘Y’ Leader A Leader B Wi WjContent ‘Z’ Content ‘Q’ Leader A Leader A Wi Wi Content ‘X’? GoTo: ’Resource 1’ Scenario 1: Retrieving free data 17
  30. 30. Content Retrival in Group Resource 1 Member Table Content ’X’ Content ‘Y’ Leader A Leader A Free Lock Resource 2 Member Table Content ’X’ (stale) Content ‘Q’ Leader A Leader A Free Free Leader A Leader Table Content ’X’ Content ‘Y’ Free Tx Ty Content ‘Q’ Free Lock Tq Resource 1 Resource 1 Resource 2Content ‘Z’ Leader B Free Data Store Data Store Table Content ’X’ Content ‘Y’ Leader A Leader B Wi WjContent ‘Z’ Content ‘Q’ Leader A Leader A Wi Wi Content ‘X’? GoTo: ’Resource 1’ Content ‘X’? Scenario 1: Retrieving free data 17
  31. 31. Content Retrival in Group Resource 1 Member Table Content ’X’ Content ‘Y’ Leader A Leader A Free Lock Resource 2 Member Table Content ’X’ (stale) Content ‘Q’ Leader A Leader A Free Free Leader A Leader Table Content ’X’ Content ‘Y’ Free Tx Ty Content ‘Q’ Free Lock Tq Resource 1 Resource 1 Resource 2Content ‘Z’ Leader B Free Data Store Data Store Table Content ’X’ Content ‘Y’ Leader A Leader B Wi WjContent ‘Z’ Content ‘Q’ Leader A Leader A Wi Wi Content ‘X’? GoTo: ’Resource 1’ Content ‘X’? Scenario 1: Retrieving free data 17
  32. 32. Content Retrival in Group Resource 1 Member Table Content ’X’ Content ‘Y’ Leader A Leader A Free Lock Resource 2 Member Table Content ’X’ (stale) Content ‘Q’ Leader A Leader A Free Free Leader A Leader Table Content ’X’ Content ‘Y’ Free Tx Ty Content ‘Q’ Free Lock Tq Resource 1 Resource 1 Resource 2Content ‘Z’ Leader B Free Data Store Data Store Table Content ’X’ Content ‘Y’ Leader A Leader B Wi WjContent ‘Z’ Content ‘Q’ Leader A Leader A Wi Wi Content ‘X’? GoTo: ’Resource 1’ Content ‘X’? Content ‘X’ Scenario 1: Retrieving free data 17
  33. 33. Content Retrival in Group Resource 1 Member Table Content ’X’ Content ‘Y’ Leader A Leader A Free Lock Resource 2 Member Table Content ‘Q’ Leader A Leader A Free Free Leader A Leader Table Content ’X’ Content ‘Y’ Free Tx Ty Content ‘Q’ Free Lock Tq Resource 1 Resource 1 Resource 2Content ‘Z’ Leader B Free Data Store Data Store Table Content ’X’ Content ‘Y’ Leader A Leader B Wi WjContent ‘Z’ Content ‘Q’ Leader A Leader A Wi Wi Content ‘X’? GoTo: ’Resource 1’ Content ‘X’? Content ‘X’ Scenario 1: Retrieving free data Content ’X’ 17
  34. 34. Content Retrival in Group Resource 1 Member Table Content ’X’ Content ‘Y’ Leader A Leader A Free Lock Resource 2 Member Table Content ’X’ (stale) Content ‘Q’ Leader A Leader A Free Free Leader A Leader Table Content ’X’ Content ‘Y’ Free Tx Ty Content ‘Q’ Free Lock Tq Resource 1 Resource 1 Resource 2Content ‘Z’ Leader B Free Data Store Data Store Table Content ’X’ Content ‘Y’ Leader A Leader B Wi WjContent ‘Z’ Content ‘Q’ Leader A Leader A Wi Wi Content ‘X’? GoTo: ’Resource 1’ Content ‘X’? Scenario 2: Resource failure 18
  35. 35. Content Retrival in Group Resource 1 Member Table Content ’X’ Content ‘Y’ Leader A Leader A Free Lock Resource 2 Member Table Content ’X’ (stale) Content ‘Q’ Leader A Leader A Free Free Leader A Leader Table Content ’X’ Content ‘Y’ Free Tx Ty Content ‘Q’ Free Lock Tq Resource 1 Resource 1 Resource 2Content ‘Z’ Leader B Free Data Store Data Store Table Content ’X’ Content ‘Y’ Leader A Leader B Wi WjContent ‘Z’ Content ‘Q’ Leader A Leader A Wi Wi Content ‘X’? GoTo: ’Resource 1’ Content ‘X’? Unavailable! Scenario 2: Resource failure 18
  36. 36. Content Retrival in Group Resource 1 Member Table Content ’X’ Content ‘Y’ Leader A Leader A Free Lock Resource 2 Member Table Content ’X’ (stale) Content ‘Q’ Leader A Leader A Free Free Leader A Leader Table Content ’X’ Content ‘Y’ Free Tx Ty Content ‘Q’ Free Lock Tq Resource 1 Resource 1 Resource 2Content ‘Z’ Leader B Free Data Store Data Store Table Content ’X’ Content ‘Y’ Leader A Leader B Wi WjContent ‘Z’ Content ‘Q’ Leader A Leader A Wi Wi Content ‘X’? GoTo: ’Resource 1’ Content ‘X’? Timeout Unavailable! Scenario 2: Resource failure 18
  37. 37. Content Retrival in Group Resource 1 Member Table Content ’X’ Content ‘Y’ Leader A Leader A Free Lock Resource 2 Member Table Content ’X’ (stale) Content ‘Q’ Leader A Leader A Free Free Leader A Leader Table Content ’X’ Content ‘Y’ Free Tx Ty Content ‘Q’ Free Lock Tq Resource 1 Resource 1 Resource 2Content ‘Z’ Leader B Free Data Store Data Store Table Content ’X’ Content ‘Y’ Leader A Leader B Wi WjContent ‘Z’ Content ‘Q’ Leader A Leader A Wi Wi Content ‘X’? GoTo: ’Resource 1’ Content ‘X’? Content ‘X’? Timeout Unavailable! Scenario 2: Resource failure 18
  38. 38. Content Retrival in Group Resource 1 Member Table Content ’X’ Content ‘Y’ Leader A Leader A Free Lock Resource 2 Member Table Content ’X’ (stale) Content ‘Q’ Leader A Leader A Free Free Leader A Leader Table Content ’X’ Content ‘Y’ Free Tx Ty Content ‘Q’ Free Lock Tq Resource 1 Resource 1 Resource 2Content ‘Z’ Leader B Free Data Store Data Store Table Content ’X’ Content ‘Y’ Leader A Leader B Wi WjContent ‘Z’ Content ‘Q’ Leader A Leader A Wi Wi Content ‘X’? GoTo: ’Resource 1’ Content ‘X’? Content ‘X’? Timeout Unavailable! Scenario 2: Resource failure 18
  39. 39. Content Retrival in Group Resource 1 Member Table Content ’X’ Content ‘Y’ Leader A Leader A Free Lock Resource 2 Member Table Content ’X’ (stale) Content ‘Q’ Leader A Leader A Free Free Leader A Leader Table Content ’X’ Content ‘Y’ Free Tx Ty Content ‘Q’ Free Lock Tq Resource 1 Resource 1 Resource 2Content ‘Z’ Leader B Free Data Store Data Store Table Content ’X’ Content ‘Y’ Leader A Leader B Wi WjContent ‘Z’ Content ‘Q’ Leader A Leader A Wi Wi Content ‘X’? GoTo: ’Resource 1’ Content ‘X’? Content ‘X’? Timeout Content ‘X’ Unavailable! Scenario 2: Resource failure 18
  40. 40. Content Retrival in Group Resource 1 Member Table Content ’X’ Content ‘Y’ Leader A Leader A Free Lock Resource 2 Member Table Content ‘Q’ Leader A Leader A Free Free Leader A Leader Table Content ’X’ Content ‘Y’ Free Tx Ty Content ‘Q’ Free Lock Tq Resource 1 Resource 1 Resource 2Content ‘Z’ Leader B Free Data Store Data Store Table Content ’X’ Content ‘Y’ Leader A Leader B Wi WjContent ‘Z’ Content ‘Q’ Leader A Leader A Wi Wi Content ‘X’? GoTo: ’Resource 1’ Content ‘X’? Content ‘X’? Timeout Content ‘X’ Unavailable! Scenario 2: Resource failure Content ’X’ 18
  41. 41. Content Retrival in Group Resource 1 Member Table Content ’X’ Content ‘Y’ Leader A Leader A Lock Lock Resource 2 Member Table Content ’X’ (stale) Content ‘Q’ Leader A Leader A Free Free Leader A Leader Table Content ’X’ Content ‘Y’ Lock Tx Ty Content ‘Q’ Free Lock Tq Resource 1 Resource 1 Resource 2Content ‘Z’ Leader B Free Data Store Data Store Table Content ’X’ Content ‘Y’ Leader A Leader B Wi WjContent ‘Z’ Content ‘Q’ Leader A Leader A Wi Wi Scenario 3: Data under update 19
  42. 42. Content Retrival in Group Resource 1 Member Table Content ’X’ Content ‘Y’ Leader A Leader A Lock Lock Resource 2 Member Table Content ’X’ (stale) Content ‘Q’ Leader A Leader A Free Free Leader A Leader Table Content ’X’ Content ‘Y’ Lock Tx Ty Content ‘Q’ Free Lock Tq Resource 1 Resource 1 Resource 2Content ‘Z’ Leader B Free Data Store Data Store Table Content ’X’ Content ‘Y’ Leader A Leader B Wi WjContent ‘Z’ Content ‘Q’ Leader A Leader A Wi Wi Scenario 3: Data under update Content ‘X’? 19
  43. 43. Content Retrival in Group Resource 1 Member Table Content ’X’ Content ‘Y’ Leader A Leader A Lock Lock Resource 2 Member Table Content ’X’ (stale) Content ‘Q’ Leader A Leader A Free Free Leader A Leader Table Content ’X’ Content ‘Y’ Lock Tx Ty Content ‘Q’ Free Lock Tq Resource 1 Resource 1 Resource 2Content ‘Z’ Leader B Free Data Store Data Store Table Content ’X’ Content ‘Y’ Leader A Leader B Wi WjContent ‘Z’ Content ‘Q’ Leader A Leader A Wi Wi Scenario 3: Data under update Content ‘X’? 19
  44. 44. Content Retrival in Group Resource 1 Member Table Content ’X’ Content ‘Y’ Leader A Leader A Lock Lock Resource 2 Member Table Content ’X’ (stale) Content ‘Q’ Leader A Leader A Free Free Leader A Leader Table Content ’X’ Content ‘Y’ Lock Tx Ty Content ‘Q’ Free Lock Tq Resource 1 Resource 1 Resource 2Content ‘Z’ Leader B Free Data Store Data Store Table Content ’X’ Content ‘Y’ Leader A Leader B Wi WjContent ‘Z’ Content ‘Q’ Leader A Leader A Wi Wi Lock: ’Resource 1’ Scenario 3: Data under update Content ‘X’? 19
  45. 45. Content Retrival in Group Resource 1 Member Table Content ’X’ Content ‘Y’ Leader A Leader A Lock Lock Resource 2 Member Table Content ’X’ (stale) Content ‘Q’ Leader A Leader A Free Free Leader A Leader Table Content ’X’ Content ‘Y’ Lock Tx Ty Content ‘Q’ Free Lock Tq Resource 1 Resource 1 Resource 2Content ‘Z’ Leader B Free Data Store Data Store Table Content ’X’ Content ‘Y’ Leader A Leader B Wi WjContent ‘Z’ Content ‘Q’ Leader A Leader A Wi Wi Lock: ’Resource 1’ Scenario 3: Data under update Time Interval Content ‘X’? 19
  46. 46. Content Retrival in Group Resource 1 Member Table Content ’X’ Content ‘Y’ Leader A Leader A Lock Lock Resource 2 Member Table Content ’X’ (stale) Content ‘Q’ Leader A Leader A Free Free Leader A Leader Table Content ’X’ Content ‘Y’ Lock Tx Ty Content ‘Q’ Free Lock Tq Resource 1 Resource 1 Resource 2Content ‘Z’ Leader B Free Data Store Data Store Table Content ’X’ Content ‘Y’ Leader A Leader B Wi WjContent ‘Z’ Content ‘Q’ Leader A Leader A Wi Wi Lock: ’Resource 1’ Scenario 3: Data under update Time Interval Content ‘X’? 19
  47. 47. Content Retrival in Group Resource 1 Member Table Content ’X’ Content ‘Y’ Leader A Leader A Lock Resource 2 Member Table Content ’X’ (stale) Content ‘Q’ Leader A Leader A Free Free Leader A Leader Table Content ’X’ Content ‘Y’ Lock Tx Ty Content ‘Q’ Free Lock Tq Resource 1 Resource 1 Resource 2Content ‘Z’ Leader B Free Data Store Data Store Table Content ’X’ Content ‘Y’ Leader A Leader B Wi WjContent ‘Z’ Content ‘Q’ Leader A Leader A Wi Wi Lock: ’Resource 1’ Scenario 3: Data under update Time Interval Content ‘X’? Free 19
  48. 48. Content Retrival in Group Resource 1 Member Table Content ’X’ Content ‘Y’ Leader A Leader A Lock Resource 2 Member Table Content ’X’ (stale) Content ‘Q’ Leader A Leader A Free Free Leader A Leader Table Content ’X’ Content ‘Y’ Lock Tx Ty Content ‘Q’ Free Lock Tq Resource 1 Resource 1 Resource 2Content ‘Z’ Leader B Free Data Store Data Store Table Content ’X’ Content ‘Y’ Leader A Leader B Wi WjContent ‘Z’ Content ‘Q’ Leader A Leader A Wi Wi Lock: ’Resource 1’ Scenario 3: Data under update Time Interval Free: Content ‘X’ Content ‘X’? Free 19
  49. 49. Content Retrival in Group Resource 1 Member Table Content ’X’ Content ‘Y’ Leader A Leader A Lock Resource 2 Member Table Content ’X’ (stale) Content ‘Q’ Leader A Leader A Free Free Leader A Leader Table Content ’X’ Content ‘Y’ Lock Tx Ty Content ‘Q’ Free Lock Tq Resource 1 Resource 1 Resource 2Content ‘Z’ Leader B Free Data Store Data Store Table Content ’X’ Content ‘Y’ Leader A Leader B Wi WjContent ‘Z’ Content ‘Q’ Leader A Leader A Wi Wi Lock: ’Resource 1’ Scenario 3: Data under update Time Interval Free: Content ‘X’ Content ‘X’? Free 19
  50. 50. Content Retrival in Group Resource 1 Member Table Content ’X’ Content ‘Y’ Leader A Leader A Lock Resource 2 Member Table Content ’X’ (stale) Content ‘Q’ Leader A Leader A Free Free Leader A Leader Table Content ’X’ Content ‘Y’ Tx Ty Content ‘Q’ Free Lock Tq Resource 1 Resource 1 Resource 2Content ‘Z’ Leader B Free Data Store Data Store Table Content ’X’ Content ‘Y’ Leader A Leader B Wi WjContent ‘Z’ Content ‘Q’ Leader A Leader A Wi Wi Lock: ’Resource 1’ Scenario 3: Data under update Time Interval Free: Content ‘X’ Content ‘X’? Free Free 19
  51. 51. Content Retrival in Group Resource 1 Member Table Content ’X’ Content ‘Y’ Leader A Leader A Lock Resource 2 Member Table Content ’X’ (stale) Content ‘Q’ Leader A Leader A Free Free Leader A Leader Table Content ’X’ Content ‘Y’ Tx Ty Content ‘Q’ Free Lock Tq Resource 1 Resource 1 Resource 2Content ‘Z’ Leader B Free Data Store Data Store Table Content ’X’ Content ‘Y’ Leader A Leader B Wi WjContent ‘Z’ Content ‘Q’ Leader A Leader A Wi Wi Content ‘X’? Lock: ’Resource 1’ Scenario 3: Data under update Time Interval Free: Content ‘X’ Content ‘X’? Free Free 19
  52. 52. Content Retrival in Group Resource 1 Member Table Content ’X’ Content ‘Y’ Leader A Leader A Lock Resource 2 Member Table Content ’X’ (stale) Content ‘Q’ Leader A Leader A Free Free Leader A Leader Table Content ’X’ Content ‘Y’ Tx Ty Content ‘Q’ Free Lock Tq Resource 1 Resource 1 Resource 2Content ‘Z’ Leader B Free Data Store Data Store Table Content ’X’ Content ‘Y’ Leader A Leader B Wi WjContent ‘Z’ Content ‘Q’ Leader A Leader A Wi Wi Content ‘X’? Lock: ’Resource 1’ Scenario 3: Data under update Time Interval Free: Content ‘X’ Content ‘X’? GoTo: ’Resource 1’ Free Free 19
  53. 53. Content Retrival in Group Resource 1 Member Table Content ’X’ Content ‘Y’ Leader A Leader A Lock Resource 2 Member Table Content ’X’ (stale) Content ‘Q’ Leader A Leader A Free Free Leader A Leader Table Content ’X’ Content ‘Y’ Tx Ty Content ‘Q’ Free Lock Tq Resource 1 Resource 1 Resource 2Content ‘Z’ Leader B Free Data Store Data Store Table Content ’X’ Content ‘Y’ Leader A Leader B Wi WjContent ‘Z’ Content ‘Q’ Leader A Leader A Wi Wi Content ‘X’? Lock: ’Resource 1’ Content ‘X’? Scenario 3: Data under update Time Interval Free: Content ‘X’ Content ‘X’? GoTo: ’Resource 1’ Free Free 19
  54. 54. Content Retrival in Group Resource 1 Member Table Content ’X’ Content ‘Y’ Leader A Leader A Lock Resource 2 Member Table Content ’X’ (stale) Content ‘Q’ Leader A Leader A Free Free Leader A Leader Table Content ’X’ Content ‘Y’ Tx Ty Content ‘Q’ Free Lock Tq Resource 1 Resource 1 Resource 2Content ‘Z’ Leader B Free Data Store Data Store Table Content ’X’ Content ‘Y’ Leader A Leader B Wi WjContent ‘Z’ Content ‘Q’ Leader A Leader A Wi Wi Content ‘X’? Lock: ’Resource 1’ Content ‘X’? Content ‘X’ Scenario 3: Data under update Time Interval Free: Content ‘X’ Content ‘X’? GoTo: ’Resource 1’ Free Free 19
  55. 55. Content Update in Group Resource 1 Member Table Content ’X’ Content ‘Y’ Leader A Leader A Free Lock Resource 2 Member Table Content ’X’ Content ‘Q’ Leader A Leader A Free Free Leader A Leader Table Content ’X’ Content ‘Y’ Free Tx Ty Content ‘Q’ Free Lock Tq Resource 1 Resource 1 Resource 2Content ‘Z’ Leader B Free Data Store Data Store Table Content ’X’ Content ‘Y’ Leader A Leader B Wi WjContent ‘Z’ Content ‘Q’ Leader A Leader A Wi Wi Scenario: Update on Content ‘X’ by Resource 2 20
  56. 56. Content Update in Group Resource 1 Member Table Content ’X’ Content ‘Y’ Leader A Leader A Free Lock Resource 2 Member Table Content ’X’ Content ‘Q’ Leader A Leader A Free Free Leader A Leader Table Content ’X’ Content ‘Y’ Free Tx Ty Content ‘Q’ Free Lock Tq Resource 1 Resource 1 Resource 2Content ‘Z’ Leader B Free Data Store Data Store Table Content ’X’ Content ‘Y’ Leader A Leader B Wi WjContent ‘Z’ Content ‘Q’ Leader A Leader A Wi Wi Scenario: Update on Content ‘X’ by Resource 2 Resource 2: Retrieve updated Content ‘X’ 20
  57. 57. Content Update in Group Resource 1 Member Table Content ’X’ Content ‘Y’ Leader A Leader A Free Lock Resource 2 Member Table Content ’X’ Content ‘Q’ Leader A Leader A Free Free Leader A Leader Table Content ’X’ Content ‘Y’ Free Tx Ty Content ‘Q’ Free Lock Tq Resource 1 Resource 1 Resource 2Content ‘Z’ Leader B Free Data Store Data Store Table Content ’X’ Content ‘Y’ Leader A Leader B Wi WjContent ‘Z’ Content ‘Q’ Leader A Leader A Wi Wi Scenario: Update on Content ‘X’ by Resource 2 Resource 2: Retrieve updated Content ‘X’ 20
  58. 58. Content Update in Group Resource 1 Member Table Content ’X’ Content ‘Y’ Leader A Leader A Free Lock Resource 2 Member Table Content ’X’ Content ‘Q’ Leader A Leader A Free Leader A Leader Table Content ’X’ Content ‘Y’ Free Tx Ty Content ‘Q’ Free Lock Tq Resource 1 Resource 1 Resource 2Content ‘Z’ Leader B Free Data Store Data Store Table Content ’X’ Content ‘Y’ Leader A Leader B Wi WjContent ‘Z’ Content ‘Q’ Leader A Leader A Wi Wi Scenario: Update on Content ‘X’ by Resource 2 Resource 2: Retrieve updated Content ‘X’ Lock 20
  59. 59. Content Update in Group Resource 1 Member Table Content ’X’ Content ‘Y’ Leader A Leader A Free Lock Resource 2 Member Table Content ’X’ Content ‘Q’ Leader A Leader A Free Leader A Leader Table Content ’X’ Content ‘Y’ Free Tx Ty Content ‘Q’ Free Lock Tq Resource 1 Resource 1 Resource 2Content ‘Z’ Leader B Free Data Store Data Store Table Content ’X’ Content ‘Y’ Leader A Leader B Wi WjContent ‘Z’ Content ‘Q’ Leader A Leader A Wi Wi Scenario: Update on Content ‘X’ by Resource 2 Resource 2: Retrieve updated Content ‘X’ Lock: Content ‘X’ Lock 20
  60. 60. Content Update in Group Resource 1 Member Table Content ’X’ Content ‘Y’ Leader A Leader A Free Lock Resource 2 Member Table Content ’X’ Content ‘Q’ Leader A Leader A Free Leader A Leader Table Content ’X’ Content ‘Y’ Free Tx Ty Content ‘Q’ Free Lock Tq Resource 1 Resource 1 Resource 2Content ‘Z’ Leader B Free Data Store Data Store Table Content ’X’ Content ‘Y’ Leader A Leader B Wi WjContent ‘Z’ Content ‘Q’ Leader A Leader A Wi Wi Scenario: Update on Content ‘X’ by Resource 2 Resource 2: Retrieve updated Content ‘X’ Lock: Content ‘X’ Lock 20
  61. 61. Content Update in Group Resource 1 Member Table Content ’X’ Content ‘Y’ Leader A Leader A Free Lock Resource 2 Member Table Content ’X’ Content ‘Q’ Leader A Leader A Free Leader A Leader Table Content ’X’ Content ‘Y’ Tx Ty Content ‘Q’ Free Lock Tq Resource 1 Resource 2Content ‘Z’ Leader B Free Data Store Data Store Table Content ’X’ Content ‘Y’ Leader A Leader B Wi WjContent ‘Z’ Content ‘Q’ Leader A Leader A Wi Wi Scenario: Update on Content ‘X’ by Resource 2 Resource 2: Retrieve updated Content ‘X’ Lock: Content ‘X’ Lock Lock 20 Resource 2
  62. 62. Content Update in Group Resource 1 Member Table Content ’X’ Content ‘Y’ Leader A Leader A Free Lock Resource 2 Member Table Content ’X’ Content ‘Q’ Leader A Leader A Free Leader A Leader Table Content ’X’ Content ‘Y’ Tx Ty Content ‘Q’ Free Lock Tq Resource 1 Resource 2Content ‘Z’ Leader B Free Data Store Data Store Table Content ’X’ Content ‘Y’ Leader A Leader B Wi WjContent ‘Z’ Content ‘Q’ Leader A Leader A Wi Wi Scenario: Update on Content ‘X’ by Resource 2 Resource 2: Retrieve updated Content ‘X’ Lock: Content ‘X’ Processing Lock Lock 20 Resource 2
  63. 63. Content Update in Group Resource 1 Member Table Content ’X’ Content ‘Y’ Leader A Leader A Free Lock Resource 2 Member Table Content ’X’ Content ‘Q’ Leader A Leader A Free Leader A Leader Table Content ’X’ Content ‘Y’ Tx Ty Content ‘Q’ Free Lock Tq Resource 1 Resource 2Content ‘Z’ Leader B Free Data Store Data Store Table Content ’X’ Content ‘Y’ Leader A Leader B Wi WjContent ‘Z’ Content ‘Q’ Leader A Leader A Wi Wi Scenario: Update on Content ‘X’ by Resource 2 Resource 2: Retrieve updated Content ‘X’ Lock: Content ‘X’ Processing Free Lock 20 Resource 2
  64. 64. Content Update in Group Resource 1 Member Table Content ’X’ Content ‘Y’ Leader A Leader A Free Lock Resource 2 Member Table Content ’X’ Content ‘Q’ Leader A Leader A Free Leader A Leader Table Content ’X’ Content ‘Y’ Tx Ty Content ‘Q’ Free Lock Tq Resource 1 Resource 2Content ‘Z’ Leader B Free Data Store Data Store Table Content ’X’ Content ‘Y’ Leader A Leader B Wi WjContent ‘Z’ Content ‘Q’ Leader A Leader A Wi Wi Scenario: Update on Content ‘X’ by Resource 2 Resource 2: Retrieve updated Content ‘X’ Lock: Content ‘X’ Processing Free: Content ‘X’ Lock Lock 20 Resource 2
  65. 65. Content Update in Group Resource 1 Member Table Content ’X’ Content ‘Y’ Leader A Leader A Free Lock Resource 2 Member Table Content ’X’ Content ‘Q’ Leader A Leader A Free Leader A Leader Table Content ’X’ Content ‘Y’ Tx1 Ty Content ‘Q’ Free Lock Tq Resource 1 Resource 2Content ‘Z’ Leader B Free Data Store Data Store Table Content ’X’ Content ‘Y’ Leader A Leader B Wi WjContent ‘Z’ Content ‘Q’ Leader A Leader A Wi Wi Scenario: Update on Content ‘X’ by Resource 2 Resource 2: Retrieve updated Content ‘X’ Lock: Content ‘X’ Processing Free: Content ‘X’ Lock Free 20 Resource 2
  66. 66. Content Update in Group Resource 1 Member Table Content ’X’ Content ‘Y’ Leader A Leader A Free Lock Resource 2 Member Table Content ’X’ Content ‘Q’ Leader A Leader A Free Leader A Leader Table Content ’X’ Content ‘Y’ Tx1 Ty Content ‘Q’ Free Lock Tq Resource 1 Resource 2Content ‘Z’ Leader B Free Data Store Data Store Table Content ’X’ Content ‘Y’ Leader A Leader B Wi WjContent ‘Z’ Content ‘Q’ Leader A Leader A Wi Wi Scenario: Update on Content ‘X’ by Resource 2 Resource 2: Retrieve updated Content ‘X’ Lock: Content ‘X’ Processing Free: Content ‘X’ Content ‘X’ Lock Free 20 Resource 2
  67. 67. Requirements 1. Reduce unnecessary network traffic Ø Communication model encourages data sharing within a group and removes a single point-of-failure 2. Ensure consistent computation by avoiding stale data copies Ø Model ensures causal coherence on shared data 21
  68. 68. Evaluation
  69. 69. Evaluation Evaluated on Icarus simulator* Parameters: 1. 320 Edge and Fog nodes + Data Store 2. Fog node acts as group leader 3. 96*104 content items divided in 32 workloads 4. Resource cache size capacity is 10% of overall content size *Lorenzo Saino, Ioannis Psaras, and George Pavlou. "ICARUS: a caching simulator for information centric networking (ICN)." Proceedings of the 7th International ICST conference on Simulation Tools and Techniques. ICST (Institute for Computer Sciences, Social-Informatics and Telecommunications Engineering), 2014. 23
  70. 70. Evaluation Q1. Does resource grouping offer any benefits to edge clouds? Q2. If yes, what is the appropriate size of a group? 24
  71. 71. Q1. Does resource grouping offer any benefits to edge clouds? a) Effect on cache hit rate 0.02 0.04 0.06 0.08 0.1 Cache Size 0 0.2 0.4 0.6 0.8 1 CacheHitRate 4-group 4-no_group 32-group 32-no_group 25
  72. 72. Q1. Does resource grouping offer any benefits to edge clouds? a) Effect on cache hit rate 0.02 0.04 0.06 0.08 0.1 Cache Size 0 0.2 0.4 0.6 0.8 1 CacheHitRate 4-group 4-no_group 32-group 32-no_group ≈2 times increase in hit rate 25
  73. 73. Q1. Does resource grouping offer any benefits to edge clouds? b) Effect on latency 0.02 0.04 0.06 0.08 0.1 Cache Size 20 30 40 50 60 70 80 Latency(ms) 4-group 4-no_group 32-group 32-no_group 26
  74. 74. Q1. Does resource grouping offer any benefits to edge clouds? b) Effect on latency 0.02 0.04 0.06 0.08 0.1 Cache Size 20 30 40 50 60 70 80 Latency(ms) 4-group 4-no_group 32-group 32-no_group 45% decrease in latency 26
  75. 75. Q2. If yes, what is the appropriate size of a group? 0 25 50 75 100 125 150 Number of Groups 0.2 0.4 0.6 0.8 1 CacheHitRate 4 workloads 8 workloads 16 workloads 32 workloads 0 25 50 75 100 125 150 Number of Groups 20 30 40 50 Latency(ms) 4 workloads 8 workloads 16 workloads 32 workloads Maximum gains are achieved when number of cache groups = number of workloads 27
  76. 76. Conclusion 1. Edge resource grouping strategy manages content in Edge caches 2. Strategy classifies content based on resource’s deployed workloads and cached content 3. The 3-step iterative algorithm maps future deployments on resources with required data locally cached 4. Our evaluations via simulation show i. Direct correlation between grouping and increased system performance ii. Number of cache groups and number of assigned workloads 28
  77. 77. Thank You! Questions? nitinder.mohan@helsinki.fi CleanSky - EU FP7 Marie Curie Initial Training Network
  78. 78. Backup Slides
  79. 79. Industry 4.0 on Edge Industry 4.0 proposes automation in manufacturing 1. Robots such as Bosch APAS can automate tasks and work along side humans while ensuring safety 2. IoT sensor data is used in augmented reality for collaborative support and manufacturing Requirement: Time-critical and fast data processing
  80. 80. Industry 4.0 on Edge Industry 4.0 proposes automation in manufacturing 1. Robots such as Bosch APAS can automate tasks and work along side humans while ensuring safety 2. IoT sensor data is used in augmented reality for collaborative support and manufacturing Requirement: Time-critical and fast data processing Solution: Implement industrial Edge clouds Network Datacenter Edge Servers
  81. 81. Grouping Classifier 1. Location: location of place while constructing AR and 3D models 2. Relevance: laptop and cellphone manufacturing tasks as casing 3. Time: sensor data generation and ‘freshness’ time 4. Warning signals: broadcast of information-only or safety-related signals
  82. 82. Q1. Does resource grouping offer any benefits to edge clouds? c) Effect of cache size 0.02 0.04 0.06 0.08 0.1 Cache Size 20 30 40 50 60 70 80 Latency(ms) 4-group 4-no_group 32-group 32-no_group 0.02 0.04 0.06 0.08 0.1 Cache Size 0 0.2 0.4 0.6 0.8 1 CacheHitRate 4-group 4-no_group 32-group 32-no_group Gains decrease as we increase cache size! 1. Grouping works best when cache sizes are limited and cannot store all content 2. With larger caches, resources can locally store all content!
  83. 83. Q1. Does resource grouping offer any benefits to edge clouds? d) Effect of number of workloads 0.02 0.04 0.06 0.08 0.1 Cache Size 20 30 40 50 60 70 80 Latency(ms) 4-group 4-no_group 32-group 32-no_group 0.02 0.04 0.06 0.08 0.1 Cache Size 0 0.2 0.4 0.6 0.8 1 CacheHitRate 4-group 4-no_group 32-group 32-no_group Gains decrease on increasing number of workloads! Ø More workloads ≈ more unique content requests which cannot be satisfied by local caches Workloads is a uniform distribution of similar content requests

×