2. the REMICS project which addresses the challenge of companies with exist-
ing legacy applications, typically representing some significant investment,
who currently cannot easily shift this software into the Cloud to benefit from
the advantages of virtualized and on-demand computing resources.
the Cloud4Trends experiment (under the VENUS-C project Cloud infrastruc-
ture) which addresses the challenge of handling data streams in the Cloud,
particularly enabling added value from detecting variations and trends in the
data which can be applied to social Web data, sensor data, etc.
Complementary with such usability and functionality aspects, the many projects in
this field working with various Cloud infrastructures and APIs recognize the critical
lack of a standard API specification for Cloud applications. Hence the effort towards
ensuring Cloud computing specification interoperability, launched within the last
Future Internet Assembly in Poznan late 2011, is another significant step towards
addressing Cloud computing’s future in the Future Internet presented in this chapter.
2. REMICS: supporting the Migration of Legacy Applications to
Interoperable Services in the Cloud
This section presents on-going research on developing a language that supports the
evolution of legacy applications to the Cloud and solving the issues of interoperability
between services in the Cloud in the context of the REMICS project. REMICS (RE-
use and Migration of legacy applications to Interoperable Cloud Services
http://remics.eu) is a research project supported by the European Commission that
started in 2010 and will run for three years. The main objective of the project is to
specify, develop and evaluate a tool-supported model driven methodology for migrat-
ing legacy applications to interoperable services in the Cloud. REMICS includes 10
partners from 7 European countries including academia, research organizations and
industrial technology providers and case providers. In our view, the Cloud computing
paradigm enhances thinking of IT companies as service providers. We therefore talk
of the ―Service-Cloud paradigm‖ that stands for the combination of Cloud computing
and Service-Oriented Architecture (SOA). Cloud adds new challenges to SOA for
example regarding developing scalable services, billing, Service Level Agreements
(SLAs), distribution, security and data management. The REMICS project has already
been presented in several publications such as [1, 2]. Figure 1 below depicts the tech-
nological approach of REMICS. Modernisation in this process combines reverse en-
gineering of legacy applications, modernizing the architecture to SOA with identify-
ing services, and forward engineering to the desired platforms, as well as solving the
service interoperability issues and validating that the new application provides the
desired services with the desired quality. The whole approach is supported by the
REMICS methodology that integrates the tools and provides guidelines to users. In
this section we specifically focus on two research activities that are related to the
challenges of Future Internet applications in the Cloud; i.e., providing a solution that
hides the complexity of deploying applications in the Cloud and interoperating with
3. third-party systems in providing services or composing services to new ones offered
to the users.
Model-Driven
Interoperability
Target
Source Architecture
Migrate for Service Cloud
Architecture
Platform
Forward MDA
Recover through
Validate, PIM4Cloud
Control
&
Supervise
Legacy Service Cloud
Artifacts Implementation
Figure 1: REMICS technological approach
2.1 A Domain-Specific Language to Support Cloud Deployment
Due to the several models and the variety of Cloud platforms with their models of
resources, deployment in the Cloud is not a trivial task. The heterogeneity of the un-
derlying Clouds, coupled to the heterogeneity of the software artefact to be deployed
onto those Clouds triggers several challenges:
Clouds implement open environments. As a consequence, we do not know where
the application will be deployed. Thus, establishing a link between for example a
web interface (the application front-end) and the back-end database requires a
particular attention.
Clouds work on a pay-as-you-go basis. Thus, one can consider to deploy both
back-end and front-end artefacts on the same virtual machine, to reduce costs
during development. Another alternative is to deploy these two artefacts on two
different virtual machines.
Clouds emphasize reproducibility. Thus, a given deployment descriptor should be
easily re-usable as-is, in the same context or in a new one.
Clouds support scalability through replication and load balancing. The front-end
can be replicated in many instances while the performance of the back-end re-
quires architectural decisions.
For example, deploying an application to the Cloud does not automatically transform
it into a scalable entity: the evolution process must carefully identify the components
that can be replicated to ensure elasticity using resources available in the Cloud. In
[3], authors expose four principles used as the foundation of a model–based approach:
(i) the choice of what models to create has a profound influence on how a problem is
attacked and how a solution is shaped; (ii) every model may be expressed at different
levels of precision; (iii) the best models are connected to reality; and (iv) no single
model is sufficient. Every nontrivial system is best approached through a small set of
4. nearly independent models. Thus, models must be dedicated to solve a dedicated
problem, anchored in the reality (principles i & iii). Secondly, several models are
needed to solve different problems, and the approaches must be complementary (prin-
ciples ii & iv). In our context, the modelling activity focuses on the definition of mod-
els able to support application modelling and its deployment. Based on these chal-
lenges, we provide a meta-model that supports the application designer while deploy-
ing his/her Cloud application in a component-based approach. The objectives of this
language are the following:
Platform–independence. This language includes Cloud–specific concepts (e.g.,
elastic capability, deployment geographic zone, failure recovery, parallelism, data
protection) independent of different Cloud platforms. The language acts as an in-
termediary pivot between legacy applications and the Clouds.
Transparent projection. Based on the modeled entities, the framework handles
the projection of the abstract description into concrete Cloud entities.
Automated deployment. The language comes with an interpreter that implements
the actual deployment, abstracting the underlying platform complexity and APIs.
To tackle these challenges, we propose a Domain-Specific Language (DSL) based on
a component-based representation of the system to be deployed. In our DSL, artefacts
involved in the software system (e.g., web server, database, virtual machine) are rei-
fied as components, that is, first-class elements providing and requiring deployment
services. Based on this representation, we provide a Scala implementation of the lan-
guage (as an internal DSL), providing static verification (i.e., typing) over the mod-
elled system to ensure its correctness. Modelled software systems are then interpreted
and the associated engine allows (i) the provisioning of virtual machines in multiple
clouds and (ii) the deployment of software artefacts on these virtual machines. The
definition of the language for deployment and its associated engine is a first step.
Based on this experience, we will consider evolution in Cloud context according to
two complementary axes: (i) the evolution of the application after its initial deploy-
ment and (ii) the evolution of the Cloud infrastructure itself. Regarding interoperabili-
ty, the scalability of the solution in a dynamic environment and performing transfor-
mations in run-time are basic challenges.
2.2 Model-Driven Service Interoperability
When a legacy system is migrated to the Cloud, it directly competes with a plethora
of other applications which might provide similar services, with different costs or
Quality of Service (QoS). There is also a need for interoperating with third party sys-
tems and their services in the Cloud ecosystem. The relationship between the mi-
grated system and the rest of the Cloud ecosystem is depicted in Figure 2. In this sim-
ple example, the migrated system is composed of three services deployed in the
Cloud: S1 to book hotels, S2 to book flights, and S3 to plan travels. S1 and S2 are
directly competing with other providers offering similar services (S1' and S2'). The
goal of the REMICS Model-Driven Service Interoperability approach is to support
strategic decisions (and ease their implementations) after the migration process:
5. Increase the market share of strategic services (such as S1). In this case, S1 is
exposed through different facades aligned with de-facto standards already in use
by (the clients of) competing service providers. The objective being to transfer
some clients from competitors to the migrated system.
Reduce the cost of non-strategic services (such as S2). In this case, S2 is exposed
as a facade that current clients can still use (hence generating indirect revenues
through advertising), but the behaviour is fully delegated to another service pro-
vided for whom this service is strategic.
Increase the market share of strategic, yet immature, services (such as S3) while
containing their development costs. In this case, S3 can be extended with com-
plementary services in order to provide added value to this service.
In the three scenarios identified above, there is a need for:
Data interoperability. The migrated system needs to interoperate with different
clients and providers that have services based on other data schemas than the leg-
acy application. Data must thus be converted before they can be exchanged.
Behavioural interoperability. If a service of the migrated system has to collabo-
rate with an external service, it is very likely that the external service does not
rely on the same protocol (the sequence of messages interacting with the service)
than the former service.
Figure 2: Relationship between the migrated system and the Cloud ecosystem
Regarding data interoperability, we have developed a tool for semi-automatic infer-
ence of mappings between data models [4]. This tool addresses data interoperability
from a pragmatic standing point: it uses various heuristics to lighten the intervention,
yet mandatory, of a human operator. The idea is to provide the user with various algo
rithms detecting semantically similar concepts (regardless of structure of the underly-
ing concepts), which pre-calculate a data mapping that can be later refined, as the user
push additional knowledge into the loop (validate/invalidate some recommendations,
or by providing sources about the semantic of the date models: synonyms, abbrevia-
tions, or ontologies). Our tool provides a new heuristic tailored to exploit the speci-
ficities of object-oriented (class diagrams) models, but can be combined with existing
approaches such as syntactic mappings or semantic annotations. The resulting map-
6. pings can then be implemented by designers e.g., using tools developed in previous or
on-going projects (ATHENA [5] and EMPOWER [6]), or commercial tools like Al-
tova MapForce [7]. Regarding the behavioural mediation, mediation services are ex-
pressed through finite state machine models, which are to be inserted between the
migrated services and the external services they need to interoperate with. These state
machines are responsible for translating protocols (sequences of exchanges of mes-
sages). To help designers in defining such state machines, REMICS provides code
generators able to produce executable mock-ups to test and refine mediators, with no
need to actually use the real services. Then the mediation code is fully generated from
the state machines and deployed on a models@runtime engine, to enable future modi-
fications (e.g., after a service has been modified) in a very flexible way [8].
2.3 Conclusions
In this section we presented the REMICS project and two specific research activities
within REMICS that are important for the Future Internet applications in the Cloud;
i.e. abstracting the complexity of deployment in the Clouds in a Cloud platform-
independent language and solving the interoperability challenges of services.
REMICS initially focused on two industrial cases:
DI Systemer is a Norwegian software vendor based in Trondheim within the
ERP (Enterprise Resource Planning)/Accounting/CRM (Customer Relation-
ship Management) domain participating as a Small and Medium Enterprise
(SME) partner.
DOME Consulting & Solutions is a technology company based in
Spain/Mallorca, with a strong vocation of service to the travel industry
which facilitates and develops next-generation technology solutions.
Both of the above companies have legacy code that is modernized in REMICS to
SOA with deployment in the cloud. For example, in the DI Systemer case, the product
portfolio is developed with different tools/languages and has evolved during decades
(the case is discussed in detail in [2]). The software is consumed by the DISYS cus-
tomers in different runtime environments: desktop standalone installations, and tradi-
tional Client/Server solutions in a Local Area Network (LAN). Some users also host
the DISYS software in virtual machines executed in DISYS ASP centre or in their
own data centre. There are practically no shared resources, i.e. there is one software
installation per DISYS customer. The Recover process in REMICS has analysed
complex and voluminous legacy COBOL code and enabled inspection and manipula-
tion in UML models. Modernization and migration to the service cloud paradigm
enables the company to deploy one single reporting system installation serving all
customers/users, get paid per use, offer reports directly to the end user and to meet
scalability issues by requesting more hardware from the service provider when
needed. Since September 2011, the REMICS project has been extended with three
new academic partners and they have brought new industrial cases to the project
(transport, banking and scientific applications) that are currently under analysis.
7. 3. Cloud4Trends: leveraging the Cloud infrastructure for localized
real-time trend detection in social media
Social media and Web 2.0 technologies have profoundly widened users interaction
and broadened content generation and distribution. Huge volumes of information flow
on the Web in an evolving manner and great effort has been placed on exploiting
knowledge hidden into these large scale data streams. Conventional data management
solutions are not adequate for storing, indexing and accessing in such social streams
due to the limitations in storage spaces and processing complexities. The Cloud com-
puting paradigm offers a significant ground for such social streams mining applica-
tions since it provides a scalable and powerful infrastructure. VENUS-C1 (Virtual
Multidisciplinary EnviroNments USing Cloud Infrastructures) is a pioneering project
that develops and deploys a Cloud computing service for research and industry com-
munities in Europe by offering an industrial-quality, service-oriented platform based
on virtualization technologies, facilitating a range of research fields through easy
deployment of end-user services. In particular, VENUS-C opened a call for experi-
ments held on top of its offered infrastructure. Cloud4Trends is one of the experi-
ments running over the VENUS-C infrastructure, entitled ―Leveraging the Cloud
infrastructure for localized real-time trend detection in social media‖. It aims at offer-
ing high-quality services for identifying and revealing most significant topics and
trends expressed in social media. The research scope of Cloud4Trends is the real-time
analysis and exploitation of the user-contributed content in Web 2.0 microblogging
and blogging platforms, in a particular geographical context. In particular, the main
aim of Cloud4Trends is: i) the development and distribution of a high-quality service
for the real-time detection of trending topics / issues that interest and are discussed by
the users of specific geographic areas, as well as ii) the investigation and verification
of the suitability of Cloud computing infrastructures as platforms for such services,
considering the benefits they offer. Online social streams tracking is also addressed in
the followed Cloud-based approach which involves: i) use of VENUS-C Cloud infra-
structure specific APIs for data and execution, ii) synchronization of the execution
bits and communicate data among them, and iii) refining failing jobs and code.
3.1 Cloud4Trends : managing large scale social streams on the Cloud
Clustering and summarizing methodologies are quite suitable for trend detection since
they can reveal groups of data out of social media streams, and they can group rele-
vant topics, and identify trends [12, 16]. Cloud4Trends has initiated an experiment
with microblogging data collection from the popular Twitter service and blogging
data collection from the Blogger platform. Current clustering approaches in Twitter
focus on identifying groups of tweets using text mining techniques, such as exploiting
common word co-occurrences [10, 13, 14]. Such tweet analysis should however be
performed on a real-time streaming fashion so as to capture in actual time the con-
stantly changing trending interests of users. Cloud4Trends emphasizes that tweet
1
http://www.venus-c.eu/
8. analysis can be further extended by exploiting associations based on the broadcasting
time and the users’ physical location (exploiting the geo-location features often incor-
porated in social media). Using multi-feature analysis is expected to produce more
fine-grained quality clusters corresponding to actual topics that are popular at a given
location and time period. It is also expected to alleviate the generally acknowledged
problem of noisy data in Twitter (i.e. data containing uninteresting or meaningless
information). The joint consideration of location and time improves the clustering
quality and contribute to filtering out noisy tweets. Since twitter users tend to include
hyperlinks to other sites (with blogs articles, videos, etc) on their tweets,
Cloud4Trends enriches the initial tweet content by following the included hyperlink
and extracting metadata out of it. Moreover, the proposed approach is similarly ap-
plied to blog posts in order to recover variations in users’ opinions and interests. This
task leverages opinion harvesting and trends declared by individuals in a Web 2.0
platform. Cloud4Trends operates in an online fashion, collecting tweets and blog
posts that pertain to certain individual geographical areas in parallel, and clusters
them in groups based on their text-based similarity and temporal proximity.
3.2 Cloud4Trends: design and implementation principles
Cloud4Trends implements trend detection by using a 3-tiered conceptual design struc-
ture. This structure is used to facilitate data collection, processing and trend detection
prior to the Cloud deployment, as described next:
At the Data Collection tier, online data aggregators collect recently published con-
tent from Twitter and the Blogosphere in particular specific geographic locations
and areas, leveraging the Twitter Streaming API2 and the Google Blogger API3.
The Data Processing tier analyzes retrieved tweets and blog posts to produce clus-
ters that contain posts pertaining to specific topics. There are three types of cluster
sets maintained, namely: tweet clusters, blog posts clusters, and extended tweet 4
clusters. New data are assigned to clusters based on the similarity calculated be-
tween the documents’ and the clusters’ representation vectors, with the clustering
phase having been implemented as a distributed Map-Reduce process.
The Trend detection and Visualization tier retrieves all active clusters and gene-
rates a summary description for each of them comprising few member terms or
phrases based on their weights and their significance (hashtags, title terms, etc).
Trends are therefore estimated based on the three different data sources for a num-
ber of locations and the results are visualized in a web-based user interface
Cloud4Trends is implemented as a hybrid application based on the cooperation of: i)
on-premises client interface components and ii) multiple job execution components
with different functionalities on top of the VENUS-C Cloud services and infrastruc-
ture. Fig. 3 illustrates the three Cloud4Trends modules, namely: the Client module,
the VENUS-C Services module, and the Cloud-based module. These modules support
2
https://dev.twitter.com/docs/streaming-api
3
http://code.google.com/apis/blogger/docs/2.0/developers_guide_protocol.html
4
Extended tweets refer to a joint representation of the tweets’ content and their referenced blogs.
9. the proposed 3-tier design (described above) such that the Client module implements
the Data Collection and Trend detection and Visualization tiers, whereas the Cloud-
based module implements the Data Processing tier.
VENUS-C Services module: it gathers the particular VENUS-C components used
for assisting and simplifying the application’s porting to the Cloud. More specifi-
cally, the VENUS-C Data Access Service is used for accessing the Cloud Storage
(Blobs and Tables) when retrieving or uploading data via a Client. The VENUS-C
Execution Service is used for submitting and distributing new processing jobs to
the Cloud. Cloud4Trends utilizes the Generic Worker VENUS-C programming
model which operates primarily on top of Microsoft’s Azure Cloud5.
Client module: it encapsulates Web 2.0 data collectors and their interfaces required
for the communication with the VENUS-C Services. It involves the experiment
setting/monitoring interface (attached to the on-premises server to facilitate sub-
mitting new experiments and monitoring the progress of the ones currently run-
ning), Web interface (to communicate the Cloud4Trends results to end users) as
well as Twitter and Blog Data Collectors (to receive stream data at real time).
Cloud-based module: it actually involves several components ported in the Cloud.
Parsing and Clustering modules are implemented via the VENUS-C Services, i.e.
the related operations are submitted as jobs via the Generic Worker framework.
The clustering modules are realized by the Splitter, Similarity Calculation –
Mapper-, and Aggregation-Reducer- modules, under the Map-Reduce paradigm.
The Indexing Services module is implemented independently as a separate set of
Cloud services.
Figure 3: Cloud4Trends Modules and Functionality
5
http://research.microsoft.com/en-us/downloads/76537edf-9b77-4664-b76b-cf51be506a0d/
10. 3.3 Cloud4Trends in summary and future outlook
The Cloud4Trends pilot project started in June 2011 and is now at an Alpha Prototype
state. So far, the following steps have been taken.
the on-premises data (tweet and blog post) collection applications have been
seamlessly integrated with the job submission client into a real-time text
parsing job submission system.
the Generic Worker’s suitability for frequent successive job submissions has
been verified.
the data indexing services have been deployed in Azure using the Azure Li-
brary for Lucene.NET.
communication between the Cloud-based data parsers and the indexing ser-
vices has been achieved via Azure queues
the whole job submission workflow (including the submission of parsing and
distributed clustering jobs) has been deployed in the Cloud. This was accom-
plished with use of the Generic Worker submission service which allowed
the implementation of the workflow via the submission and ―cooperation‖ of
data-dependent jobs, as well as through the queue-based communication be-
tween Generic Worker computing instances and the Indexing Cloud-based
services.
Experimentation with the Cloud4Trends pilot application has so far focused on long
running experiments with data for the Twitter platform and short experiments with
data from the Blogger platform. Large scale experiments with data from Twitter have
targeted the city-area of New York, US. Over the Cloud4Trends application the real-
time analysis of user generated data at a large city level is feasible, managing to effi-
ciently handle a stream of on average 70.000 tweets per day arriving at a rate of 1
tweet per second, as provided by the Twitter Streaming API. In our next experiments
we aim at extending our initial experiments with content from the Blogger platform
which has the characteristics of larger scales of textual information, but lower update
rate. In the near future, the Cloud4Trends pilot will also perform trending topics’
detection concurrently in several cities worldwide.
Cloud4Trends has demonstrated that porting trend detection into the Cloud is a very
suitable solution due to the challenges posed by the data and time intensive processes
involved in online collection and analysis of large and evolving Web 2.0 datasets.
Cloud4Trends’ main objective is to establish a high-quality service for providing real-
time, localized trending topics by harvesting and analysing content from Twitter and
the blogosphere, while at the same time verifying the correctness and feasibility of
this service under a Cloud infrastructure. Cloud4Trends verifies that deploying web
mining based services into the Cloud is feasible and beneficial for both researchers
and entrepreneurs since it:
enables massive data analysis and easier testing of new algorithms/use-case scenar-
ios, achieving high-quality results with lesser cost,
reduces the prerequisite for real-time applications data processing time,
11. places focus on applications’ refinement/testing, rather than on how to operate the
testbed infrastructures,
improves application capability sharing, by exposing research results as a service
to other research groups or interested end-users.
4. Conclusion
Cloud computing already brings significant savings and robustness gains to companies
both large and small. Their systems store and process their data in virtualized infra-
structure. As cloud offerings mature, it is likely that deployment in the cloud will be
the first option considered for new systems, and that many existing systems will be
migrated to the cloud. In this chapter, we have presented two intriguing ongoing
projects that focus on cloud-based systems:
REMICS, addressing the challenge of migrating into the cloud existing legacy
applications that typically represent significant investment, to benefit from the
advantages of virtualized and on-demand computing resources;
VENUS-C, which runs the Cloud4Trends experiment that addresses the chal-
lenge of handling data streams (social data, sensor data etc.) in the cloud, particu-
larly to detect variations and trends in the data.
These projects confirm that using the cloud emphasizes reproducibility, where a given
system node should be easily re-usable as-is, in the same context or in a new one; and
that the cloud supports scalability through replication and load balancing, by encour-
aging appropriate system decomposition and loosely-coupled architecture. By remov-
ing the focus from the infrastructure, the cloud allows system architects to concentrate
on the application’s structure, and it frees resources for testing. However, the cloud is
not a single consistent global offering — instead, there are multiple cloud vendors
with differing features, capabilities, and most importantly, application programming
interfaces (APIs). Notwithstanding the benefits of competition, there is a critical need
for standards in cloud APIs. In 2009, Vint Cerf made the point that the ―inter-cloud‖
problem (exchanging information between distinct computing clouds) could be solved
via semantics. Semantics-based descriptions of cloud resources, services and functio-
nalities could especially help with provider-neutral cloud programming (utilizing non-
vendor specific APIs for cloud application development), cloud portability (porting of
applications across different cloud frameworks), and cloud interoperability (utilizing
multiple services from multiple clouds). The role of semantics in cloud computing,
and the various ontologies that have been developed by several research projects, are
the subject of an ongoing discussion within the efforts around the Future Internet. The
Hola! ICT Collaboration Portal6, which is open to all interested parties, hosts the
Common Cloud Ontologies Working Group, which is collecting the existing ontolo-
gies, as inputs to work on a common "Cloud Ontology". Cloud offerings will be an
indispensable part of the Future Internet, and they will be more interoperable, more
clearly ready to host migrated industrial legacy systems, more tuned for processing
streams of data, and so on, thanks in large part to EU-driven research contributions.
6
http://www.holaportal.eu/node/285
12. Acknowledgments
This chapter has been prepared by the Support Action SOFI (Service Offering for the
Future Internet, http://sofi-project.eu), funded by the European Union through the
7th Framework Programme (EU FP7). The work described in Section 2 has been
funded by the REMICS project, EU FP7 contract number 257793. The work in Sec-
tion 3 has been partly funded and realized within the Cloud4Trends pilot project of
the VENUS-C research initiative, EU FP7 contract number 261565, co-funded by the
GÉANT.
References
1. Mohagheghi, P., Barbier, F., Berre, A.J., Morin, B., Sadovykh, A., Sæther, T., Henry, A.,
Abhervé, A., Ritter, T., Hein, C., Śmiałek, M.: Migrating Legacy Applications to the Service
Cloud Paradigm: The REMICS project. Book chapter in European Research Activities in Cloud
computing, Eds. Dana Petcu and José Luis Vázquez-Poletti, Cambridge Scholars Publishing,
pp. 97-121 (2012)
2. Mohagheghi, P., Sæther, T.: Software Engineering Challenges for Migration to the Service
Cloud Paradigm. Proceedings of Services 2011: IEEE World Congress on Services, IEEE
Computer Society, pp. 507–514 (2011)
3. Booch, G., Rumbaugh, J., Jacobson, I.: Unified Modeling Language User Guide, the 2nd
Edition, Addison-Wesley Object Technology Series. Addison-Wesley Professional (2005)
4. Roman, D., Morin, B., Wang, S., Berre, A.J.: A Model-Driven Approach to Interoperability
in B2B Data Exchange. In Advanced Result on MDI/SOA innovation workshop (at IWEI
2001), Stockholm, Sweden. URL http://www.remics.eu/publications (2011)
5. http://www.modelbased.net/aif/
6. http://www.ep-empower.eu/
7. http://www.altova.com/mapforce.html
8. Ballagny, C., Hameurlain, N., Barbier, F.: MOCAS: A State-Based Component Model for
Self-Adaptation. In: Proceedings of SASO 2009, pp. 206-215. URL
www.cyrilballagny.fr/download/Ballagny_ECMDA09.pdf (2009)
9. Sakaki, M. Okazaki, and Y. Matsuo. 2010. Earthquake shakes Twitter users: real-time event
detection by social sensors. In WWW '10. ACM, 851-860.
10. D. A. Shamma, L. Kennedy, and E. F. Churchill. 2009. Tweet the debates: understanding
community annotation of uncollected sources. In WSM '09. ACM, 3-10.
11. N. S. Glance, M. Hurst, and T. Tomokiyo. 2004. BlogPulse: Automated Trend Discovery
for Weblogs. In WWW’04.
12. Uchida, M., Shibata, N. and Shirayama, S. 2007. Identification and Visualization of Emerg-
ing Trend from Blogosphere.In ICWSM’07, pp. 305-306.
13. J. Sankaranarayanan, H. Samet, B. E. Teitler, M. D. Lieberman, and J. Sperling. 2009.
TwitterStand: news in tweets. In GIS '09. ACM, 42-51.
14. M. Mathioudakis and N. Koudas. 2010. TwitterMonitor: trend detection over the twitter
stream. In SIGMOD '10.ACM, 1155-1158.
15. I. Livenson and E. Laure. 2011. Towards transparent integration of heterogeneous Cloud
storage platforms. In DIDC '11. ACM , 27-34.
16. V. Koutsonikola, A. Vakali, E. Giannakidou, I. Kompatsiaris: Clustering Users of a Social
Tagging System: A Topic and Time Based Approach. WISE 2009: 75-86