Customers often ask me how compatible is TimesTen In-Memory Database with the Oracle Database. The answer, like most things is life is that it depends.
If you are doing OLTP workloads using JDBC, OCI, ODP.NET, Pro*C or PLSQL with compatible data types then TimesTen is highly compatible.
The TimesTen Quickstart Guide provides the instructions to build and run these samples programs.
The Oracle 184.108.40.206 PLSQL language was ported to the TimesTen In-Memory Database.
Since Oracle 220.127.116.11, the same Oracle Instant Client is used for both the Oracle Database and the TimesTen In-Memory Database.
The Oracle Instant Client routes connections to either the Oracle Database or TimesTen In-Memory Database depending on attributes in the tnsnames.ora file or via the easy connect string.
The Oracle 18.104.22.168 OCI Library was ported to the TimesTen In-Memory Database and is part of the Oracle Instant Client.
Oracle SQL APIs such as Pro*C and ODP.NET that are dependent on OCI work with TimesTen as TimesTen supports OCI.
Open Source SQL APIs based on OCI such as Node.js, Ruby-OCI8, Python cx_Oracle 5.3 and ROracle, while currently not supported by Oracle TimesTen, they do appear to work:
This means that for latency critical OLTP applications, that familiar SQL APIs can be used with TimesTen In-Memory Database or TimesTen Application Tier Database Cache.
TimesTen uses the following data types which are compatible with the Oracle Database
- CHARACTER VARYING(n[BYTE|CHAR])
- CHAR VARYING(n[BYTE|CHAR])
- DOUBLE [PRECISION]
- NATIONAL CHARACTER(n)
- NATIONAL CHAR(n)
- NATIONAL CHARACTER VARYING(n)
- NATIONAL CHAR VARYING(n)
- NCHAR VARYING(n)
- NUMBER[(p [,s])]
The following Oracle Data Types are NOT currently supported
- Bfile, Long, Long Raw, Raw, Urowid
- Any-types, Xmltypes, Spatial types, Media types
- TIMESTAMP WITH TIME ZONE
- TIMESTAMP WITH LOCAL TIME ZONE
- User defined types
Although TimesTen is primarily an OLTP RDBMS, it can also do some analytic processing. TimesTen supports the following analytic SQL:
So depending on the SQL API, data types and SQL operations, TimesTen In-Memory Database can be very compatible with the Oracle Database.
Download TimesTen In-Memory Database and give it a try today.
Disclaimer: these are my personal thoughts and do not represent Oracle's official viewpoint in any way, shape, or form.