提交 7f000e79 编写于 作者: X Xu Peng

refactor(db): rename


Former-commit-id: 60c982ed5e500d958182bbc0816731d9423b509a
上级 204c6887
#include <easylogging++.h> #include <easylogging++.h>
#include "Serializer.h" #include "ExecutionEngine.h"
namespace zilliz { namespace zilliz {
namespace vecwise { namespace vecwise {
namespace engine { namespace engine {
Status Serializer::AddWithIds(const std::vector<float>& vectors, const std::vector<long>& vector_ids) { Status ExecutionEngine::AddWithIds(const std::vector<float>& vectors, const std::vector<long>& vector_ids) {
long n1 = (long)vectors.size(); long n1 = (long)vectors.size();
long n2 = (long)vector_ids.size(); long n2 = (long)vector_ids.size();
if (n1 != n2) { if (n1 != n2) {
......
...@@ -8,7 +8,7 @@ namespace zilliz { ...@@ -8,7 +8,7 @@ namespace zilliz {
namespace vecwise { namespace vecwise {
namespace engine { namespace engine {
class Serializer { class ExecutionEngine {
public: public:
Status AddWithIds(const std::vector<float>& vectors, Status AddWithIds(const std::vector<float>& vectors,
...@@ -24,7 +24,7 @@ public: ...@@ -24,7 +24,7 @@ public:
virtual Status Cache() = 0; virtual Status Cache() = 0;
virtual ~Serializer() {} virtual ~ExecutionEngine() {}
}; };
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
#include <wrapper/Index.h> #include <wrapper/Index.h>
#include <cache/CpuCacheMgr.h> #include <cache/CpuCacheMgr.h>
#include "FaissSerializer.h" #include "FaissExecutionEngine.h"
namespace zilliz { namespace zilliz {
namespace vecwise { namespace vecwise {
...@@ -11,30 +11,30 @@ namespace engine { ...@@ -11,30 +11,30 @@ namespace engine {
const std::string IndexType = "IDMap,Flat"; const std::string IndexType = "IDMap,Flat";
FaissSerializer::FaissSerializer(uint16_t dimension, const std::string& location) FaissExecutionEngine::FaissExecutionEngine(uint16_t dimension, const std::string& location)
: pIndex_(faiss::index_factory(dimension, IndexType.c_str())), : pIndex_(faiss::index_factory(dimension, IndexType.c_str())),
location_(location) { location_(location) {
} }
Status FaissSerializer::AddWithIds(long n, const float *xdata, const long *xids) { Status FaissExecutionEngine::AddWithIds(long n, const float *xdata, const long *xids) {
pIndex_->add_with_ids(n, xdata, xids); pIndex_->add_with_ids(n, xdata, xids);
return Status::OK(); return Status::OK();
} }
size_t FaissSerializer::Count() const { size_t FaissExecutionEngine::Count() const {
return (size_t)(pIndex_->ntotal); return (size_t)(pIndex_->ntotal);
} }
size_t FaissSerializer::Size() const { size_t FaissExecutionEngine::Size() const {
return (size_t)(Count() * pIndex_->d); return (size_t)(Count() * pIndex_->d);
} }
Status FaissSerializer::Serialize() { Status FaissExecutionEngine::Serialize() {
write_index(pIndex_.get(), location_.c_str()); write_index(pIndex_.get(), location_.c_str());
return Status::OK(); return Status::OK();
} }
Status FaissSerializer::Cache() { Status FaissExecutionEngine::Cache() {
zilliz::vecwise::cache::CpuCacheMgr::GetInstance( zilliz::vecwise::cache::CpuCacheMgr::GetInstance(
)->InsertItem(location_, std::make_shared<Index>(pIndex_)); )->InsertItem(location_, std::make_shared<Index>(pIndex_));
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
#include <memory> #include <memory>
#include <string> #include <string>
#include "Serializer.h" #include "ExecutionEngine.h"
namespace faiss { namespace faiss {
class Index; class Index;
...@@ -13,9 +13,9 @@ namespace zilliz { ...@@ -13,9 +13,9 @@ namespace zilliz {
namespace vecwise { namespace vecwise {
namespace engine { namespace engine {
class FaissSerializer : public Serializer { class FaissExecutionEngine : public ExecutionEngine {
public: public:
FaissSerializer(uint16_t dimension, const std::string& location); FaissExecutionEngine(uint16_t dimension, const std::string& location);
virtual Status AddWithIds(long n, const float *xdata, const long *xids) override; virtual Status AddWithIds(long n, const float *xdata, const long *xids) override;
virtual size_t Count() const override; virtual size_t Count() const override;
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
#include "MemManager.h" #include "MemManager.h"
#include "Meta.h" #include "Meta.h"
#include "FaissSerializer.h" #include "FaissExecutionEngine.h"
namespace zilliz { namespace zilliz {
...@@ -19,36 +19,36 @@ MemVectors::MemVectors(const std::shared_ptr<meta::Meta>& meta_ptr, ...@@ -19,36 +19,36 @@ MemVectors::MemVectors(const std::shared_ptr<meta::Meta>& meta_ptr,
options_(options), options_(options),
schema_(schema), schema_(schema),
_pIdGenerator(new SimpleIDGenerator()), _pIdGenerator(new SimpleIDGenerator()),
pSerializer_(new FaissSerializer(schema_.dimension, schema_.location)) { pEE_(new FaissExecutionEngine(schema_.dimension, schema_.location)) {
} }
void MemVectors::add(size_t n_, const float* vectors_, IDNumbers& vector_ids_) { void MemVectors::add(size_t n_, const float* vectors_, IDNumbers& vector_ids_) {
_pIdGenerator->getNextIDNumbers(n_, vector_ids_); _pIdGenerator->getNextIDNumbers(n_, vector_ids_);
pSerializer_->AddWithIds(n_, vectors_, vector_ids_.data()); pEE_->AddWithIds(n_, vectors_, vector_ids_.data());
for(auto i=0 ; i<n_; i++) { for(auto i=0 ; i<n_; i++) {
vector_ids_.push_back(i); vector_ids_.push_back(i);
} }
} }
size_t MemVectors::total() const { size_t MemVectors::total() const {
return pSerializer_->Count(); return pEE_->Count();
} }
size_t MemVectors::approximate_size() const { size_t MemVectors::approximate_size() const {
return pSerializer_->Size(); return pEE_->Size();
} }
Status MemVectors::serialize(std::string& group_id) { Status MemVectors::serialize(std::string& group_id) {
group_id = schema_.group_id; group_id = schema_.group_id;
auto rows = approximate_size(); auto rows = approximate_size();
pSerializer_->Serialize(); pEE_->Serialize();
schema_.rows = rows; schema_.rows = rows;
schema_.file_type = (rows >= options_.index_trigger_size) ? schema_.file_type = (rows >= options_.index_trigger_size) ?
meta::GroupFileSchema::TO_INDEX : meta::GroupFileSchema::RAW; meta::GroupFileSchema::TO_INDEX : meta::GroupFileSchema::RAW;
auto status = pMeta_->update_group_file(schema_); auto status = pMeta_->update_group_file(schema_);
pSerializer_->Cache(); pEE_->Cache();
return status; return status;
} }
......
...@@ -19,7 +19,7 @@ namespace meta { ...@@ -19,7 +19,7 @@ namespace meta {
class Meta; class Meta;
} }
class Serializer; class ExecutionEngine;
class MemVectors { class MemVectors {
public: public:
...@@ -47,7 +47,7 @@ private: ...@@ -47,7 +47,7 @@ private:
Options options_; Options options_;
meta::GroupFileSchema schema_; meta::GroupFileSchema schema_;
IDGenerator* _pIdGenerator; IDGenerator* _pIdGenerator;
std::shared_ptr<Serializer> pSerializer_; std::shared_ptr<ExecutionEngine> pEE_;
}; // MemVectors }; // MemVectors
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册