Linux за българи: Форуми

Програмиране => Web development => Темата е започната от: sandman_7920 в Oct 10, 2008, 14:33



Титла: Mysql Слепване на бинарни данни
Публикувано от: sandman_7920 в Oct 10, 2008, 14:33
Как може да се слепят бинарни данни с най-малко закъснение.
В момента ползвам a=CONCAT(a,CHAR('alabala'));
Максималната дължина на данните е 4610 байта.
Когато данните стигнат до 2500-3000 байта ми отнема о/о 2.5-4 сек.
Прависе insert/update на о/о 6000 записа.
Ето и заявката:

SET @CALC_TS=TRUNCATE(UNIX_TIMESTAMP()/86400,0)*86400;
INSERT INTO table1 (TSTAMP,A,DATA)
        SELECT @CALC_TS AS TS,A,CHAR(table2.TSTAMP,
                                        table2.a ^ 0x55555555,
                                        table2.b ^ 0x55555555,
                                        table2.c ^ 0x5555,
                                        table2.d ^ 0x5555) AS DTA FROM table2
        ON DUPLICATE KEY UPDATE
                DATA=CONCAT(DATA,CHAR(table2.TSTAMP,
                                      table2.a ^ 0x55555555,
                                      table2.b ^ 0x55555555,
                                      table2.c ^ 0x5555,
                                      table2.d ^ 0x5555));

Пояснение:
   table1 TSTAMP,A=primary key
   table1 DATA=varbinary(4610)