Showing posts with label Engineered Systems. Show all posts
Showing posts with label Engineered Systems. Show all posts

Saturday, 24 January 2015

Exalogic Elastic Cloud 12c Software and Exalogic X5-2 Hardware Launch

We're excited to announce the release of the first of two fundamental innovations in Oracle Exalogic - our planned 12c Exalogic Elastic Cloud Software and our new X5-2 hardware, the latter of which is available immediately.
Beginning with software, we're seeing a massive shift from traditional pure virtualization to cloud. In our 12c release, Exalogic is aligning with Oracle's public cloud to offer the same IaaS and PaaS layers, with Java Cloud Service being offered as our first PaaS solution. By adopting the same IaaS and PaaS layers, we're able to offer our customers the exact same experience whether on or off premise. Performance continues to be a defining characteristic of Oracle Exalogic, with workloads having 5-10x greater performance and throughput compared to traditional systems. 
To see how we got to this point, let's look back at the 1990s.That era was characterized by big monolithic apps running on large, non-virtualized servers. This is known as "Generation 0." In the 2000s, many workloads were virtualized. This is known as "Generation 1." While an enormous evolution over physical, virtualization didn't change the equation all that much - in fact it made it worse. Rather than having one large server, there are many smaller virtual machines. The maintenance problems only multiplied as it became easier to provision virtual machines.
In today's world, cloud is beginning to take over and Oracle is the leading vendor in the transition to cloud. Cloud is known as "Generation 2." Cloud offers virtualization as well but it offers a number of new features that make it distinct from Generation 1. Cloud offers simple provisioning, elasticity to support ever-changing workloads, automated backup/recovery/patching and more. Resources - from compute to network to storage to Java - are offered up as services, with the consumer of the services detached from the back-end work required to offer and maintain the services. As much as possible, end-consumers provision some software, with the hardware behind the software being provided, configured, updated, backed-up seamlessly. Cloud is often consumed off premise, but with the introduction of Exalogic Elastic Cloud Software 12c, customers will be able to consume the same IaaS and PaaS services in Oracle's public cloud, or on premise on Oracle Exalogic hardware.
Exalogic X5-2 is the next Generation of our hardware platform, built to support Generation 2 (although the 12c software will support existing hardware platforms). Ahead of defining specifications for the platform, we performed extensive research to look at how we can continue to have a balanced architecture to support the workloads our customers have. Thinking of Exalogic X5-2 in the context of a Generation 2 cloud model, high density of virtual machines on each individual server is a prerequisite, in addition to a shared network, storage system and most important, high I/O throughput (which is achieved through Exabus on Exalogic). In order to deliver on a balanced architecture, we've increased the density of cores per compute node up to 36, meaning customers can have up to 1,080 physical cores in a single rack of Oracle Exalogic X5-2. There are a number of other enhancements including a move to DDR4 to provide faster memory, an increase in SSD per compute node to 800 GB, and an 800 GB write cache in our storage appliance. Collectively, these changes make Exalogic X5-2 the best available hardware platform for Generation 2 computing. 

Want to know more about what customers are doing with Exalogic? Listen to these two customers speak about their use of Exalogic a the X5 launch. Aaron de Los Reyes speaks about 9x reduction in hardware footprint and 50% operational cost savings.  Did you know that Exalogic also powers the heart of Silicon Valley? City of San Francisco's Dennis McCormick speaks about their use of Exalogic and Exadata.
To learn more, have a look at the Elastic Exalogic Elastic Cloud X5-2 launch video.

Monday, 7 October 2013

Middleware and Applications Optimizations for Exalogic

At Oracle OpenWorld this year, I had a lot of customer discussions. One of the most recurrent questions was about the work we have done in our software stack to make Oracle Middleware Applications and ISV Applications run faster and with greater throughput. With this view, I wrote an easy to read non-exhaustive summary that highlights some of these:

Oracle WebLogic Optimizations on Exalogic
Applications using WebLogic benefit from a number of optimizations for thread efficiency, faster interprocess communication and higher message throughput.  An optimized work scheduler for Exalogic balances the number of threads per core available on Exalogic systems, providing better application processing efficiency.  WebLogic Server has changed to use shared byte buffers instead of array copies when passing data, improving application interprocess communication performance and a 66% reduction in number of objects created. This reduces heap usage and results in fewer expensive garbage collections for Applications. WebLogic also optimizes socket calls to reduce lock contention on Exalogic, allowing fewer threads to process a larger number of message requests.  

Oracle Coherence Optimizations on Exalogic
Applications using Coherence benefit from optimizations to increase scalability and lower the latency of data grid operations. Coherence takes advantage of a new low-level Java API, InfiniBand Message Bus, to provide a native InfiniBand Exabus implementation that uses Remote Direct Memory Access (RDMA) , zero-copy data transfer, and other optimizations for low latency communications. As a result, applications that store state and data in Coherence can see 4-6x improvements in performance of these operations.  The Elastic Data feature of Coherence uses Exalogic SSD storage or SSD-backed SAN to support larger data sets than would be possible with in-memory alone, allowing applications to access more cached data on fewer Exalogic compute nodes.   Through Exabus optimizations and Elastic Data, Oracle Coherence on Exalogic provides the next generation of massively scalable, low-latency data and state management for applications.

Oracle Tuxedo Optimizations on Exalogic
(only for PeopleSoft).
PeopleSoft applications using PeopleTools 8.53 and higher benefit from a new implementation of JOLT over SDP (Sockets Direct Protocol), which runs natively on the Infiniband/Exabus fabric eliminating I/O bottlenecks between PIA web tier and App Server.  These applications also benefit from self tuning of bulletin board locking mechanism, where Tuxedo dynamically manages number of times an application loops waiting for a user mode semaphore based on current workload, resulting in efficient CPU consumption and improved application performance.

Oracle JRockit Optimizations on Exalogic
On Exalogic, the JVM makes more efficient network I/O calls using collections of chunked data resulting in higher throughput for Java applications. The JVM optimizes object management with fewer copies resulting in reduced garbage collection and less heap size resulting in better Java application performance.

Exalogic Exabus
Applications running on Exalogic utilize Exabus, the underlying Infiniband fabric, which provides low latency and high throughput eliminating I/O bottlenecks in every application layer. Applications components are typically deployed in more than one server and Exabus provides low latency for I/O across nodes on same Exalogic rack. Access to ZFS storage device over Exabus greatly reduces latency for log file writes and other file access operations. For applications running on Exalogic and accessing database tier on Exadata, Exabus delivers faster I/O, reduces CPU usage on both the mid-tier and DB-tier and provides higher connection pooling efficiency.

Oracle Traffic Director
For applications deployed on Exalogic, Oracle Traffic Director (OTD) is a fast, scalable entry point for all HTTP and HTTPS traffic to application servers and Web server components. OTD acts as a high performance SSL/TLS termination point for HTTPS requests reducing processing overhead for back-end servers. OTD caches content reducing load and improving performance. OTD compresses HTTP data improving response time for clients with slow connections.

Oracle VM for Exalogic
Exalogic Oracle VM can be used to sub-divide a physical compute node into multiple virtual machines to increase application deployment efficiency while maintaining application performance. Oracle VM has been engineered for tight integration with Exalogic Exabus I/O backplane using a technique called Single Root I/O Virtualization (SR-IOV) ensuring Oracle VM significantly outperforms comparable hypervisors from other leading vendors. The benefit of this approach is unmatched application performance. In an Exalogic configuration, the impact of virtualization on application throughput and latency is negligible.

Oracle SOA Suite
Long running processes - whether they are complex orchestrations or BPM workflows require data persistence in order to preserve process state. Traditionally a database system is used to persist process state. With optimizations in SOA Suite process state is now managed in Oracle Coherence - which is an in-memory data grid. Coherence has been optimized to run on Exalogic through a native RDMA-based data replication protocol. The use of Coherence together with the optimizations of Coherence on Exalogic enable long running processes in SOA Suite to benefit from 17x throughput improvements.

In-Memory Modules for Oracle Applications
Many processes in packaged applications make extensive use of a backend database for both online as well as batch data processing. With In-Memory Modules, Oracle Applications deliver new functionality that natively leverages the capabilities of the engineered systems - Exalogic, Exadata and Exalytics in order to transform data processing on disk to parallel in-memory data processing enabled by a high throughput low latency network (Infiniband). Examples of In Memory Modules for Oracle Applications include In-Memory Performance-Driven Planning, Consumption-Driven Planning, In-Memory Sales Advisor and In-Memory Project Portfolio Management (the list keeps growing).

Monday, 21 February 2011

Why Engineered Systems?


It’s been barely three months since the launch of Oracle’ Exalogic Elastic Cloud (Exalogic for short). It thus seems like an opportune moment to evaluate the implications and repercussions of this in the context of the industry

Let’s take the most discussed point off the table for the moment: that of Private Cloud versus Public Cloud and whether such a thing as the Private Cloud actually exists. Unfortunate for the dogmatic among us with their fair share of tunnel vision, surveys reveal that most Enterprises and Agencies are proceeding on a strategy of marrying the best of both worlds – leveraging the Public Cloud where it makes sense, e.g. for testing and development, tactical / one off applications, seasonal workloads, and cloud bursting to name a few – and focusing on building Private Clouds to run their mainstream IT. So let’s think about that mainstream IT equation – where engineered systems such as Exalogic and Exadata squarely fit. Exadata for database online transaction processing and data warehousing, and Exalogic Elastic Cloud for running mid-tier and packaged applications.

When Larry Ellison in 20 April 2009 announced the acquisition of Sun Microsystems, he coined the term “Engineered Systems”. At the time, not many in the industry really had an understanding of what this would actually mean (I hasten to say that some within Oracle may not have either). Of course, putting software and hardware together into an appliance form that is easily configured for operations is all good, but many in the industry really didn’t comprehend the extent to which the term “engineered” would drive product innovation both in software and in hardware. A year later the value proposition around Engineered systems is becoming clear. Some people seemed to get it early on.

What does it mean to engineer a system? Is an Engineered system just pre-loaded software on a server to be used as an appliance or is it more than the sum of its parts? Finally, which Engineered systems are the right ones to build Private Clouds? Let’s take these questions in turn.

What does it mean to engineer a system?

An engineered system is typically something that provides out of the box capabilities and does away with as much building, configuring and maintaining of systems as possible – activities that have to be done by IT. Not only is this task repetitive, error prone and time consuming, but it is also very costly. What is typically done by IT today? Look at the 19 item laundry list that a customer recently shared with me. Of course this is probably one of the reasons that it takes IT a while to gets systems up and running:

Do it Yourself IT

  1. Assess application requirements
  2. Research available component technologies and vendor products
  3. Identify all software components and evaluate compatibility, drivers, etc.
  4. Obtain server, storage, network and other components from vendor(s) for trial use
  5. Assemble hardware components, including network design
  6. Install base software components (sufficient to test networking)
  7. Test physical system, working with vendor(s) to identify defects
  8. Obtain patches/fixes for identified defects from vendors and deploy to test system
  9. Deploy/install patches or new hardware
  10. Repeat 7-9 until stable
  11. Deploy upper-stack (application or application-server complex)
  12. Test upper stack
  13. Obtain patches/fixes for identified defects from vendors and deploy to test system
  14. Deploy/install patches or new hardware
  15. Repeat 12-14 until stability and performance goals have been met
  16. Finalize supply chain (vendor price negotiations, component EOL practice, etc.)
  17. Fully document platform state and platform-specific operating/maintenance procedures, vendor support engagement practices and internal triage protocol
  18. Move the system from test/development to production
  19. Start over when someone changes the application requirements, when a key vendor product is discontinued or EOL prematurely, when a key component vendor is no longer viable

While putting things together from scratch seems like an odd thing to do now, we have been doing this in IT for quite some time. Doesn't make much sense to build your own car "one piece at a time" does it?



Is the Whole more than the Sum of the Parts?

An engineered system combines network, storage, compute and software in a pre-optimized stack that enables IT to cut the time to deploy from months to hours, reduces errors and enables IT personnel and resources to be put to higher value work. You may recognize some precursors to the current generation of engineered systems – Oracle’s Exadata and Exalogic - in the form of Cisco’s Unified Compute System (UCS) and HP with Bladesystem Matrix, and reference configurations, and the V-Block coalition. Of course while the product may be fine, I am not sure how you can actually make a coalition work in the IT business. For one thing, I have heard numerous concerns from customers around accountability: who is accountable to the customer out of the coalition members? EMC? Cisco? Vmware? A reseller?

Systems such as these bring together the building blocks from a hardware perspective to provide a hardware platform for shared infrastructure: bringing together storage, network and server virtualization. They certainly take some of the work out of building IT environments and enable more efficient use of hardware resources through sharing.

The one area that they don’t address is that of configuring the application environments – databases, middleware, packaged and custom applications. These systems consist of multiple software components that need to be configured, typically with high availability, and managed for application-level SLAs.

So while other engineered systems only address the stack up to the operating system level, Oracle’s Engineered systems are designed to deliver all the capabilities required to run an end application – whether it’s a database as a service or data warehousing capability – in the case of Exadata – or an entire Java EE application environment – in the case of Exalogic. Does this really matter though? Cannot you get most of the IT benefits by using other engineered systems and leaving every departmental IT organization to build out and operate their own application stacks themselves?


Which Engineered system is most compelling?

Not all engineered systems are created the same. To see why this is the case, let’s look at some of the results that Oracle’s customers have been achieving with Exadata:

- “With our migration to Exadata V2 we've seen a 17x performance improvement, having made no changes to our application”

- "We implemented it in a record four days from delivery prior to Christmas to provide a dev/test environment to a number of projects," a statement from the bank said….. The machine will enable the Commonwealth Bank to provide database as a service”

- One customer saw processing time drop from 3.5 hours to 27 minutes, while another customer saw a performance boost of 300x - Piper Jaffray

Of course there is a reason why customers are experiencing greater than 10x improvements. The reason that they are able to achieve some outstanding results with Oracle’s Exadata is that the database is designed to work differently in Exadata to take advantage of capabilities such as flash and storage servers. The way that some of these capabilities are leveraged is quite unique – for example the storage servers in Exadata are capable of executing simple database operations – which enables operations such as tables scans to be carried out in parallel! (For those of you that are really curious – this is analogous to a map/ reduce approach).

Can UCS, Bladesystem Matrix, or V-Block deliver such break through capabilities or performance or throughput?

No.

For more on Exadata, take a look at this Information Week interview with Andy Mendelsohn.

Oracle’s engineered system for running application logic is Exalogic, which is designed with four key focal areas in mind:

1) To provide an optimized environment for running Java / Java EE / WebLogic Server applications orders of magnitude faster than comparable hardware

2) To provide an optimized environment for running any application running or leveraging Oracle Fusion Middleware faster with better service levels (for those that know Oracle’s middleware this really is a corollary of #1 above)

3) To provide an optimized environment for running Oracle applications (E-Business Suite, PeopleSoft, JD Edwards, Siebel, etc) with improved performance and manageability

4) To deliver the benefits of consolidated infrastructure (storage, network, compute) that competitive solutions offer for running other packaged or custom applications

In the case of Exalogic – our engineering team has spent more than 100 man years looking at WebLogic Application Server and numerous hardware configurations to figure out how to get more speed and throughput out of Exalogic – capabilities such as GridLink for RAC, JDBC over SDP and a parallel muxer and many more are the way in which Exalogic can also deliver breakthrough performance for applications.

While many “Engineered Systems” deliver some level of engineering to deliver on consolidated infrastructure, Oracle is the only vendor that can turn this into reality by optimizing all the application level software as well to deliver IT cost savings and unprecedented performance and SLAs that no one else can.

Hence, should you be considering evolving your data center to a Private Cloud, there are few choices that deliver IT cost savings and application performance and unmatched service levels. If you want to keep both your IT budget and your business users happy, there are, in fact only two options, and they come as a pair.



It seems that it’s not just we that think that Oracle has a compelling value proposition for the data center. Take a look at this report from Credit Suisse!


The Engineered System that is the most compelling is one that optimizes the entire application stack and integrates it with a balanced hardware environment.

For more about Exalogic and Exadata – take a look at Oracle.com.