Balanced-DRL: A DQN-Based Job Allocation Algorithm in BaaS
Abstract
:1. Introduction
- We analyzed the execution and allocation processes of BaaS jobs in detail and proposed a set of job scale characteristics that can benefit our job allocation approach and other BaaS-related optimization approaches in the future.
- We propose a novel deep reinforcement learning (DRL)-based algorithm, Balanced-DRL, to produce an optimized job allocation strategy in BaaS. We carefully designed the action space, state space, and reward function required for DRL.
- We conducted experiments to evaluate the performance of Balanced-DRL compared with other commonly-used allocation strategies, including random allocation, round-robin allocation, and minimum resource allocation. The results show that Balanced-DRL can maximize job throughput and minimize job delay, especially under various load scenarios.
2. Related Works
2.1. Job Allocation Algorithms for Traditional Data Centers
2.2. Optimization Solutions for Blockchain
2.3. Research Related to BaaS Platform
2.4. Brief Summary
3. Allocation Model
3.1. BaaS Job Analysis
- 1.
- A client submits a request using the BaaS service. The service application constructs a query proposal and sends it to a peer node in the corresponding channel.
- 2.
- Upon receiving the proposal, a local chaincode is called by the peer node to query local account data in the ledger. This step includes proposers’ identity verification, proposal validation, query simulation, and generation of a reading set. Eventually, the query result is returned to the application.
- 3.
- Upon receiving the query result, the service application returns it to the client.
- A client initiates a transaction job by sending a transaction proposal to an endorsement node P using the BaaS service. The endorsement strategy in the organization of the channel determines the endorsement node.
- Upon receiving the proposal, endorsement node P verifies the proposal’s legitimacy and determines the chaincode to be called. It then simulates the execution of the chaincode function, which includes reading and writing to the ledger, generating simulated transaction results, and puts the results into a read–write set. P signs the results to indicate the endorsement by the organization and sends them back to the application.
- After collecting the results that meet the endorsement strategy, the application packages the endorsement results together with the proposal into endorsement transactions and sends them to a sorting node S.
- Sorting node S collects endorsement transactions from each client in the channel. It sorts and packages multiple transactions into blocks and distributes them to all submission nodes under each organization in the channel.
- Submission nodes and verify the block and each endorsement transaction in the block, and they update the local ledger data. At the same time, the application notifies the client on completing the job.
3.2. BaaS Job Allocation Model
- When a chaincode is idle, it does not consume any resources.
- When a chaincode is running, the total resources required from the beginning to the end remain unchanged.
- The BaaS service dynamically creates more chaincode containers for a higher job workload since a chaincode can only process one job per time.
- The total number of chaincode containers created on one peer node is limited to avoid affecting the performance and isolation of containers.
- The resource types considered are CPU, memory, and disk I/O. We assume that the disk storage and network bandwidth are unlimited.
- A peer node of node is simplified as to indicate an arbitrary peer node.
- A container of peer node is simplified as to indicate an arbitrary container.
- 1.
- The peer node is equipped with a chaincode.
- 2.
- The peer node currently has at least one available chaincode.
- 3.
- If it is a transaction job, the node complies with the endorsement policy corresponding to the chaincode.
3.3. Optimization Goal
3.4. Brief Summary
4. Balanced-DRL
4.1. Workload Scenario Analysis
- 1.
- Nodes with low utilization and a high number of jobs.
- 2.
- Nodes with low utilization and a low number of jobs.
- 3.
- Nodes with high utilization and a high number of jobs.
- 4.
- Nodes with high utilization and a low number of jobs.
4.2. Allocation in Balanced-DRL
- If two of the nodes are low-load nodes, then the MinRes allocation strategy allocates the job to the node with the lowest resource utilization.
- If all three nodes are high-load nodes, but two of them have low job counts, then the HDQN allocation strategy allocates the task to the low job count nodes to achieve the highest overall resource utilization.
- If all three nodes have a high resource load and a high job count, then the HDQN allocation strategy is used to allocate among the three nodes to achieve the highest overall resource utilization.
4.3. Brief Summary
5. Allocation Based on DQN
5.1. Algorithm Design
- presents the scale of j obtained using code static analysis as discussed in Section 3.1. includes the eight items shown in Table 1.
- shows the remaining resources of peer node p. In our model, it is obtained as . If a peer node is not a validated node according to the endorsement strategy, then we set the corresponding to 0 to unify the length of the state.
- indicates the total resources of a valid peer node. To avoid heterogeneous clusters, the resources are indicated by their absolute amount rather than usage rate.
- shows the total allocated job scale in peer node , which is calculated with the sum of all allocated jobs. However, do not contain and , since they are included in .
5.2. Training Process
- The training network of the original algorithm uses the convolutional neural network (CNN) to extract the input state, that is, the characteristics of a frame of picture. The training network of HDQN uses the fully connected depth neural network to process the state.
- The original algorithm uses multiple continuous picture frames and action sequences as the state, because a single frame cannot describe the continuous change. In contrast, the state used in HDQN can describe the job scale and all node resources without using sequences.
- The original algorithm divides training into multiple episodes for the fragment job in the training end state. However, HDQN involves the non-termination state and continuous job allocation, so the total step count of training termination is artificially specified.
- The original algorithm uses the -greedy strategy, while HDQN uses the Boltzmann strategy to improve the exploratory action.
5.3. Boltzmann Action Exploration Strategy
5.4. Complexity Analysis
5.5. Brief Summary
6. Experiment
6.1. Experimental Environment
6.2. Experiment Design
6.2.1. Job-Workload Experiment
6.2.2. Allocation Model Training
6.2.3. Experiments under Different Workload Scenarios
6.3. Experimental Results
6.3.1. BaaS Job-Workload Experiment
6.3.2. Allocation Model Training
6.3.3. Fixed-Low-Workload Experiment
6.3.4. Fixed-High-Workload Experiment
6.3.5. Time-Varying-Workload Experiment
7. Discussion
7.1. Experimental Results Discussion
7.2. Comparison Discussion
8. Conclusions
Author Contributions
Funding
Data Availability Statement
Conflicts of Interest
Abbreviations
Abbreviation | Full Name |
BaaS | Blockchain as a Service |
DRL | Deep reinforcement learning |
QoS | Quality of service |
VM | Virtual machine |
DQN | Deep Q-learning network |
R | Random |
RR | Round-robin |
MR | Minimum resource |
Ours | Balanced-DRL |
References
- Song, J.; Zhang, P.; Alkubati, M.; Bao, Y.; Yu, G. Research Advances on Blockchain-as-a-Service: Architectures, Applications and Challenges. Digit. Commun. Netw. 2021, 8, 455–475. [Google Scholar] [CrossRef]
- Alshurafa, S.M.; Eleyan, D.; Eleyan, A. A Survey Paper on Blockchain as a Service Platforms. Int. J. High Perform. Comput. Netw. 2021, 17, 8. [Google Scholar] [CrossRef]
- Sahal, R.; Alsamhi, S.H.; Brown, K.N.; O’Shea, D.; McCarthy, C.; Guizani, M. Blockchain-Empowered Digital Twins Collaboration: Smart Transportation Use Case. Machines 2021, 9, 193. [Google Scholar] [CrossRef]
- Chuang, I.H.; Chiang, S.H.; Chao, W.C.; Huang, S.H.; Zeng, B.L.; Kuo, Y.H. A Hierarchical Blockchain-based Data Service Platform in MEC Environments. In Proceedings of the 2nd International Conference on Blockchain Technology, Hilo, HI, USA, 12–14 March 2020; pp. 95–99. [Google Scholar] [CrossRef]
- Lu, Q.; Xu, X.; Liu, Y.; Weber, I.; Zhu, L.; Zhang, W. uBaaS: A Unified Blockchain as a Service Platform. Future Gener. Comput. Syst. 2019, 101, 564–575. [Google Scholar] [CrossRef] [Green Version]
- Kuzlu, M.; Pipattanasomporn, M.; Gurses, L.; Rahman, S. Performance Analysis of a Hyperledger Fabric Blockchain Framework: Throughput, Latency and Scalability. In Proceedings of the 2019 IEEE International Conference on Blockchain, Atlanta, GA, USA, 14–17 July 2019; pp. 536–540. [Google Scholar] [CrossRef]
- Hassan, W.; Chou, T.S.; Tamer, O.; Pickard, J.; Appiah-Kubi, P.; Pagliari, L. Cloud Computing Survey on Services, Enhancements and Challenges in the Era of Machine Learning and Data Science. Int. J. Inform. Commun. Technol. 2020, 9, 117. [Google Scholar] [CrossRef]
- Hasan, M.; Balamurugan, E.; Almamun, M.; Sangeetha, K. An Intelligent Machine Learning and Self Adaptive Resource Allocation Framework for Cloud Computing Environment. EAI Endorsed Trans. Cloud Syst. 2020, 6, 165501. [Google Scholar] [CrossRef]
- Li, C.; Tang, X. On Fault-Tolerant Bin Packing for Online Resource Allocation. IEEE Trans. Parallel Distrib. Syst. 2020, 31, 817–829. [Google Scholar] [CrossRef]
- Gupta, N.; Gupta, K.; Gupta, D.; Juneja, S.; Turabieh, H.; Dhiman, G.; Kautish, S.; Viriyasitavat, W. Enhanced Virtualization-Based Dynamic Bin-Packing Optimized Energy Management Solution for Heterogeneous Clouds. Math. Probl. Eng. 2022, 2022, 1–11. [Google Scholar] [CrossRef]
- Thakkar, P.; Nathan, S.; Viswanathan, B. Performance Benchmarking and Optimizing Hyperledger Fabric Blockchain Platform. In Proceedings of the 2018 IEEE 26th International Symposium on Modeling, Analysis, and Simulation of Computer and Telecommunication Systems (MASCOTS), Milwaukee, WI, USA, 25–28 September 2018; pp. 264–276. [Google Scholar] [CrossRef] [Green Version]
- Liu, M.; Tang, X. Dynamic Bin Packing with Predictions. Proc. Acm Meas. Anal. Comput. Syst. 2022, 6, 1–24. [Google Scholar] [CrossRef]
- Kumar, A.; Kumar, R.; Sharma, A. Energy Aware Resource Allocation for Clouds Using Two Level Ant Colony Optimization. Comput. Inform. 2018, 37, 76–108. [Google Scholar] [CrossRef]
- Li, L.; Lin, Q.; Wang, J.; Chen, J.; Ming, Z. A Novel Multiobjective Particle Swarm Optimization Algorithm with Dynamic Resource Allocation. In Proceedings of the 2019 IEEE Congress on Evolutionary Computation, Wellington, New Zealand, 10–13 June 2019; pp. 904–911. [Google Scholar] [CrossRef]
- Shiekh, S.; Shahid, M.; Sambare, M.; Haidri, R.A.; Yadav, D.K. A Load-Balanced Hybrid Heuristic for Allocation of Batch of Tasks in Cloud Computing Environment. Int. J. Pervasive Comput. Commun. 2022; ahead-of-print. [Google Scholar] [CrossRef]
- Infantia Henry, N.; Anbuananth, C.; Kalarani, S. Hybrid Meta-heuristic Algorithm for Optimal Virtual Machine Placement and Migration in Cloud Computing. Concurr. Comput. Pract. Exp. 2022, 34, e7353. [Google Scholar] [CrossRef]
- Ghobaei-Arani, M.; Shahidinejad, A. A Cost-Efficient IoT Service Placement Approach Using Whale Optimization Algorithm in Fog Computing Environment. Expert Syst. Appl. 2022, 200, 117012. [Google Scholar] [CrossRef]
- Zhang, J.; Xie, N.; Zhang, X.; Yue, K.; Li, W. Machine Learning Based Resource Allocation of Cloud Computing in Auction. Comput. Mater. Contin. 2018, 56, 123–135. [Google Scholar]
- Bal, P.K.; Mohapatra, S.K.; Das, T.K.; Srinivasan, K.; Hu, Y.C. A Joint Resource Allocation, Security with Efficient Task Scheduling in Cloud Computing Using Hybrid Machine Learning Techniques. Sensors 2022, 22, 1242. [Google Scholar] [CrossRef]
- Talwani, S.; Alhazmi, K.; Singla, J.; Alyamani, H.J.; Bashir, A.K. Allocation and Migration of Virtual Machines Using Machine Learning. Comput. Mater. Contin. 2022, 70, 3349–3364. [Google Scholar] [CrossRef]
- Yi, D.; Zhou, X.; Wen, Y.; Tan, R. Efficient Compute-Intensive Job Allocation in Data Centers via Deep Reinforcement Learning. IEEE Trans. Parallel Distrib. Syst. 2020, 31, 1474–1485. [Google Scholar] [CrossRef]
- Yan, J.; Huang, Y.; Gupta, A.; Gupta, A.; Liu, C.; Li, J.; Cheng, L. Energy-Aware Systems for Real-Time Job Scheduling in Cloud Data Centers: A Deep Reinforcement Learning Approach. Comput. Electr. Eng. 2022, 99, 107688. [Google Scholar] [CrossRef]
- Jayanetti, A.; Halgamuge, S.; Buyya, R. Deep Reinforcement Learning for Energy and Time Optimized Scheduling of Precedence-Constrained Tasks in Edge–Cloud Computing Environments. Future Gener. Comput. Syst. 2022, 137, 14–30. [Google Scholar] [CrossRef]
- Seid, A.M.; Erbad, A.; Abishu, H.N.; Albaseer, A.; Abdallah, M.; Guizani, M. Blockchain-Empowered Resource Allocation in Multi-UAV-Enabled 5G-RAN: A Multi-agent Deep Reinforcement Learning Approach. IEEE Trans. Cogn. Commun. Netw. 2023. [Google Scholar] [CrossRef]
- Wang, D.; Li, B.; Song, B.; Liu, Y.; Muhammad, K.; Zhou, X. Dual-Driven Resource Management for Sustainable Computing in the Blockchain-Supported Digital Twin IoT. IEEE Internet Things J. 2023, 10, 6549–6560. [Google Scholar] [CrossRef]
- Gorenflo, C.; Lee, S.; Golab, L.; Keshav, S. FastFabric: Scaling Hyperledger Fabric to 20,000 Transactions per Second. In Proceedings of the 2019 IEEE International Conference on Blockchain and Cryptocurrency, Atlanta, GA, USA, 14–17 July 2019; Volume 30, pp. 455–463. [Google Scholar] [CrossRef] [Green Version]
- Javaid, H.; Hu, C.; Brebner, G. Optimizing Validation Phase of Hyperledger Fabric. In Proceedings of the 2019 International Symposium on Modeling, Analysis, and Simulation of Computer and Telecommunication Systems, Rennes, France, 21–25 October 2019; pp. 269–275. [Google Scholar] [CrossRef] [Green Version]
- Kwon, M.; Yu, H. Performance Improvement of Ordering and Endorsement Phase in Hyperledger Fabric. In Proceedings of the 2019 Sixth International Conference on Internet of Things: Systems, Management and Security (IOTSMS), Granada, Spain, 22–25 October 2019; pp. 428–432. [Google Scholar] [CrossRef]
- Hang, L.; Kim, D.H. Optimal Blockchain Network Construction Methodology Based on Analysis of Configurable Components for Enhancing Hyperledger Fabric Performance. Blockchain Res. Appl. 2021, 2, 100009. [Google Scholar] [CrossRef]
- Nakaike, T.; Zhang, Q.; Ueda, Y.; Inagaki, T.; Ohara, M. Hyperledger Fabric Performance Characterization and Optimization Using GoLevelDB Benchmark. In Proceedings of the 2020 IEEE International Conference on Blockchain and Cryptocurrency, Toronto, ON, Canada, 2–6 May 2020; pp. 1–9. [Google Scholar] [CrossRef]
- Zhang, S.; Hua, S.; Pi, B.; Sun, J.; Yamashita, K.; Nomura, Y. Performance Diagnosis and Optimization for Hyperledger Fabric. In Proceedings of the 2020 2nd Conference on Blockchain Research & Applications for Innovative Networks and Services (BRAINS), Paris, France, 28–30 September 2020; pp. 210–211. [Google Scholar] [CrossRef]
- Santiago, C.; Lee, C. Accelerating Message Propagation in Blockchain Networks. In Proceedings of the 2020 International Conference on Information and Communication Technology Convergence (ICTC), Jeju, Republic of Korea, 21–23 October 2020; pp. 157–160. [Google Scholar] [CrossRef]
- Aoki, Y.; Shudo, K. Proximity Neighbor Selection in Blockchain Networks. In Proceedings of the 2019 IEEE International Conference on Blockchain (Blockchain), Atlanta, GA, USA, 14–17 July 2019; pp. 52–58. [Google Scholar] [CrossRef] [Green Version]
- Li, M.; Qin, Y.; Liu, B.; Chu, X. Enhancing the Efficiency and Scalability of Blockchain through Probabilistic Verification and Clustering. Inf. Process. Manag. 2021, 58, 102650. [Google Scholar] [CrossRef]
- Locher, T. Fast Byzantine Agreement for Permissioned Distributed Ledgers. In Proceedings of the 32nd ACM Symposium on Parallelism in Algorithms and Architectures, Virtual Event USA, 15–17 July 2020; pp. 371–382. [Google Scholar] [CrossRef]
- Geng, T.; Du, Y. Applying the Blockchain-Based Deep Reinforcement Consensus Algorithm to the Intelligent Manufacturing Model under Internet of Things. J. Supercomput. 2022, 78, 15882–15904. [Google Scholar] [CrossRef]
- Cao, N.; Jiang, D.; Liu, Y.; Zhou, Y.; Du, H.; Qiao, X.; Xia, Y.; Zhu, D.; Yu, F.; Bi, W. Revisit Raft Consistency Protocol on Private Blockchain System in High Network Latency. In Advances in Artificial Intelligence and Security; Communications in Computer and Information Science; Sun, X., Zhang, X., Xia, Z., Bertino, E., Eds.; Springer: Cham, Switzerland, 2021; pp. 571–579. [Google Scholar] [CrossRef]
- Jalalzai, M.M.; Busch, C.; Richard, G.G. Consistent BFT Performance for Blockchains. In Proceedings of the 2019 49th Annual IEEE/IFIP International Conference on Dependable Systems and Networks–Supplemental Volume (DSN-S), Portland, OR, USA, 24–27 June 2019; pp. 17–18. [Google Scholar] [CrossRef]
- Zhang, L.; Wang, T.; Liew, S.C. Speeding up Block Propagation in Bitcoin Network: Uncoded and Coded Designs. Comput. Netw. 2022, 206, 108791. [Google Scholar] [CrossRef]
- Zheng, W.; Zheng, Z.; Chen, X.; Dai, K.; Li, P.; Chen, R. NutBaaS: A Blockchain-as-a-Service Platform. IEEE Access Pract. Innov. Open Solut. 2019, 7, 134422–134433. [Google Scholar] [CrossRef]
- Ma, Z.; Zhao, W.; Luo, S.; Wang, L. TrustedBaaS: Blockchain-Enabled Distributed and Higher-Level Trusted Platform. Comput. Netw. 2020, 183, 107600. [Google Scholar] [CrossRef]
- Weerasinghe, N.; Hewa, T.; Liyanage, M.; Kanhere, S.S.; Ylianttila, M. A Novel Blockchain-as-a-Service (BaaS) Platform for Local 5G Operators. IEEE Open J. Commun. Soc. 2021, 2, 575–601. [Google Scholar] [CrossRef]
- Onik, M.M.H.; Miraz, M.H. Performance Analytical Comparison of Blockchain-as-a-Service (BaaS) Platforms. In Emerging Technologies in Computing; Miraz, M.H., Excell, P.S., Ware, A., Soomro, S., Ali, M., Eds.; Lecture Notes of the Institute for Computer Sciences, Social Informatics and Telecommunications Engineering; Springer: Cham, Switzerland, 2019; Volume 285, pp. 3–18. [Google Scholar] [CrossRef] [Green Version]
- Jiang, S.; Cao, J.; Zhu, J.; Cao, Y. PolyChain: A Generic Blockchain as a Service Platform. In Blockchain and Trustworthy Systems; Communications in Computer and Information Science; Dai, H.N., Liu, X., Luo, D.X., Xiao, J., Chen, X., Eds.; Springer: Singapore, 2021; pp. 459–472. [Google Scholar] [CrossRef]
- Li, D.; Deng, L.; Cai, Z.; Souri, A. Blockchain as a Service Models in the Internet of Things Management: Systematic Review. Trans. Emerg. Telecommun. Technol. 2022, 33, e4139. [Google Scholar] [CrossRef]
- Rajendra, Y.; Subramanian, V.; Shukla, S.K. BlockPaaS: Blockchain Platform as a Service. In Proceedings of the 2023 15th International Conference on COMmunication Systems & NETworkS (COMSNETS), Bangalore, India, 3–8 January 2023; pp. 204–206. [Google Scholar] [CrossRef]
- Zheng, Q.; Wang, L.; He, J.; Li, T. KNN-Based Consensus Algorithm for Better Service Level Agreement in Blockchain as a Service (BaaS) Systems. Electronics 2023, 12, 1429. [Google Scholar] [CrossRef]
- Cai, Z.; Yang, G.; Xu, S.; Zang, C.; Chen, J.; Hang, P.; Yang, B. RBaaS: A Robust Blockchain as a Service Paradigm in Cloud-Edge Collaborative Environment. IEEE Access 2022, 10, 35437–35444. [Google Scholar] [CrossRef]
- Zhang, Q.; Liu, L.; Pu, C.; Dou, Q.; Wu, L.; Zhou, W. A Comparative Study of Containers and Virtual Machines in Big Data Environment. In Proceedings of the IEEE International Conference on Cloud Computing, San Francisco, CA, USA, 2–7 July 2018; pp. 178–185. [Google Scholar] [CrossRef] [Green Version]
- Hafiz, A.M. A Survey of Deep Q-Networks Used for Reinforcement Learning: State of the Art. In Intelligent Communication Technologies and Virtual Mobile Networks; Lecture Notes on Data Engineering and Communications Technologies; Rajakumar, G., Du, K.L., Vuppalapati, C., Beligiannis, G.N., Eds.; Springer: Singapore, 2023; pp. 393–402. [Google Scholar] [CrossRef]
- Bui, Y.H.; Hussain, A.; Kim, H.M. Double Deep Q-Learning-Based Distributed Operation of Battery Energy Storage System Considering Uncertainties. IEEE Trans. Smart Grid 2020, 11, 457–469. [Google Scholar] [CrossRef]
Item | Unit | Description | Target Dataset |
---|---|---|---|
Chain Size | Block | Size/height of the currently queried blockchain | - |
Query Block | Block | Number of times to query historical blocks | Blockchain and block index |
Query Transaction | Transaction | Query historical transaction times | Blockchain and block index |
Query State | Number of key | Number of query key history writes | Blockchain and history index |
World Size | Megabytes | The size of the current world state | - |
Get State | Key value pair | Number of times to query world state | World State and Read Set |
Put State | Key value pair | Number of times to update world state | World State and Write Set |
Del State | Number of Key | Number of times to delete world state | World State and Write Set |
Symbol | Description |
---|---|
An arbitrary peer node | |
An arbitrary container | |
The server set of BaaS | |
A type of resource. It might be CPU, memory, or hard disk. | |
Total resource amount of on | |
Used resource of on | |
Resource utilization rate of on at time t | |
Resource utilization rate of on at time t | |
The average utilization of all peer nodes | |
Resource balancing factor of at time t | |
The average jobs of all peer node | |
Job balancing factor | |
Average number of completed jobs per second | |
LA | Average completion time of jobs |
LS | Average job latency |
LR | Average proportion of job latency |
Class | Item | Value | Description |
---|---|---|---|
Platform configuration | Physical machine | 50 | Total number of physical machines in the cluster |
Resource of physical machine | Resource configuration of the physical machine | ||
Virtual machine | 50 | Total number of virtual machines in the cluster | |
Resource of virtual machine | Resource configuration of the virtual machine | ||
Maximum containers | 15 | Maximum number of containers in a virtual machine | |
Hyperledger | Organizations | 5 | Total number of organizations |
Channels | 1 | Total number of channels | |
Peers | 50 | Total number of peer nodes | |
Chaincodes | 20 | Total number of chaincodes | |
Job workload | 0.5–4.0 | Size of job workload under Poisson distribution. | |
Jobs | 30,000 | Total number of jobs | |
Tick | 0.01 s | Interval for the simulation platform to process jobs | |
Threshold | Resource-load threshold | Threshold of resource load | |
Job-load threshold | Threshold of job load |
Symbol | Value | Description |
---|---|---|
Learning rate for updating value | ||
Reward discount | ||
The weight of each resource in the reward | ||
Batch size | 32 | Size of mini-batch during training |
Learning rate | Learning rate for updating network | |
The probability of randomly selecting actions under -greedy | ||
R | 1000 | The capacity of the experience replay buffer |
C | 50 | The interval steps for updating the target network |
Class | Item | Value | Description |
---|---|---|---|
Platform configuration | Physical machine | 60 | Total number of physical machines in the cluster |
Resource of physical machine | Resource configuration of the physical machine | ||
Virtual machine | 120 | Total number of virtual machines in the cluster | |
Resource of virtual machine | Resource configuration of the virtual machine | ||
Maximum containers | 15 | Maximum number of containers in a virtual machine | |
Hyperledger | Organizations | 20 | Total number of organizations |
Channels | 5 | Total number of channels | |
Peers | 120 | Total number of peer nodes | |
Chaincodes | 20 | Total number of chaincodes | |
Job workload | Time varying | Size of job workload under Poisson distribution | |
Jobs | 111,150 | Total number of jobs | |
Tick | s | Interval for the simulation platform to process jobs | |
Threshold | Resource-load threshold | Threshold of resource load | |
Job-load threshold | Threshold of job load |
Ref. | Field | Problem Type | Approach | Objective | Performance Metric | Dataset |
---|---|---|---|---|---|---|
[10] | Cloud com- puting | O | Bin packing | Latency and energy consumption | Resource utilization Time Energy | Private |
[16] | O | Heuristic | Latency and energy consumption | Resource utilization Time Energy | Randomly generated | |
[19] | O | Machine learning | Latency and Energy consumption | Resource utilization Time Energy | Randomly generated | |
[22] | O | Reinforcement learning | Latency and energy consumption | Time Energy | Randomly generated | |
[32] | Block- chain | O | Topology optimization | Latency | Time | Simulated |
[39] | O | Data-layer optimization | Throughput | Time | Simulated | |
[37] | O | Multi-leader design | Throughput and scalability | CPU Cost Network traffic | Simulated | |
[35] | O | Consensus mechanism design | Throughput | Throughput | Simulated | |
[46] | BaaS | F | Architecture design | Scalability and usability | - | - |
[47] | CM | Machine learning | Usability | TPS | Simulated | |
[41] | F | Architecture design | Reliability | Throughput | - | |
Ours | O | Reinforcement learning | Throughput and latency | Resource utilization Time Throughput | Generated from Alibaba cluster-trace dataset |
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2023 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Guo, C.; Xu, M.; Hu, S.; Song, J. Balanced-DRL: A DQN-Based Job Allocation Algorithm in BaaS. Mathematics 2023, 11, 2638. https://doi.org/10.3390/math11122638
Guo C, Xu M, Hu S, Song J. Balanced-DRL: A DQN-Based Job Allocation Algorithm in BaaS. Mathematics. 2023; 11(12):2638. https://doi.org/10.3390/math11122638
Chicago/Turabian StyleGuo, Chaopeng, Ming Xu, Shengqiang Hu, and Jie Song. 2023. "Balanced-DRL: A DQN-Based Job Allocation Algorithm in BaaS" Mathematics 11, no. 12: 2638. https://doi.org/10.3390/math11122638