necesita alguna CLAVE ÚNICA en su tabla, si user_url es tweer_url, entonces esto debería encajar (cada tweet tiene una URL única, la identificación sería mejor).
CREATE TABLE `hash` (
`user_url` ...,
...,
UNIQUE KEY `user_url` (`user_url`)
);
y es mejor usar INSERT IGNORE en su caso
$query='INSERT IGNORE INTO hash (tweet, user, user_url) VALUES ("'.$tweet.'", "'.$user.'", "'.$user_url.'")';
ON DUPLICATE KEY es útil cuando necesita actualizar la fila existente pero desea insertar solo una vez