This content has been marked as final. Show 7 replies
I'm assuming that you are talking about AWT cache groups? If so then TimesTen has an 'aging' mechanism which may work for you but it is fairly 'lazy' (to avoid excessive overhead). If you require more aggressive removal of data then you should implement an additional process or thread in your application which executes 'ULOAD CACHE GROUP WHERE ...' statements to purge a few rows (max couple of hundred) at a time. Note that data cannot be purged in this way until any pending changes have been propagated to Oracle (the UNLOAD will block until that condition is met) hence the recommendation to do this in a separate thread to the main transaction(s).
I am using 32 bit TimesTen database so the data population is max 150k records so can i replicate the data from TimesTen database to Oracle database and clean(flush the data) in TimesTen so that i can ensure that i can insert more data via TimesTen database.What is the task you are trying to resolve? If you need to insert a lot of data in Oracle DB why do you use TimesTen for that? You can insert data in Oracle directly instead of using TimesTen.
What is the task you are trying to resolve? If you need to insert a lot of data in Oracle DB why do you use TimesTen for that? You can insert data in Oracle directly instead of using TimesTen.I expect this question from some one else in the Forum.
The thing is that i need to Insert Millions of data in a single go with less time,I tried with Oracle and TimesTen ,TimesTen is bit faster than Oracle for Inserting the data and where as the replication time and insertion time from TimesTen to Oracle(with replication time) is little bit less when compared to direct oracle insertion.
Thank you for your response.
The thing is that i need to Insert Millions of data in a single go with less time,I tried with Oracle and TimesTen ,TimesTen is bit faster than Oracle for Inserting the data and where as the replication time and insertion time from TimesTen to Oracle(with replication time) is little bit less when compared to direct oracle insertion.I am sorry, but I don't believe you. Lets compare.
1. If you insert data direct in Oracle DB you can use the following options:
- Parallel query (currently TimesTen doesn't support this feature). This feature can significantly improve the performance.
- Direct load (Append hint, SQL*LOader and etc.). You can also can significantly improve the performance.
2. If you insert data in Oracle DB using TimesTen:
Of course, If you insert data into TimesTen it will be very fast, but in this case you can insert only 150k records then you need to do the following:
- moving data from TimesTen to Oracle DB
- flush TimesTen
- start with begin
(you should repeat this cycle a lot of times for loading millions data)
Obviously, the second option would be slower then the first one.
My project does not deals with Parallel query as of nowWhy don't you use that? What is the aim of your project?
I have checked with the replication option from TimesTen to Oracle i am gaining 60 sec for 100 records.60 sec. for inserting 100 records? I think there is a problem with Oracle db server.
If you did not believe please come back with the figure which you have got.Absolutely agree. Test (I use very old desktop and Vmware virtual machine):
11 sec for insert 632797 records. I didn't use parallelism and direct load (Append).
SQL> set timing on SQL> create table test_table as select * from dba_source; Table created. Elapsed: 00:00:11.27 SQL> select count(*) from test_table; COUNT(*) ---------- 632797 Elapsed: 00:00:00.29 SQL>
You have used direct insert method where as in real time it won't be helpful since we are not really depended on direct method.direct methods are used only when we need to have a backup copy of the existing data and not for the real time data as per you example.
I have used .net as the interface to insert the data to database for both Oracle and TimesTen and not the direct method as you have used.
sorry it is 100k records and not 100 records for 60 sec.