Tuesday, October 19, 2010

Introduction: Oracle Exalogic Elastic Cloud (E2C)

Cloud Computing is relatively new term for the Information Technology industry but it was first visualized by Douglas Parkhill long back during the childhood of Information Technology Industry in 1966. He visualized it by comparing the hybrid supply models of the other industries like electricity distribution industry.

Cloud computing is a way to provide the shared resources, software and information on-demand to the consumer. It emerged with the internet based tools or applications utilized by browsers. After emergence of Amazon Web Service (AWS) on utility computing infrastructure in year 2006, the cloud computing took its formal and more specific definition. The definition goes like this – “Cloud computing describes a new supplement, consumption, and delivery model for IT services based on the Internet, and it typically involves over-the-Internet provision of dynamically scalable and often virtualized resources.” Recently, during Oracle OpenWorld, 2010, Oracle unveiled its own cloud computing infrastructure called “Oracle Exalogic Elastic Cloud”. IT is built with the similar concept as Amazon EC2 but with the vision of having “private” clouds for the organizations.

The Oracle E2C is a combination of hardware and software optimized for each other to perform better than the existing hardware-software infrastructures available in the market. Oracle has optimized the E2C infrastructure for J2EE based application and also specifically for Oracle’s own Weblogic Suite. In addition, Oracle Fusion Middleware portfolio is also optimized for deployments on E2C. This means that the Oracle E2C is best suited for its own middleware technology stack.

The Exalogic hardware configuration is futuristic where each node in an Exalogic rack consists of two Xeon chips. Each Xeon chip is a 6-core processor running at 2.93 GHz. Each node has redundant InfiniBand connections. Each node also contains two solid-state disks (SSD) for the operating system and for local swap space. A full rack would contain 360 CPU Cores, 2.8 TB (Terabytes, 1 TB = 1024 GB) of RAM, 960 GB of SSD, and 40 TB of SAS (Serial Attached SCSI) disk.

The Oracle E2C can be used as a resource pool and the complete pool can be subdivided in to different secured units dynamically. The communication between these logical units can be controlled to the lowest levels. The individual computer nodes or the IO devices can also be grouped in to logical partition for the better manageability of the application infrastructure. As the capacity/scalability needs changes, the resources can be dynamically reallocated to get the desired performance. The Oracle E2C can scale horizontally which means the scalability doesn’t come with the cost of reduced performance.

As per the statistics from Oracle, the Oracle E2C gives extremely high performance for J2EE applications deployed on Weblogic Server and other Fusion Middleware technologies. The application response times are 14X better, the application capacity is seen increased and database I/Os are reduced significantly(2.3 times better). In addition, Java Messaging applications have shown 4.5X improvements with capacity of over 1.8 Million messages per second as well. According to the data from Oracle Open World Conference, 2010, the single (1 rack) Oracle E2C setup is capable of handling 1 million HTTP requests per second and; two running side by side could handle Facebook’s HTTP request workload!

The Oracle E2C also takes lesser time in setting up, as the infrastructure is already tuned for all the well-known workload types (processing intensive, data intensive, IO Intensive, etc.). More importantly, the only one “fine-tuned” configuration is delivered to the Oracle customers. That essentially means no performance tuning efforts by the individual customers. In addition to this, mission critical application portfolios can get high level of fault tolerance with near-instant failover and 100% application isolation with Oracle E2C which converts to very low risk in terms of business availability and high flexibility for the changing business needs.

Oracle’s Enterprise Manager Software can be used for the Management and Administration of the Oracle E2C. It allows monitoring of every single logical/physical component of the Oracle E2C and also provides options for the Operations team to manage them in case of issues.

It is highlighted that Oracle doesn’t provide the true “elastic” cloud. The Elasticity in the cloud computing world means that the consumers only utilizes the required amount of resources and also pay accordingly. However, Oracle E2C is bought as a part of Enterprise infrastructure beforehand! In addition to that, customers have to buy additional boxes when they want to expand their IT Infrastructure. This does not mean that the Oracle Exalogic machine is poorly suited to a virtualized data center but it is just that the definition of Elasticity is slightly modified here. The Elastic here simply means that the complete IT infrastructure of an organization can utilize the Oracle E2C together!

The Oracle E2C is very new product and definitely needs considerable efforts on POC to estimate the functional and non-functional needs of the specific customers. However, in my opinion, the efforts are worth spending if the customer is planning for its application consolidation and would really like to go the “Cloud Computing” way.