Cloudfnf: an Ontology Structure for Functional and Non-Functional Features of Cloud Services ∗ Mustafam
Total Page:16
File Type:pdf, Size:1020Kb
Journal of Parallel and Distributed Computing 141 (2020) 143–173 Contents lists available at ScienceDirect J. Parallel Distrib. Comput. journal homepage: www.elsevier.com/locate/jpdc CloudFNF: An ontology structure for functional and non-functional features of cloud services ∗ MustafaM. Al-Sayed a, , HeshamA. Hassan b, FatmaA. Omara b a Department of Computer Science, Faculty of Computers and Information, Minia University, Egypt b Department of Computer Science, Faculty of Computers and Artificial Intelligence, Cairo University, Egypt article info a b s t r a c t Article history: Recently, cloud computing becomes one of the main orientations of many researchers and companies Received 16 January 2019 in the IT area. Therefore, a huge number of cloud services have been developed. Because of the Received in revised form 16 December 2019 diversity and heterogeneity in providing these services, it is urgently needed to develop a unified cloud Accepted 31 March 2020 ontology. Such ontology can classify these services appropriately and participate as a mapping layer Available online 15 April 2020 to present such services in a unified description format. Although many studies have been conducted Keywords: to build cloud ontologies, they have adopted the cloud service layers-based structure. On the other Cloud computing hand, the existing cloud services may involve functionalities from different layers due to the continual Cloud ontology increase in the complexity of customer demands. Unfortunately, there are no clear relations to organize Cloud taxonomy the interventions among these layers. Therefore, such services may be difficult to be classified into QoS a specific cloud service layer. Additionally, the layers-based structure of ontologies represents an Cloud service recommendation obstacle to address important issues, such as cloud service recommendation. Despite there are few cloud service functionality-based cloud ontologies, they suffer from many overlaps, lack of semantic relations, or poor granularity of concepts. Also, all the existing cloud ontologies (i.e., layers-based and functionality-based) lack important criteria, such as completeness, consistency, conciseness, clarity, preciseness, and granularity. In this paper, a comprehensive cloud ontology called CloudFNF has been proposed to overcome such drawbacks. According to the structure of the proposed ontology, cloud services are classified as functionality-based instead of layers-based. Also, non-functional features of cloud services (i.e., configuration and QoS features) are considered to enable services of the same functionalities to be ranked efficiently. Based on our previously suggested cloud ontology evaluation framework, our proposed cloud ontology has been evaluated compared to the most related cloud ontologies. The evaluation results show that the proposed CloudFNF ontology outperforms the other ontologies. ' 2020 Elsevier Inc. All rights reserved. 1. Introduction published in heterogeneous environments by different providers. These services have different features, descriptions, qualities, and Due to flexibility of cloud technology to provide and maintain non-standard conventions [2,57]. Due to these types of hetero- IT services with low costs, many customers are being motivated geneities, as well as, the explosion of cloud services, issues, such to move their business applications to cloud computing [57]. as cloud service discovery, cloud service description, standardiza- Therefore, many clouds are being released continuously and they tion, and interoperability, have been appeared. Many studies have are competing for delivering the on-demand services, exploit- been contributed overcoming these issues using semantic tech- ing the available advantages of this technology. These clouds nologies embodied in ontology. One of the main advantages of publish every day a large number of services to cover a wide using ontology is the provisioning of a common-access informa- range of the needed functionalities, such as computing, storing, tion layer [46]. Therefore, ontology can provide a mapping layer business, designing, developing, as well as, cloud management that can present cloud services in a unified format by masking functionalities [3]. their heterogeneities. In turn, this can contribute solving many On the other hand, cloud services suffer from the heterogene- other issues, such as those related to migration and composition ity problem, where services of the same functionality are being of cloud services [8,52]. There are many studies that have been conducted to con- ∗ Corresponding author. struct ontologies for describing cloud services in a unified format. E-mail addresses: [email protected] (M.M. Al-Sayed), Unfortunately, there is no a comprehensive standardized set of [email protected] (H.A. Hassan), [email protected] (F.A. Omara). features for describing cloud services [25,40]. So, each study has https://doi.org/10.1016/j.jpdc.2020.03.019 0743-7315/' 2020 Elsevier Inc. All rights reserved. 144 M.M. Al-Sayed, H.A. Hassan and F.A. Omara / Journal of Parallel and Distributed Computing 141 (2020) 143–173 uses its developed ontology to address a specific problem [25]. A and maintain their cloud services easily. This cannot be oc- general ontology for describing all cloud service layers (i.e., SaaS, curred without reconsidering the current structure to become PaaS, and PaaS, and Business as a Service), or specific and detailed functionality-based rather than layers-based. This will render ontologies for each layer are still missing [4,8]. cloud ontology easy to be extended by adding more functional The main objective of building ontologies is to provide an ex- features, keywords and properties to define features, or relations. plicit model for describing a specific domain by defining its con- Therefore, we believe that classifying cloud services based on cepts and relations among these concepts using an unambiguous their provisioned functionalities may be better than classifying language interpreted by machines and humans [19]. However, them based on their related layers. Instead of searching inside the current cloud ontologies suffer from some drawbacks, such a specific layer for services that can provide functionalities re- as overlapping concepts, redundancy, inconsistency, and miss- quested by a customer, it may be better to search for such services ing information, which were committed during the development inside functionality categories related to the required functional- phase [32]. ities. Thus, issues, such as cloud service discovery, composition, Ontology concepts may be organized in a hierarchical struc- and recommendation will be easier and more effective. ture (i.e., superclass/subclass, broader/narrower, or parent/child Although the existence of a few studies that have adopted the relations) or so-called taxonomy, which is a simplified defini- functionality-based structure of cloud ontology, they suffer from tion of ontology [27,44,48]. The existing cloud ontologies can many overlaps, lack of semantic relations, or poor granularity be considered as cloud service layers-based taxonomies. These of concepts (i.e., poor arrangement). Add to that, all the cur- taxonomies have been derived from classifications defined by rent cloud ontologies (i.e., functionality-based and layers-based) NIST [24] and IBM [10]. NIST classifies cloud services into three lack important criteria, such as completeness, consistency, con- generic layers; SaaS, PaaS, and IaaS. Besides these layers, IBM ciseness, preciseness, clarity, and balanced granularity of con- defines an additional layer called Business-Process-as-a-Services cepts [1]. (BPaaS). Although many other layers have been mentioned, they In this paper, a comprehensive cloud ontology, which is called came out from those four generic layers. For example, Data-as-a- Cloud Functional and Non-functional Features (CloudFNF), is pro- Service (DaaS), and Communication-as-a-Service (CaaS) came out posed to model the current cloud services effectively and to from IaaS layer [9]. overcome drawbacks of the current cloud ontologies. According In the same context, some functional features of cloud services to the structure of the proposed ontology, cloud services are (e.g., Hosting, Networking, Big Data, and Database) have a broad classified based on their functionalities instead of their layers into spectrum of users. Many studies and cloud vendors classify ser- granular groups. Also, non-functional features of cloud services vices related to these features into new separate layers, beside (i.e., configuration and QoS features) are considered to enable the generic ones, to simplify the discovery process as in [50], [7], services of the same functional features to be ranked efficiently. and [17]. These new layers may conflict with the generic ones Because Protégé knowledge management system [42] is a pow- and in many cases; it is difficult to classify some cloud services erful open source framework for modeling knowledge of various into a specific cloud service layer. For example, Amazon refers domains, it has been used to develop our proposed ontology. It to Web Service's Elastic MapReduce (EMR) [6] as a PaaS. But, provides a graphical and visual representation, as well as, OWL1 EMR integrates functionalities from different layers. It integrates language to build an easily navigable and meaningful representa- Hadoop, which is a PaaS service, with other IaaS services, such tion. Based on our previously