1,721,140 research outputs found

    Re-engineering data-centric information systems for the Cloud – A method and architectural patterns promoting multi-tenancy

    No full text
    Enterprise applications are data-centric information systems that are being increasingly deployed as <i>Software-as-a-Service (SaaS)</i> Cloud offerings. Such service-oriented enterprise applications allow multiple tenants (i.e., groups of service consumers) to share the computational and storage capabilities of a single Cloud application instance. Compared to a more traditional single-tenant application deployment model, a multi-tenant SaaS architecture lowers both deployment and maintenance costs. These cost reductions motivate architects to re-engineer existing enterprise applications to support multi-tenancy at the application level. However, in order to preserve data integrity and data confidentiality, the re-engineering process must guarantee that different tenants allocated to the same application instance cannot access one another’s data, including both persistent values stored in databases and transient values created during calculations.\ud This chapter presents a method and a set of architectural patterns for systematically re-engineering data-sensitive enterprise applications into secure multi- tenant software services that can be deployed to public and private Cloud offerings seamlessly. Architectural refactoring is introduced as a novel re- engineering practice and the necessary steps in multi-tenant refactoring are described from planning to execution to validation (including testing and code reviews). The method and patterns are validated in a fictitious, but realistic and representative case study that was distilled from real-world requirements and application architectures

    A Platform for Analysing Stream and Historic Data with Efficient and Scalable Design Patterns

    No full text
    Social media is an increasingly popular method for people to share information and interact with each other. Analysis of social media data has the potential to provide useful insights in a wide range of domains including social science, advertising and policing. Social media information is produced in real-time, and so analysis that can give insights into events as they occur can be particularly valuable. Similarly, analytics platforms providing low latency query responses can improve the user experience for ad-hoc data exploration on historic data sets. However, the rate at which new data is generated makes it a real challenge to design a system that can meet both of these challenges. This paper describes the deisgn and evaluation of such a system. Firstly, it describes how a meta-analysis of the types of questions that were being asked of Twitter data led to the identification of a small set of queries that could be used to answer the majority of them. Secondly, it describes the design of a scalable platform for answering these and other queries. The architecture is described: it is cloud-based, and combines both continuous query, and noSQL database technology. Evaluation results are presented which show that the system can scale to process queries on streaming data arriving at the rate of the full Twitter firehose. Experiments show that queries on large repositories of stored historic data can also be answered with low latency. Finally, we present the results of queries that combine both streaming and historic data.</p

    A Semantic-enabled Framework For Future Internet Of Things Applications

    No full text
    While the challenge of connecting Internet of Things (IoT) devices at the lowest layer has been widely studied, integrating and interoperating huge amounts of sensed data of heterogeneous IoT devices is becoming increasingly important because of the possibility of consuming such data in supporting many potential novel IoT applications. A common approach to processing and consuming IoT data is a centralized paradigm: sensor data is sent over the network to a comparatively powerful central server or a cloud service, where all processing takes place. However, this approach has some limitations as it requires devices to interact directly with a cloud which is not cost effective. First, it has high demands on the device's storage and computational capabilities. Second, as devices grow rapidly in a deployment area, sending all the data to a centralized cloud server requires high network bandwidth. Moreover, this often creates data privacy concerns as all raw data will be sent to a centralized place. To address the above limitations for building future Internet of Things applications, we present an early design of a novel framework that combines Internet of Things, Semantic Web, and Big Data concepts. We not only present the core components to build an IoT system, but also list existing alternatives with their merits. This framework aims to incorporate open standards to address the potential challenges in building future IoT applications. Therefore, our discussion revolves around open standards to build the framework, rather than proprietary standards

    SPEEDL - A Declarative Event-Based Language to Define the Scaling Behavior of Cloud Applications

    No full text
    Contemporary cloud providers offer out-of-the-box auto-scaling solutions. However, defining a non-trivial scaling behavior that goes beyond the feature set provided by existing solutions is still challenging. In this paper we present SPEEDL, a declarative and extensible domain-specific language that simplifies the creation of elastic scaling behavior on top of IaaS clouds. SPEEDL simplifies the creation of event-driven policies for resource management (How many resources, and what resource types, are needed?), as well as task mapping (Which tasks should be handled by which resources?). Based on a dataset of real-life scaling policies, we demonstrate that SPEEDL can cover most scaling behaviors real-life developers want to express, and that the resulting SPEEDL policies are at the same time substantially more compact, easier to read, and less error-prone than the same behavior expressed via a general-purpose programming language

    On Monitoring Cyber-Physical-Social Systems

    No full text
    Recent developments of computing systems allow humans to participate not only as service consumers but also as service providers. The interweaving of human-based computing into machine-based computing systems becomes apparent in smart city settings, where human-based services together with software-based services and thing-based services (e.g., sensor-asa-service) are orchestrated for solving complex problems, leading to the creation of the so-called Cyber-PhySical-Social Systems (CPSSs). Monitoring such CPSSs is essential for system planning, management, and governance. However, due to the diversity of the involved building blocks, it is challenging to monitor such systems. In this paper, we present metric models and the associated Quality of Data (QoD) to elastically monitor the execution metrics of a centralized coordinated CPSS. We develop a monitoring framework for capturing and analyzing runtime metrics occurring on various facets of the coordinated CPSS. Furthermore, we present the implementation of our monitoring framework, and showcase monitoring features in a simulated system using real world infrastructure maintenance scenarios

    Editorial Foreward

    No full text

    Going Beyond Counting First Authors in Author Co-citation Analysis

    Get PDF
    The present study examines one of the fundamental aspects of author co-citation analysis (ACA) - the way co-citation counts are defined. Co-citation counting provides the data on which all subsequent statistical analyses and mappings are based, and we compare ACA results based on two different types of co-citation counting - the traditional type that only counts the first one among a cited work's authors on the one hand and a non-traditional type that takes into account the first 5 authors of a cited work on the other hand. Results indicate that the picture produced through this non-traditional author co-citation counting contains more coherent author groups and is therefore considerably clearer. However, this picture represents fewer specialties in the research field being studied than that produced through the traditional first-author co-citation counting when the same number of top-ranked authors is selected and analyzed. Reasons for these effects are discussed

    From Legacy to Cloud: Risks and Benefits in Software Cloud Migration

    No full text
    Various factors need to be evaluated before moving on-premise software applications to the cloud. Considerations such as scale, legal constraints, and security play a key role in rearchitecting an application in a cloud-compliant way. However, the body of knowledge on relevant migration factors is mostly neglected in practice and scattered in the scientific literature. To make this knowledge accessible, we have conducted a systematic literature review. It identifies the relevant studies that describe measures and indicators for guiding software cloud migration. This chapter presents the results of the review, which include the collected factors, namely 40 benefits, 71 risks, and 72 general measures. All factors were classified into five categories: financial, organizational, technical, legal, and security-related. In Tables 9.7, 9.8 and 9.9 we present a selection (the complete list of factors is available online at http://tinyurl.com/h6rhhp6) of all factors (3 factors per category, if the category appears in the collected benefits, risks and general measures). The analysis of factors draws observations on the most relevant benefits, risks, and measures playing a role in contemporary cloud migration. Among them, security appears not to be the biggest inhibitor to cloud migration anymore thanks to matured Service Level Agreements (SLAs). In contrast, issues like post-migration costs and the potential impact of the migration on organization staff are gaining importance. These and similar findings, along with the list of factors, can help decision makers in assessing the risks and benefits of moving a software application to the cloud. The presented factors can also be used as a base for producing a more complete list of requirements for rearchitecting preexisting software and easing their migration to the cloud
    corecore