Table of Contents
Fetching ...

A Poly-Log Approximation for Transaction Scheduling in Fog-Cloud Computing and Beyond

Ramesh Adhikari, Costas Busch, Pavan Poudel

TL;DR

The paper addresses scheduling transactions that access shared objects in a fog-cloud network modeled as a graph with constant doubling dimension, under a dual-flow execution model where both objects and transactions can move to meet at intermediate nodes, with the goal of minimizing total communication cost. It introduces a hierarchical partitioning framework and the concepts of super-leaders and dedicated super-leaders, and leverages TSP tours over the selected leaders to realize efficient schedules; two scheduling paradigms are studied: global-aware (with full knowledge) and fully distributed (no global knowledge). The main results show polylogarithmic approximation guarantees: an $O(\log n \cdot \log D)$-approximation for a single object and an $O(k \log n \cdot \log D)$-approximation for up to $k$ objects under global knowledge, with corresponding fully distributed variants achieving the same asymptotic guarantees for the single-object case and extendable to multiple objects. The work advances scalable, fault-tolerant transaction scheduling for fog-cloud and IoT settings, providing principled guidelines for when to move objects, transactions, or both, and enabling practical deployment through distributed algorithms and hierarchical partitioning.

Abstract

Transaction scheduling is crucial to efficiently allocate shared resources in a conflict-free manner in distributed systems. We investigate the efficient scheduling of transactions in a network of fog-cloud computing model, where transactions and their associated shared objects can move within the network. The schedule may require objects to move to transaction nodes, or the transactions to move to the object nodes. Moreover, the schedule may determine intermediate nodes where both objects and transactions meet. Our goal is to minimize the total combined cost of the schedule. We focus on networks of constant doubling dimension, which appear frequently in practice. We consider a batch problem where an arbitrary set of nodes has transactions that need to be scheduled. First, we consider a single shared object required by all the transactions and present a scheduling algorithm that gives an $O(\log n \cdot \log D)$ approximation of the optimal schedule, where $n$ is the number of nodes and $D$ is the diameter of the network. Later, we consider transactions accessing multiple shared objects (at most $k$ objects per transaction) and provide a scheduling algorithm that gives an $O(k \cdot \log n \cdot \log D)$ approximation. We also provide a fully distributed version of the scheduling algorithms where the nodes do not need global knowledge of transactions.

A Poly-Log Approximation for Transaction Scheduling in Fog-Cloud Computing and Beyond

TL;DR

The paper addresses scheduling transactions that access shared objects in a fog-cloud network modeled as a graph with constant doubling dimension, under a dual-flow execution model where both objects and transactions can move to meet at intermediate nodes, with the goal of minimizing total communication cost. It introduces a hierarchical partitioning framework and the concepts of super-leaders and dedicated super-leaders, and leverages TSP tours over the selected leaders to realize efficient schedules; two scheduling paradigms are studied: global-aware (with full knowledge) and fully distributed (no global knowledge). The main results show polylogarithmic approximation guarantees: an -approximation for a single object and an -approximation for up to objects under global knowledge, with corresponding fully distributed variants achieving the same asymptotic guarantees for the single-object case and extendable to multiple objects. The work advances scalable, fault-tolerant transaction scheduling for fog-cloud and IoT settings, providing principled guidelines for when to move objects, transactions, or both, and enabling practical deployment through distributed algorithms and hierarchical partitioning.

Abstract

Transaction scheduling is crucial to efficiently allocate shared resources in a conflict-free manner in distributed systems. We investigate the efficient scheduling of transactions in a network of fog-cloud computing model, where transactions and their associated shared objects can move within the network. The schedule may require objects to move to transaction nodes, or the transactions to move to the object nodes. Moreover, the schedule may determine intermediate nodes where both objects and transactions meet. Our goal is to minimize the total combined cost of the schedule. We focus on networks of constant doubling dimension, which appear frequently in practice. We consider a batch problem where an arbitrary set of nodes has transactions that need to be scheduled. First, we consider a single shared object required by all the transactions and present a scheduling algorithm that gives an approximation of the optimal schedule, where is the number of nodes and is the diameter of the network. Later, we consider transactions accessing multiple shared objects (at most objects per transaction) and provide a scheduling algorithm that gives an approximation. We also provide a fully distributed version of the scheduling algorithms where the nodes do not need global knowledge of transactions.

Paper Structure

This paper contains 19 sections, 17 theorems, 3 equations, 3 figures, 1 table, 2 algorithms.

Key Result

lemma 1

For $Z > 0$ transactions, $C_{\text{direct}}(Z) \leq 4 (|Z|/\alpha + \log_2 D) C^*$.

Figures (3)

  • Figure 1: Illustration of fog-cloud computing model.
  • Figure 2: Hierarchical partitioning of graph $G$ with constant doubling dimension.
  • Figure 3: Illustration of dedicated super-leaders and the TSP tour for moving object along the dedicated super-leaders in $H$ by Algorithm \ref{['alg:offline-single-obj']}.

Theorems & Definitions (23)

  • definition 1: doubling-dimension of graph srinivasagopalan2011oblivious
  • lemma 1
  • proof
  • lemma 2
  • proof
  • lemma 3
  • lemma 4
  • proof
  • lemma 5
  • proof
  • ...and 13 more