GDS 会话

class graphdatascience.session.gds_sessions.GdsSessions

用于管理 Neo4j Aura 中托管的 GDS 会话的主要 API 类。

__init__(api_credentials: AuraAPICredentials) None

初始化 GdsSessions 类的实例。

参数:

api_credentials (AuraAPICredentials) – 用于建立连接的 Aura API 凭据。

delete(*, session_name: str | None = None, session_id: str | None = None) bool

通过名称或 ID 删除 GDS 会话。:param session_name: 要删除的会话的名称:param session_id: 要删除的会话的 ID

返回:

如果此调用导致删除会话,则为 True。

estimate(node_count: int, relationship_count: int, algorithm_categories: List[AlgorithmCategory] | None = None) SessionMemory

估计具有给定节点和关系数量的会话所需的内存。

参数:
  • node_count (int) – 节点数量。

  • relationship_count (int) – 关系数量。

  • algorithm_categories (Optional[List[AlgorithmCategory]]) – 要考虑的算法类别。

返回:

会话所需的估计内存。

返回类型:

SessionMemory

get_or_create(session_name: str, memory: SessionMemory, db_connection: DbmsConnectionInfo, ttl: timedelta | None = None, cloud_location: CloudLocation | None = None) AuraGraphDataScience

检索具有给定会话名称和数据库连接的现有会话,或在不存在的情况下创建一个新会话。

如果会话即将到期,将发出警告。

参数:
  • session_name (str) – 会话的名称。

  • memory (SessionMemory) – 由内存指定的会话大小。

  • db_connection (DbmsConnectionInfo) – 数据库连接信息。

  • ttl – Optional[timedelta]: 会话在不活动时的生存时间(以秒为单位)。

  • cloud_location (Optional[CloudLocation]) – 云位置。如果 GDS 会话用于自托管数据库,则需要此参数。

返回:

会话。

返回类型:

AuraGraphDataScience

list() List[SessionInfo]

检索与给定 api-credentials 关联的用户可见的 GDS 会话列表。

返回:

一个 SessionInfo 对象列表,代表 GDS 会话。

class graphdatascience.session.gds_sessions.AuraAPICredentials

表示访问 Aura API 所需的凭据。

client_id

用于身份验证的客户端 ID。

类型:

str

client_secret

用于身份验证的客户端密钥。

类型:

str

tenant_id

用于身份验证的租户 ID。如果客户端属于多个租户,则需要此参数。

类型:

Optional[str]

__init__(client_id: str, client_secret: str, tenant_id: str | None = None) None
class graphdatascience.session.gds_sessions.SessionInfo

表示有关会话的信息。

id

会话的 ID。

类型:

str

name

会话的名称。

类型:

str

memory

会话的大小。

类型:

str

instance_id

会话所连接的 AuraDB 实例的 ID。

类型:

Optional[str]

status

会话的状态。

类型:

str

expiry_date

会话过期日期。

类型:

Optional[datetime]

created_at

会话创建时间。

类型:

datetime

user_id

创建会话的 Aura 控制台用户的 ID。

类型:

str

cloud_location

会话所在的提供商和区域。

类型:

Optional[CloudLocation]

ttl

如果未使用,会话被删除之前的时间。TTL 在每次活动时都会更新。

类型:

Optional[timedelta]

__init__(id: str, name: str, memory: SessionMemoryValue, instance_id: str | None, status: str, expiry_date: datetime | None, created_at: datetime, user_id: str, cloud_location: CloudLocation | None, ttl: timedelta | None = None) None