GigaSpaces eXtreme Application Platform (XAP) is an enterprise application virtualization platform that provides a solution for end-to-end scalability of the application and its data under extreme latency and load requirements. XAP is a consolidated platform that combines the GigaSpaces in-memory data grid with a fully elastic application platform for complete application scalability, from the load balancer down to the database.
XAP is the only platform that enables end-to-end scalability with a single product, and as a single-product solution, it provides the joint benefits of increased performance and cost reduction.
XAP is designed to meet the mission-critical needs of a wide range of businesses, with advanced monitoring and management capabilities, high-level automation of operations, cloud readiness that supports private, public, or hybrid architectures, and complete interoperability: XAP provides a solution for scalability in any environment, language, and API, without dictating a specific development framework or environment.
This document outlines the technical foundations of GigaSpaces XAP and the “secret sauce” behind the product‟s unique capabilities, the Space-Based Architecture (SBA).
At time of crisis, the first instinct at many IT organizations is to freeze and do nothing. This paper prescribes exactly the opposite - innovation - as the key to survival. It focuses on the hottest trend in IT cost savings -operating system virtualization software such as VMware, which improves server utilization and reduces the number of servers, dramatically cutting ownership costs. But operating system virtualization is only part of the solution, because the applications and middleware are themselves inefficient and inflexible, wasteful of resources and too complex to scale out over the new virtualized infrastructure. GigaSpaces XAP provides application-level virtualization which solves the problem, improves server utilization even further, and thus generates substantial additional cost savings ¾ over and above the savings already enjoyed by adopters of operating system virtualization.
.
Application workload is growing at an increasing pace, making scalability a prime concern of application designers and administrators. In this paper, we define scalability, and show that inherent scalability barriers represent a dead end for today's tier-based business-critical applications. We argue that in order to survive, these applications must achieve linear scalability, and that the only way to do this is to switch from the tier-based model to a new architectural approach. We suggest a novel approach in which applications are partitioned into self-sufficient processing units, and present Space-Based Architecture (SBA) as a practical implementation of this approach. We demonstrate that SBA guarantees both linear scalability and simplicity for designers, developers and administrators - transforming scalability from dead end to open road.
According to the CAP theorem, it is impossible for a distributed system to have all three CAP properties – consistency (C), availability (A), and partition tolerance (P) – necessitating a choice of only two: Some suggest choosing AP and compromising on consistency. Others suggest CA as a better set of tradeoffs.
This paper presents the argument that it is not necessary to completely give up partition tolerance by choosing CA, or consistency by choosing AP. Instead of viewing each CAP property in absolute terms and selecting only two, we can adopt a more relaxed approach that applies various degrees of all three, and compromise on the degree in which we apply each property based on the application’s business requirements. In other words, address the most likely failure and network partition scenarios, and compromise only in areas where they are less likely to occur.
A common GigaSpaces clustering topologies is used as a reference for this model, with a detailed illustration of how the topology applies to all three CAP properties.
This paper discusses the difference between multi-core concurrency (often referred to as the scale-up model) and distributed computing (often referred to as the scale-out model).
While the two models seem similar, in the practical sense they are very different. Only the scale-out model enables leveraging the power of multiple machines while also reducing failure and downtime incidence. However, this approach can also involve increased system overhead.
So, is it possible to choose between the two approaches? What factors should be considered? And how does the evolution of multi-core technology affect the need to choose?
A case study of the architecture used by Delver/Sears, of how Sears built a social e-commerce solution that can handle complex relationship queries in real time. The case study includes the architectural considerations behind their solution , why they chose memory over disk, how they partitioned the data to gain scalability, why they chose to execute code with the data using the GigaSpaces Map/Reduce execution framework, how they integrated with Facebook, and why they chose GigaSpaces over Coherence and Terracotta.
Real-time analytics are becoming part of mainstream system design, with high-profile companies such as Facebook sharing their design and implementation processes, proving that real-time is already a reality.
However, most of these designs rest on assumptions that inherently limit the resulting systems, among t hem the idea that memory is unreliable, and that there is only one choice of database.
This paper examines the proposition that these assumptions should be challenged, and that by changing them, inherent limitations of real-time analytics systems can be eliminated.
.
.
.
It has now been a good couple of years since the various anti-SQL proponents have gained enough momentum to come together under the wide umbrella of the term NoSQL. And it is clear that we can never go back: the typical relational database architecture is clearly insufficient for today’s data-intensive applications, and the move to distributed architectures.
But is the problem in the architecture or the query language? The two are not interchangeable, though frequently confused.
.
.
This document details the migration process from a typical JEE tier-based application to a full blown Space-Based Architecture implementation, based on GigaSpaces XAP. It is the result of a project carried out by GigaSpaces in 2008, to determine the basis for comparison between GigaSpaces Space-Based Architecture and the standard JEE Tier-Based Architecture. The project was conducted by Grid Dynamics, an independent consulting and engineering company, hired by GigaSpaces for that purpose.
This paper is a brief guide to scaling Spring-based applications. It shows how
to solve well-known problems that crop up when applications begin to scale
out across multiple physical machines - a bottleneck in the data tier, a
bottleneck in the messaging tier, a bottleneck caused by the tight coupling
between business logic, data, and messaging, and a bottleneck caused by
the limited methods that exist today to deploy and provision applications
across multiple computers. We suggest a number of simple yet innovative
steps, which leverage the idea of virtualization to help you release these
bottlenecks, but do not require that you change your business logic code or
otherwise re-work your application. The steps can be performed individually,
as a targeted "cure" for each bottleneck, but together they form a holistic
solution that leverages Space-Based Architecture (SBA) to enable true
linear scalability for your application.
The Amazon Elastic Compute Cloud service provides a better economic model for large-scale applications -- the owner of the application only pays for hardware per usage and on a low-cost basis, while benefiting from the reliability of the Amazon infrastructure. However, running stateful applications in such a distributed environment faces several challenges that hinder performance and scalability. This paper describes a solution for running stateful applications (high-performance data-intensive and transactional) in the Amazon EC2 environment. Section One presents an overview of EC2 and the challenges faced by developers and architects when they need to run high-performance stateful applications in such a distributed environment. It then goes on to review the GigaSpaces solution which enables running such applications on EC2, allowing them to benefit from all of the advantages that EC2 provides. Section Two is a hands-on guide that describes the architecture of a GigaSpaces application on EC2 and provides step-by-step instructions for developing, integrating and deploying stateful applications on the EC2 environment.
This paper describes a comprehensive solution based on Microsoft and GigaSpaces technologies that addresses the fundamental scalability and performance challenge with existing Excel-based applications in Capital Markets. The solution combines the latest Microsoft technologies: Office Excel, Excel Services in Office SharePoint Server 2007, User Defined Functions (UDF), and Windows Compute Cluster Server 2003 (CCS) with the GigaSpaces eXtreme Application Platform (XAP) to deliver unparalleled usability, performance, and scalability. Section One presents an overview of the challenges with existing applications and how the new solution addresses these challenges. Section Two provides a high level overview of the Microsoft and GigaSpaces technologies involved in this solution. Section Three presents the solution and its benefits to the end user, as well as an example of a customer application (trading analysis) that leverages these benefits.
This paper outlines how organizations can gain significant computing optimizations using GigaSpaces solutions running on Sun UltraSPARC T1-based CoolThread T1000/T2000 (Niagara) servers. Conclusions and recommendations are based on the results of scalability and JVM tuning benchmark tests conducted in Sun performance labs using Sun Fire T1000/T2000 servers. The results of the benchmark tests clearly show that the highly parallel processing architectures of GigaSpaces solutions and Sun UltraSPARC T1-based servers are extremely complementary. The benchmark results and conclusions were achieved in close cooperation with the Sun Microsystems Marketing Development Engineering (MDE) division in Israel and California. Special thanks to Sun engineering experts Malcolm Kavalsky, Amit Hurvitz, and Venu Konda.