Subject | RES: [firebird-support] RE: Insert into Large Table is slowly! |
---|---|
Author | Fabiano - Desenvolvimento SCI |
Post date | 2013-09-05T15:28:59Z |
Do you use Classic or SuperServer? Version?
How many cached pages? If you use Classic try increasing page buffers to 2000 and try again.
Let me know the results, thanks.
De:
firebird-support@yahoogroups.com [mailto:firebird-support@yahoogroups.com] Em
nome de chmereles@...
Enviada em: quinta-feira, 5 de setembro de 2013 11:58
Para: firebird-support@yahoogroups.com
Assunto: [firebird-support] RE: Insert into Large Table is slowly!
--- In firebird-support@yahoogroups.com, <firebird-support@yahoogroups.com> wrote:
Hello, every body!
I have a 180GB database. and have a large table in it.
table's DDL is:
Create Table Table1
(
f_MeterID Integer,
f_CMDID smallInt,
f_Time timestamp,
f_Value Numric(12,2),
f_RecTime Timestamp
);
Create Index idx_Table1 on(f_MeterID, f_CMDID, f_Time)
about 50,000 rows be inserted every hour.
about 1.2 millions rows be inserted every day.
about 500 millions rows every year.
CREATE GLOBAL TEMPORARY TableTemp (
f_MeterID Integer,
....
) ON COMMIT DELETE ROWS;
ALTE R INDEX idx_Table1 INACTIVE;
I insert data use follow:
1. start a transaction
2. Insert a batch records into temp table TableTemp, It's structure like table1
3. Insert into Table1 select * from TableTemp
Delete Data From TableTemp
(about 30,000
record every tiime)
USE GLOBAL TEMPORARY
4. commit transaction
ALTER INDEX idx_Table1 ACTIVE
but now, insert data become very slowly.
What should I do?
thanks!
jimmy
Regards.