Sql-Server

圖形數據庫 - 數據建模 - 使用同一條邊連接多對節點?

  • November 6, 2020

我正在嘗試理解這些概念,這些概念適用於使用 Graphs 進行數據建模 - 特別是在 SQL Server 2019 上。

我不確定的一件事是可以使用相同的邊緣來連接不同的節點對:

  • 如果我有三個節點 PowerBI、SSAS、SQL Server
  • 我正在嘗試建模的管道中有兩個“連接到”關係:

Power BI -> SSAS -> SQL Server

  • 我可以使用單個邊緣“連接到”來儲存 Power BI -> SSAS 之間的關係以及 SSAS -> SQL Server 之間的關係,還是應該是兩個單獨的邊緣?

以前,曾在 OLTP 和 OLAP 數據庫上工作過。然而,關於使用圖開發數據模型的最佳實踐的知識似乎要少得多。

這個問題有點不清楚:

如果你有三個不同的節點,那麼在任何兩個節點之間繪製的邊都不相同。您可以在 Neo4j 中為邊緣分配標籤,例如“connects_to”:

(a)-[:connects_to]->(b)->[:connects_to]->(c)

邊 a~b 仍然是與 b~c 不同的邊,儘管它們“共享”相同的標籤。您可能有興趣查看圖論中的概念。另一方面,如果您的意思是如果您可以省略中間標記為 SASS 的節點並使用從“BI”到“SQL Server”的單個邊緣,那完全取決於您計劃實施的內容,我擔心。

在對圖的一般理解中,一條邊連接兩個節點。如果您需要連接兩個以上的節點,那麼對您的 OP 的簡短回答是否定的,您不能將多對與同一條邊連接起來。

不過,為了稍微說明這一點,圖通常以描述在圖模式中可能建立的邊連接的方式構造。在此模式中,您只需要定義一次邊緣可能性,然後在模式類型內對齊的任何節點都可以通過創建模式描述的新邊緣來連接。

對於更多概念,如果您需要將 2 個以上的節點連結在一起,您可能會有一個連接節點的案例。連接節點的工作方式有點像數據透視表的概念,將許多其他節點連接在一起。但是,對於兩種節點類型之間的多對多關係,不需要連接節點,因為許多節點可以通過邊直接連結到許多其他節點。

引用自:https://dba.stackexchange.com/questions/254982