提交 771155df 编写于 作者: X Xu Peng 提交者: xj.lin

feat(cpp/db): meta schema update


Former-commit-id: de373b37b4132f5f62818216728fa29564a43927
上级 1fc48aaa
...@@ -3,6 +3,8 @@ ...@@ -3,6 +3,8 @@
#include <string> #include <string>
#include "options.h" #include "options.h"
#include "db_meta.h"
#include "status.h"
namespace zilliz { namespace zilliz {
namespace vecwise { namespace vecwise {
...@@ -14,8 +16,23 @@ class DB { ...@@ -14,8 +16,23 @@ class DB {
public: public:
static DB* Open(const Options& options_, const std::string& name_); static DB* Open(const Options& options_, const std::string& name_);
virtual std::string add_group(GroupOptions options_, virtual Status add_group(GroupOptions options_,
const std::string& group_id_) = 0; const std::string& group_id_,
GroupSchema& group_info_) = 0;
virtual Status get_group(const std::string& group_id_, GroupSchema& group_info_) = 0;
virtual Status has_group(const std::string& group_id_, bool& has_or_not_) = 0;
virtual Status add_group_file(const std::string& group_id_,
GroupFileSchema& group_file_info_) = 0;
virtual Status has_group_file(const std::string& group_id_,
const std::string& file_id_,
bool& has_or_not_) = 0;
virtual Status get_group_file(const std::string& group_id_,
const std::string& file_id_,
GroupFileSchema& group_file_info_) = 0;
virtual Status get_group_files(const std::string& group_id_,
GroupFilesSchema& group_files_info_) = 0;
DB() = default; DB() = default;
DB(const DB&) = delete; DB(const DB&) = delete;
......
...@@ -3,7 +3,9 @@ ...@@ -3,7 +3,9 @@
#include <mutex> #include <mutex>
#include <condition_variable> #include <condition_variable>
#include <memory>
#include "db.h" #include "db.h"
#include "memvectors.h"
namespace zilliz { namespace zilliz {
namespace vecwise { namespace vecwise {
...@@ -40,6 +42,8 @@ private: ...@@ -40,6 +42,8 @@ private:
bool _bg_compaction_scheduled; bool _bg_compaction_scheduled;
Status _bg_error; Status _bg_error;
MemManager _memMgr;
}; // DBImpl }; // DBImpl
} // namespace engine } // namespace engine
......
...@@ -33,7 +33,9 @@ typedef std::vector<GroupFileSchema> GroupFilesSchema; ...@@ -33,7 +33,9 @@ typedef std::vector<GroupFileSchema> GroupFilesSchema;
class Meta { class Meta {
public: public:
virtual Status add_group(const std::string& group_id_, GroupSchema& group_info_) = 0; virtual Status add_group(const GroupOptions& options_,
const std::string& group_id_,
GroupSchema& group_info_) = 0;
virtual Status get_group(const std::string& group_id_, GroupSchema& group_info_) = 0; virtual Status get_group(const std::string& group_id_, GroupSchema& group_info_) = 0;
virtual Status has_group(const std::string& group_id_, bool& has_or_not_) = 0; virtual Status has_group(const std::string& group_id_, bool& has_or_not_) = 0;
...@@ -45,8 +47,7 @@ public: ...@@ -45,8 +47,7 @@ public:
virtual Status get_group_file(const std::string& group_id_, virtual Status get_group_file(const std::string& group_id_,
const std::string& file_id_, const std::string& file_id_,
GroupFileSchema& group_file_info_) = 0; GroupFileSchema& group_file_info_) = 0;
virtual Status mark_group_file_as_index(const std::string& group_id_, virtual Status update_group_file(const GroupFileSchema& group_file_) = 0;
const std::string& file_id_) = 0;
virtual Status get_group_files(const std::string& group_id_, virtual Status get_group_files(const std::string& group_id_,
GroupFilesSchema& group_files_info_) = 0; GroupFilesSchema& group_files_info_) = 0;
......
...@@ -14,7 +14,9 @@ Status DBMetaImpl::initialize() { ...@@ -14,7 +14,9 @@ Status DBMetaImpl::initialize() {
return Status.OK(); return Status.OK();
} }
Status DBMetaImpl::add_group(const std::string& group_id_, GroupSchema& group_info_) { Status DBMetaImpl::add_group(const GroupOptions& options_,
const std::string& group_id_,
GroupSchema& group_info_) {
//PXU TODO //PXU TODO
return Status.OK(); return Status.OK();
} }
...@@ -55,8 +57,7 @@ Status DBMetaImpl::get_group_files(const std::string& group_id_, ...@@ -55,8 +57,7 @@ Status DBMetaImpl::get_group_files(const std::string& group_id_,
return Status.OK(); return Status.OK();
} }
Status DBMetaImpl::mark_group_file_as_index(const std::string& group_id_, Status DBMetaImpl::update_group_file(const GroupFileSchema& group_file_) {
const std::string& file_id_) {
//PXU TODO //PXU TODO
return Status.OK(); return Status.OK();
} }
......
...@@ -12,7 +12,9 @@ class DBMetaImpl : public Meta { ...@@ -12,7 +12,9 @@ class DBMetaImpl : public Meta {
public: public:
DBMetaImpl(DBMetaOptions& options_); DBMetaImpl(DBMetaOptions& options_);
virtual Status add_group(const std::string& group_id_, GroupSchema& group_info_) override; virtual Status add_group(const GroupOptions& options_,
const std::string& group_id_,
GroupSchema& group_info_) override;
virtual Status get_group(const std::string& group_id_, GroupSchema& group_info_) override; virtual Status get_group(const std::string& group_id_, GroupSchema& group_info_) override;
virtual Status has_group(const std::string& group_id_, bool& has_or_not_) override; virtual Status has_group(const std::string& group_id_, bool& has_or_not_) override;
...@@ -24,8 +26,7 @@ public: ...@@ -24,8 +26,7 @@ public:
virtual Status get_group_file(const std::string& group_id_, virtual Status get_group_file(const std::string& group_id_,
const std::string& file_id_, const std::string& file_id_,
GroupFileSchema& group_file_info_) override; GroupFileSchema& group_file_info_) override;
virtual Status mark_group_file_as_index(const std::string& group_id_, virtual Status update_group_file(const GroupFileSchema& group_file_) override;
const std::string& file_id_) override;
virtual Status get_group_files(const std::string& group_id_, virtual Status get_group_files(const std::string& group_id_,
GroupFilesSchema& group_files_info_) override; GroupFilesSchema& group_files_info_) override;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册