Skip to content

Commit

Permalink
refactor(interactive): Introduce MetaDataStore for Interactive and pr…
Browse files Browse the repository at this point in the history
…ovide file-based implementation (#3696)

Interactive need to maintain the metadata of Graph and Stored
Procedures, which are currently stored as files on disk separately.

We introduce MetaDataStore to govern all metadata storage, querying and
update, and provided a basic implementation based on local file storage.

Support non-blocking graph data loading #3697 
Fix bug #3693
  • Loading branch information
zhanglei1949 committed Apr 16, 2024
1 parent 82a4ea6 commit 4a7e1ab
Show file tree
Hide file tree
Showing 35 changed files with 4,002 additions and 854 deletions.
461 changes: 308 additions & 153 deletions docs/flex/interactive/development/admin_service.md

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions flex/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -14,15 +14,13 @@ option(BUILD_HQPS "Whether to build HighQPS Engine" ON)
option(BUILD_TEST "Whether to build test" ON)
option(BUILD_DOC "Whether to build doc" OFF)
option(BUILD_ODPS_FRAGMENT_LOADER "Whether to build odps fragment loader" OFF)

option(USE_PTHASH "Whether to use pthash" OFF)

#print options
message(STATUS "Build HighQPS Engine: ${BUILD_HQPS}")
message(STATUS "Build test: ${BUILD_TEST}")
message(STATUS "Build doc: ${BUILD_DOC}")
message(STATUS "Build odps fragment loader: ${BUILD_ODPS_FRAGMENT_LOADER}")

message(STATUS "Use pthash indexer : ${USE_PTHASH}")

# ------------------------------------------------------------------------------
Expand Down Expand Up @@ -121,6 +119,7 @@ endif ()
find_package(Boost REQUIRED COMPONENTS system filesystem
# required by folly
context program_options regex thread date_time)
add_definitions("-DBOOST_BIND_GLOBAL_PLACEHOLDERS")

#find arrow----------------------------------------------------------------------
include("cmake/FindArrow.cmake")
Expand Down Expand Up @@ -159,6 +158,7 @@ if (BUILD_DOC)
endif(DOXYGEN_FOUND)
endif()


# Check whether ${CMAKE_SOURCE_DIR}/third_party/single_include/nlohmann/json.hpp exists
if (NOT EXISTS ${CMAKE_SOURCE_DIR}/third_party/nlohmann-json/single_include/nlohmann/json.hpp)
message(FATAL_ERROR "${CMAKE_SOURCE_DIR}/third_party/nlohmann-json/single_include/nlohmann/json.hpp not found, "
Expand Down
2 changes: 0 additions & 2 deletions flex/bin/interactive_server.cc
Original file line number Diff line number Diff line change
Expand Up @@ -120,8 +120,6 @@ void openDefaultGraph(const std::string workspace, int32_t thread_num,
}
LOG(INFO) << "Successfully init graph db for default graph: "
<< default_graph;

server::WorkDirManipulator::SetRunningGraph(default_graph);
}

} // namespace gs
Expand Down
2 changes: 1 addition & 1 deletion flex/bin/load_plan_and_gen.sh
Original file line number Diff line number Diff line change
Expand Up @@ -268,7 +268,7 @@ compile_hqps_so() {
cp ${CMAKE_TEMPLATE_PATH} ${cur_dir}/CMakeLists.txt
# run cmake and make in output path.
pushd ${cur_dir}
cmd="cmake . -DQUERY_NAME=${query_name} -DFLEX_INCLUDE_PREFIX=${FLEX_INCLUDE_PREFIX}"
cmd="cmake . -DQUERY_NAME=${procedure_name} -DFLEX_INCLUDE_PREFIX=${FLEX_INCLUDE_PREFIX}"
# if CMAKE_CXX_COMPILER is set, use it.
if [ ! -z ${CMAKE_CXX_COMPILER} ]; then
cmd="${cmd} -DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER}"
Expand Down
1 change: 1 addition & 0 deletions flex/engines/http_server/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -49,5 +49,6 @@ if (Hiactor_FOUND)
if (OPENTELEMETRY_CPP_FOUND)
target_link_libraries(flex_server otel)
endif()
target_link_libraries(flex_server flex_metadata_store)
install_without_export_flex_target(flex_server)
endif ()
Loading

0 comments on commit 4a7e1ab

Please sign in to comment.