você precisa de alguma CHAVE ÚNICA na sua mesa, se user_url for tweer_url, então isso deve caber (todo tweet tem um url único, id seria melhor).
CREATE TABLE `hash` (
`user_url` ...,
...,
UNIQUE KEY `user_url` (`user_url`)
);
e é melhor usar INSERT IGNORE no seu caso
$query='INSERT IGNORE INTO hash (tweet, user, user_url) VALUES ("'.$tweet.'", "'.$user.'", "'.$user_url.'")';
ON DUPLICATE KEY é útil quando você precisa atualizar a linha existente, mas deseja inserir apenas uma vez