Skip to content
Snippets Groups Projects
Commit 0582dbe4 authored by Janne Mareike Koschinski's avatar Janne Mareike Koschinski
Browse files

Better search ranking

parent d8fae719
No related branches found
No related tags found
No related merge requests found
......@@ -67,7 +67,7 @@ class Database
private function apply_config(\PDOStatement $stmt)
{
$stmt->bindValue(':config_normalization', 32, PDO::PARAM_INT);
$stmt->bindValue(':config_normalization', 4, PDO::PARAM_INT);
$stmt->bindValue(':weight_content', 14, PDO::PARAM_INT);
$stmt->bindValue(':weight_type', 16, PDO::PARAM_INT);
......@@ -262,4 +262,4 @@ class Database
$stmt->execute();
return $stmt->fetchAll(\PDO::FETCH_ASSOC);
}
}
\ No newline at end of file
}
......@@ -68,13 +68,13 @@ class PostgresSmartBackend implements Backend
backlog.message,
query,
(
(ts_rank(tsv, query, :config_normalization) ^ :weight_content) *
(ts_rank_cd(tsv, query, :config_normalization) ^ :weight_content) *
((CASE
WHEN TYPE IN (1, 4) THEN 1.0
WHEN TYPE IN (2, 1024, 2048, 4096, 16384) THEN 0.75
WHEN TYPE IN (32, 64, 128, 256, 512, 32768, 65536) THEN 0.5
WHEN TYPE IN (8, 16, 8192, 131072) THEN 0.25
ELSE 0.1 END) ^ :weight_type) *
WHEN TYPE IN (2, 1024, 2048, 4096, 16384) THEN 0.8
WHEN TYPE IN (32, 64, 128, 256, 512, 32768, 65536) THEN 0.6
WHEN TYPE IN (8, 16, 8192, 131072) THEN 0.4
ELSE 0.2 END) ^ :weight_type) *
((1 / (EXTRACT(EPOCH FROM CURRENT_TIMESTAMP) - EXTRACT(EPOCH FROM TIME))) ^ :weight_time)
) AS rank_value
FROM
......@@ -142,13 +142,13 @@ class PostgresSmartBackend implements Backend
backlog.message,
query,
(
(ts_rank(tsv, query, :config_normalization) ^ :weight_content) *
(ts_rank_cd(tsv, query, :config_normalization) ^ :weight_content) *
((CASE
WHEN TYPE IN (1, 4) THEN 1.0
WHEN TYPE IN (2, 1024, 2048, 4096, 16384) THEN 0.75
WHEN TYPE IN (32, 64, 128, 256, 512, 32768, 65536) THEN 0.5
WHEN TYPE IN (8, 16, 8192, 131072) THEN 0.25
ELSE 0.1 END) ^ :weight_type) *
WHEN TYPE IN (2, 1024, 2048, 4096, 16384) THEN 0.8
WHEN TYPE IN (32, 64, 128, 256, 512, 32768, 65536) THEN 0.6
WHEN TYPE IN (8, 16, 8192, 131072) THEN 0.4
ELSE 0.2 END) ^ :weight_type) *
((1 / (EXTRACT(EPOCH FROM CURRENT_TIMESTAMP) - EXTRACT(EPOCH FROM TIME))) ^ :weight_time)
) AS rank_value
FROM
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment