13 October 2017

Learn about Exalytics, Exadata and Exalogic - Oracle

1) What is Oracle Exalytics?

2) What components come with Exalytics?
3) Is there a demonstration of Exalytics anywhere?
4) What is the difference between Exalytics, Exadata and Exalogic?
5) I already have Oracle BI 11g, does Exalytics replace my existing hardware?
6) What is TimesTen?
7) How does the TimesTen in-memory database get populated?
8) Can we cache further data into the in-memory database whilst the system is running?
9) Using the in-memory database seems to be similar to BI Server "caching", is this true?
10) My data is not stored in an Oracle database, can I still use Exalytics?
11) It sounds fantastic, but does Exalytics have any limitations?
12) I don't currently use Essbase, so how would I use the Essbase component on Exalytics?
13) I have more than 1TB of data, can I still use Exalytics?
14) Does Exalytics support real-time Business Intelligence?
15) Does this mean I no longer need a Data Warehouse?
16) With Exalytics can I still use Maps, Mobile Analytics (iPad) and Balance Scorecards?
17) How is Exalytics licensed?
18) I am already licensed for Oracle BI 11g, can I migrate my existing licenses?
19) How has Essbase changed for Exalytics?
20) Once the box arrives, do I have to install Exalytics or is it all pre-installed?
21) What happens if I load in more data than TimesTen's memory capacity?
22) What happens if I reboot the machine, do I lose my in-memory cache?




ANSWERS

1) What is Oracle Exalytics?

Oracle Exalytics is a new "BI machine" designed specifically for Business Intelligence and Enterprise Performance Management. With a massive 1TB RAM and 40 CPU cores, this machine can and will take performance to a level never seen before.

The reason why performance is to extreme is that the Exalytics architecture is designed to store your business intelligence data in main memory, this means response time is dramatically faster with no network latency or disk I/O.

The term "speed of thought" has already been used a lot with Exalytics - this is referring to the fact that your reports run so quickly that they refresh with new data even whilst you are typing in the filter criteria.


2) What components come with Exalytics?

Exalytics is a pre-installed / pre-configured machine running on Linux 64-bit. It comes with 3 main software components:

- Oracle BI Foundation 11g (OBIEE release 11.1.1.6)
- Oracle TimesTen (in-memory database)
- Oracle Essbase 11g (memory optimized)


3) Is there a demonstration of Exalytics anywhere?

Yes, see this recorded demonstration on YouTube: http://www.youtube.com/watch?v=oLLic4ytFsw


4) What is the difference between Exalytics, Exadata and Exalogic?

Fundamentally, the three "Exa" machines built by Oracle are designed to overcome bottlenecks in either one of 3 areas: Memory, Disk, CPU
Memory:
Exalytics is designed to massively boost performance of Business Intelligence queries by processing vast amounts of data in memory
Disk:
Exadata is designed to optimise the performance of large databases where most of the query overhead is experienced whilst reading or writing from disk
CPU:
Exalogic is designed for large application servers (e.g. server farms, data centres, virtualization) with massively parallel and scalable CPU performance


5) I already have Oracle BI 11g, does Exalytics replace my existing hardware?
Yes. Your existing Oracle BI 11g application would be migrated in its entirety to the new Exalytics machine.


6) What is TimesTen?

TimesTen is Oracle's "in-memory" database - this means it stores all its data in memory so there is no disk overhead. Historically TimesTen has been used for applications which require lightning fast real-time data management. For example: Banks would use TimesTen to do fraud checks in a fraction of a second.

With the introduction of Exalytics, TimesTen has been enhanced to support analytical processing for business intelligence queries. For Exalytics, your Oracle BI 11g queries will be directed against the TimesTen in-memory database cache rather than your underlying data sources.

TimesTen also comes with "columnar compression" which means that columns of data (e.g. Customer Name) are compressed at ratios of upto 5x to help expand the amount of data that can be stored in memory.


7) How does the TimesTen in-memory database get populated?

The TimesTen in-memory database actually gets populated dynamically by the Oracle BI 11g server - so you don't have to manually write any scripts. The mechanism is actually an enhanced form of the "Aggregate Persistence Wizard" which has been a feature of Oracle BI since version 10g.

With Exalytics, a "storage advisor" can be used to automatically analyse the usage of your BI deployment (i.e. the queries initiated by your end users) and make recommendations as to what data should be cached in TimesTen. You can then accept these recommendations (if you wish to do so) or you can make your own decisions.

The cache structures within the TimesTen database will reflect the structure of the "Business Model" within your BI Repository (RPD).

So if you have a logical dimension table "Dim - Account" with three columns "Account ID", "Account Name", "Account Type" then a table will exist on the TimesTen in-memory database with a similar structure. Note that if you choose to cache your data at the higher "Account Type" level then obviously the in-memory database will not contain any data for "Account Id" or "Account Name".

For your fact logical tables, the TimesTen in-memory database will also contain tables to cache your logical facts. So there will be columns to store "$ Revenue" and then surrogate keys to join to the related dimension structures on the in-memory database (e.g. for Dim - Account).

The actual physical tables created automatically on TimesTen will have system generated names.


8) Can we cache further data into the in-memory database whilst the system is running?

The answer from Oracle Product Development is "yes". So if a new BI Dashboard is published during the week then you can dynamically start caching the underlying data into the TimesTen in-memory database without any downtime.


9) The in-memory database seems to be similar to BI Server "caching", is this true?

No, not really! BI Server caching is for caching the end results of "Logical SQL" queries. With Exalytics, the TimesTen in-memory database caches data in structures that resemble the Business Model in your RPD.

BI Server caching is optimized for lots of small results sets whereas TimesTen in-memory database can handle upto 5TB of cached data (making use of compression). BI Server caching is also a file-based cache, whereas TimesTen data will reside totally in RAM.

There is no reason however why you should not also use BI Server caching Exalytics - as it will cache the results of any ad hoc or other queries which were previously not sourced directly from the TimesTen in-memory database. The BI Server cache on an Exalytics machine can be tuned to reside on a "RAM disk" so it also benefits from in-memory capability.


10) My data is not stored in an Oracle database, can I still use Exalytics?

Yes, definitely. Because the TimesTen in-memory database is populated through the Oracle BI 11g Server, the underlying data can be stored in just about any type of database.


11) It sounds fantastic, but does Exalytics have any limitations?

So far the signs are extremely positive and Oracle have conducted several successful pilots with "beta" customers. However, there are a few limitations which are worth highlighting, the first of which is common to all "aggregate layers" within a BI architecture:

1) To make use of the TimesTen in-memory database, your calculations must be "additive" i.e. you must be able to accurately derive the calculation results from the data stored in the TimesTen cache. So you will need to take care when performing averages, for example. COUNT DISTINCT operations are also non-additive.

2) In order to make use of the TimesTen in-memory database, you need to bulk load data into it. So this means there will be an extra task at the end of your ETL cycles to repopulate the entire TimesTen cache. Exalytics comes with extremely fast network cards so data transfer can be rapid, and there is even an Infiniband (40GB/s) connection to connect to an Exadata machine. There is a "double buffering" technique with high-availability architectures which could potentially simulate incremental and trickle-feed loading.
UPDATED: Incremental loading for Exalytics is now possible using Peak ETA! Please visit the Peak ETA Product Overview page for details on how Peak ETA can significantly enhance the capabilities provided by the Exalytics "Summary Advisor" by incrementally loading TimesTen in-memory aggregates and in parallel.


3) We have seen that Ragged, Skipped-Level and Parent-Child hierarchies are not supported. So this means only level-based hierarchies are supported, for the time being at least.


12) I don't currently use Essbase, so how would I use the Essbase component on Exalytics?

The memory-optimised Essbase that ships with Exalytics is designed to replace your existing Essbase cubes and boost the performance of your EPM applications. If you don't currently use Essbase then your initial focus should be on the Oracle BI 11g Foundation and TimesTen components of Exalytics. However there is nothing to stop you from using the Essbase functionality whenver it suits you!


13) I have more than 1TB of data, can I still use Exalytics?

First of all, it is worth pointing out that although the Exalytics machine comes with 1TB of RAM, the reality is that around 400GB will be available for your "in-memory" data. The reason is that the TimesTen has two main memory configuration parameters:

- PermSize: The permanent memory region - this is where your data is stored
- TempSize: The temporary memory region (used for sorts etc)

The recommended setting for both of these memory regions will be 400GB, consuming a total of 800GB RAM. This will leave approximately 200GB for OBIEE and any other overheads.

However, despite the 400GB recommended limit, TimesTen also has a compression feature so that you could potentially fit 5x more in to your in-memory cache.

You should also remember that Exalytics is designed to be an "aggregate" layer, so you shouldn't really be thinking about loading ALL you data into the TimesTen in-memory cache. Instead, you should aim to load in as much summarised data as possible.

So if you have >1TB of data then you can still use Exalytics!

NOTE: The memory-optimised Essbase component does not have a compression feature.


14) Does Exalytics support real-time Business Intelligence?

Yes and no. Your Exalytics queries do not all have to come from the TimesTen in-memory database, so you could report directly off your live transactional database and perform real-time BI.

However, as things currently stand, the Exalytics TimesTen in-memory database is not configured for "trickle-feed" incremental loading to support near-real-time BI. So if you need to boost the performance of your real-time database queries then Exalytics may not be the answer for you.

As stated above, there is a "double buffering" technique with high-availability architectures which could potentially simulate incremental and trickle-feed loading.


15) Does this mean I no longer need a Data Warehouse?

Absolutely not! Data Warehouses are fundamental when it comes to data consolodation, cleansing and scalability (for storing enormous quantites of data in a format suitable for reporting purposes).

You should view Exalytics as an "aggregate" or "performance" layer in your architecture - sitting on top of your Data Warehouse (such as Exadata).


16) With Exalytics can I still use Maps, Mobile Analytics (iPad), and Balance Scorecards?

Yes, the entire range of features available with the Oracle BI 11g Foundation suite is supported.


17) How is Exalytics licensed?

As always, you should contact your Oracle Sales Rep to gain full clairity on the license situation. But just as a guidance, licensing will typically be done on a per user basis:

- Minimum 100 named users for both Times Ten & BI Foundation Suite
- Existing customers of OBIEE or BI Foundation Suite can migrate licenses to Exalytics

Exalytics supports clustered solutions for disaster recovery and high availability:

- Requires a minimum of 2 hardware machines
- You need to also have a Weblogic Server Enterprise Edition full license

The accurate pricing is available on Oracle's price list. To avoid reporting incorrect pricing figures, we will not hard code any pricing or links in this FAQ! However, you can search on Google for things such as "exalytics license cost" to get the latest information.


18) I am already licensed for Oracle BI 11g, can I migrate my existing licenses?

Yes, see question 17.


19) How has Essbase changed for Exalytics?

Essbase on Exalytics has a number of optimizations for in-memory operation including improvements to overall storage layer performance, enhancements to parallel operations, enhanced MDX syntax and a high performance MDX query engine. Essbase on Exalytics provides up to 16X faster query execution as well as up to 6X reduction in write-back and calculation operations, including batch processes. These enhancements are particularly important for advanced use cases such as planning and forecasting.


20) Once the box arrives, do I have to install Exalytics or is it all pre-installed?

Once you have the box plugged in you will then need to download and install the Exalytics software components: OBIEE, TimesTen and Essbase (Optional).
There are two main reasons for this:

1) You are always downloading and installing the latest software version
2) You are not tied down to a specific hostname or network configuration

A utility is provided to fully install and configure OBIEE and TimesTen together.


21) What happens if I load in more data than TimesTen's memory capacity?

The short answer to this is that you can't! TimesTen is designed to work with all data in memory. So if TimesTen has 400GB allocated to your data, then you will not be able to load in more than this. If you try then you'll get an error!


22) What happens if I reboot the machine, do I lose my in-memory cache?

Although TimesTen is an in-memory database, the data is actually also stored on disk. So if you reboot the Exalytics machine then you won't lose your data! When you start up the TimesTen services after the reboot it will load all the data from disk into main memory.

NOTE: to avoid data loss/inconsistency you should always shut down TimesTen services gracefully before you reboot the machine.

(If you found this article useful then share with your friends.)

No comments: