PHP Duplikaterkennung

dotaachen

B1G-Software-Kunde
#1
Hallo,

ich habe ein Plugin geschrieben, dass Nachrichten mittels RSS abruft und in eine Datenbank schreibt. Dabei kann es passieren das es Duplikate gibt.

Leider braucht das Plugin sehr lange.
Habt ihr eine Idee wie man dies evtl. bschleunigen könnte?
Evtl. einen Index auf link und title anlegen?
Oder link und title als md5 in eine andere Tabele?

Bisher sieht es so aus:
PHP:
function isDuplicate($title, $link)
	{
		global $db;
		$res = $db->Query('SELECT * FROM {pre}mod_feednews_news WHERE (link=? OR title=?) AND datum>=(unix_timestamp()-(24*60*60))',
			$link,
			$title);
		if($res->RowCount() >= 1)
		{
			$res->Free();
			return(true);
		} else {
			$res->Free();
			return(false);
		}
	}
Mfg
Peter
 

UNC

B1G-Software-Kunde
#2
Einträge in einem RSS-Feed haben üblicherweise einen GUID. Ich würde den hashen, in ein Feld mit fixer Länge und Index speichern und dann so prüfen.
 
Top