Overview
The HDC (High-Density Computing) server or cluster is a key component of the Ultipa Powerhouse (v5) architecture, consisting of one or multiple computing nodes optimized for maximum performance and efficiency.
You can project graphsets from the physical storage of the shard servers into the memory of an HDC server, resulting in what are known as HDC projections. These projections enable graph queries and algorithms to run with enhanced performance.
Showing HDC Servers
Retrieves information about all HDC servers:
show().hdc()
Retrieves information about the HDC server named hdc-server-1
:
show().hdc("hdc-server-1")
The information about HDC servers is organized into tables named _hdc
and _projectList_from_<graphName>
. The table _hdc
includes the following fields:
Field |
Description |
---|---|
name |
Name of the HDC server. |
addr |
IP address and port of the HDC server. |
status |
Current state of the HDC server, which can be ACTIVE or DEAD . |
last_heartbeat |
Timestamp of the last heartbeat sent to the meta servers by the HDC server. |
Each table _projectList_from_<graphName>
contains the HDC projections of the graphset <graphName>
created on different HDC servers.
When retrieving a specific HDC server using show().hdc("<hdcName>")
, two supplementary tables are returned:
_graph_from_<hdcName>
: Shows all HDC projections created on<hdcName>
._algoList_from_<hdcName>
: Lists all algorithms installed on<hdcName>
.
Adding an HDC Server
After successfully deploying a new HDC server, it must be registered with the meta servers using the alter().hdc().add()
clause before it can be utilized. This process ensures that the new HDC server is recognized within the system.
The following example adds an HDC server with the name hdc-server-2
and the address 127.0.0.1:55555
:
alter().hdc().add({name: "hdc-server-2", addr: "127.0.0.1:55555"})
Deleting an HDC Server
You can unregister an inactive or obsolete HDC server from the meta servers using the alter().hdc().delete()
clause.
The following example deletes the HDC server with the name hdc-server-2
:
alter().hdc().delete({name: "hdc-server-2"})