Nowadays, the trend “everything as a service” has
been creating a Big Services era due to the foundational
architecture of services c omputing. And “servicelization”
is the way of offering social networking services, big data
analytics, and Internet services [19], [20] . Thus the cloud
computing tools aforementioned can be used to improve
the scalability and e fficienc y of service recommendation
methods in t he “Big Data” environment.
3KEYWORD-AWARE SERVICE RECOMMENDATION
METHOD
Definition 1 (Keyword-Aware Service Recommendation
method, KASR). In this paper, we propose a keyword- aware
service recommendation method, named KASR. In this
method, keywords are used to indicate both of users’ preferen-
ces and the quality of candidate services. A user-based CF algo-
rithm is adopted to generate appropriate recommendations.
KASR aims at calculating a personalized rating of each candi-
date service for a user, and then presenting a personalized ser-
vice recommendation list and recommending the most
appropriate services to him/her.
Moreover, to improve the scalability and efficiency of our
recommendation method in “Big Data” environment, we
implement it in a MapReduce framework on Hadoop by
splitting the proposed algorithm into multiple MapReduce
phases. Table 1 summarizes the basic symbols and notations
used in this paper.
3.1 Keyword-Candidate List and Domain Thesaurus
In our method, two data structures, “keyword-candidate
list” and “specialized domain thesaurus”, are introduced to
help obtain users’ preferences.
Definition 2 (Keyword-candidate list). The keyword-candi-
date list is a set of keywords about users’ preferences and multi-
criteria of the candidate services, which can be denoted as
K ¼fk
1
;k
2
; ...;k
n
g;n is the number of the keywords in the
keyword-candidate list. An example of a simple keyword-candi-
date list of the hotel reservation system is described in Table 2.
Keywords in the keyword-candidate list can be a word or multi-
ple words related with the quality criteria of candidate services.
In this paper, the preferences of previous users will be
extracted from their reviews for candidate services and for-
mailized into a keyword set. Usually, since some of words
in reviews can not exactly matach the corresponding key-
words in the keyword-candidate list which characterize the
same aspects as the words. The corresponding keywords
should be extracted as well. In this paper, we assume that
specialized domain thesauruses are built to support the key-
word extraction, and different domain thesauruses are built
for different service domains.
Definition 3 (Domain thesaurus). A domain thesaurus is a ref-
erence work of the keyword-candidate list that lists words
grouped together according to the similarity of keyword mean-
ing, including related and contrasting words and antonyms
[21], [22]. An example of a simple domain thesaurus of hotel
reservation system is shown in Fig. 2. As shown in Fig. 2, the
words in the red rectangle are the keywords in the correspond-
ing keyword-candidate list, and the words in the ovals are the
related words of the keywords. Often, domain thesauruses are
updated regularly to ensure the timeliness of the words.
TABLE 1
Basic Symbols and Notations
TABLE 2
Keyword-Candidate List of Hotel Reservation System
Fig. 2. An example of a simple domain thesaurus of hotel reservation system.
MENG ET AL.: KASR: A KEYWORD-AWARE SERVICE RECOMMENDATION METHOD ON MAPREDUCE FOR BIG DATA APPLICATIONS 3223