mirror of
https://github.com/apache/doris.git
synced 2026-11-04 07:31:17 +00:00
[refactor](index) Move collection similarity to shared index code (#68602)
### What problem does this PR solve? Problem Summary: `CollectionSimilarity` is used by both inverted-index and SNII query paths, but its source and header live under `storage/compaction`. Move the implementation and its unit test to the shared `storage/index` directory and update direct includes. No scoring logic changes.
This commit is contained in:
12 files changed
+15
-15
No files matched your search
+2
-2
@@ -15,7 +15,7 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
#include "storage/compaction/collection_similarity.h"
|
||||
#include "storage/index/collection_similarity.h"
|
||||
|
||||
#include "core/column/column_nullable.h"
|
||||
#include "core/column/column_vector.h"
|
||||
@@ -165,4 +165,4 @@ void CollectionSimilarity::find_top_k_scores(const roaring::Roaring* row_bitmap,
|
||||
}
|
||||
}
|
||||
|
||||
} // namespace doris
|
||||
} // namespace doris
|
||||
File renamed without changes.
@@ -20,7 +20,7 @@
|
||||
#include <memory>
|
||||
#include <roaring/roaring.hh>
|
||||
|
||||
#include "storage/compaction/collection_similarity.h"
|
||||
#include "storage/index/collection_similarity.h"
|
||||
#include "storage/index/inverted/similarity/collection_statistics.h"
|
||||
|
||||
namespace doris::segment_v2 {
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
#include <memory>
|
||||
#include <roaring/roaring.hh>
|
||||
|
||||
#include "storage/compaction/collection_similarity.h"
|
||||
#include "storage/index/collection_similarity.h"
|
||||
#include "storage/index/inverted/query_v2/weight.h"
|
||||
|
||||
namespace doris::segment_v2::inverted_index::query_v2 {
|
||||
|
||||
@@ -26,7 +26,7 @@
|
||||
#include <string>
|
||||
#include <vector>
|
||||
|
||||
#include "storage/compaction/collection_similarity.h"
|
||||
#include "storage/index/collection_similarity.h"
|
||||
#include "storage/index/inverted/query_v2/weight.h"
|
||||
|
||||
namespace doris::segment_v2::inverted_index::query_v2 {
|
||||
|
||||
@@ -21,7 +21,7 @@
|
||||
#include <utility>
|
||||
|
||||
#include "roaring/roaring.hh"
|
||||
#include "storage/compaction/collection_similarity.h"
|
||||
#include "storage/index/collection_similarity.h"
|
||||
#include "storage/index/inverted/query_v2/bit_set_query/bit_set_scorer.h"
|
||||
#include "storage/index/inverted/query_v2/scorer.h"
|
||||
|
||||
|
||||
@@ -77,12 +77,12 @@
|
||||
#include "runtime/thread_context.h"
|
||||
#include "service/backend_options.h"
|
||||
#include "storage/binlog.h"
|
||||
#include "storage/compaction/collection_similarity.h"
|
||||
#include "storage/id_manager.h"
|
||||
#include "storage/index/ann/ann_index.h"
|
||||
#include "storage/index/ann/ann_index_iterator.h"
|
||||
#include "storage/index/ann/ann_index_reader.h"
|
||||
#include "storage/index/ann/ann_topn_runtime.h"
|
||||
#include "storage/index/collection_similarity.h"
|
||||
#include "storage/index/index_file_reader.h"
|
||||
#include "storage/index/index_iterator.h"
|
||||
#include "storage/index/index_query_context.h"
|
||||
|
||||
+3
-3
@@ -15,7 +15,7 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
#include "storage/compaction/collection_similarity.h"
|
||||
#include "storage/index/collection_similarity.h"
|
||||
|
||||
#include <gtest/gtest.h>
|
||||
|
||||
@@ -643,7 +643,7 @@ TEST_F(CollectionSimilarityTest, LargeDataSparseBitmapTest) {
|
||||
|
||||
for (size_t i = 0; i < NUM_SCORED_ROWS; ++i) {
|
||||
float score = static_cast<float>(i + 1) / static_cast<float>(NUM_SCORED_ROWS);
|
||||
similarity->collect(static_cast<uint32_t>(i * 100), score); // 稀疏分布
|
||||
similarity->collect(static_cast<uint32_t>(i * 100), score);
|
||||
}
|
||||
|
||||
std::vector<uint32_t> all_ids;
|
||||
@@ -763,4 +763,4 @@ TEST_F(CollectionSimilarityTest, LargeDataBoundaryThresholdTest) {
|
||||
}
|
||||
}
|
||||
|
||||
} // namespace doris
|
||||
} // namespace doris
|
||||
@@ -29,7 +29,7 @@
|
||||
#include "io/fs/local_file_system.h"
|
||||
#include "runtime/exec_env.h"
|
||||
#include "runtime/runtime_state.h"
|
||||
#include "storage/compaction/collection_similarity.h"
|
||||
#include "storage/index/collection_similarity.h"
|
||||
#include "storage/index/index_file_reader.h"
|
||||
#include "storage/index/inverted/analyzer/analyzer.h"
|
||||
#include "storage/index/inverted/analyzer/analyzer_provider.h"
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
|
||||
#include "io/fs/local_file_system.h"
|
||||
#include "runtime/exec_env.h"
|
||||
#include "storage/compaction/collection_similarity.h"
|
||||
#include "storage/index/collection_similarity.h"
|
||||
#include "storage/index/index_file_reader.h"
|
||||
#include "storage/index/index_file_writer.h"
|
||||
#include "storage/index/inverted/inverted_index_cache.h"
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
#include <memory>
|
||||
|
||||
#include "common/be_mock_util.h"
|
||||
#include "storage/compaction/collection_similarity.h"
|
||||
#include "storage/index/collection_similarity.h"
|
||||
#include "storage/index/index_query_context.h"
|
||||
#include "storage/index/inverted/similarity/similarity.h"
|
||||
#include "storage/index/inverted/util/mock_iterator.h"
|
||||
@@ -276,4 +276,4 @@ TEST_F(QueryHelperTest, CollectMixedScenario) {
|
||||
ASSERT_TRUE(_context->collection_similarity->_bm25_scores.count(1002) > 0);
|
||||
ASSERT_TRUE(_context->collection_similarity->_bm25_scores.count(2000) > 0);
|
||||
ASSERT_TRUE(_context->collection_similarity->_bm25_scores.count(2001) > 0);
|
||||
}
|
||||
}
|
||||
@@ -31,7 +31,7 @@
|
||||
#include "io/fs/local_file_system.h"
|
||||
#include "runtime/exec_env.h"
|
||||
#include "runtime/runtime_state.h"
|
||||
#include "storage/compaction/collection_similarity.h"
|
||||
#include "storage/index/collection_similarity.h"
|
||||
#include "storage/index/index_file_reader.h"
|
||||
#include "storage/index/index_query_context.h"
|
||||
#include "storage/index/inverted/analyzer/custom_analyzer.h"
|
||||
|
||||
Reference in new issue
Block a user