Neo4j資料模型設計

2021-09-23 15:06:54 字數 720 閱讀 5448

開始資料模型設計,一般通過分析業務需求就可以提取出需要建立的節點和關係,然後使用節點和關係畫出框圖,即可完成資料模型的設計。下面通過兩個例項來簡要說明資料模型的設計過程。

在乙個訪問控制系統中,它的業務需求可以簡單地描述為:怎樣控制乙個使用者的訪問許可權。即乙個使用者登入系統後,他對系統的哪些資源具有訪問許可權。通過分析和結合以往的經驗,我們可能需要四個節點,分別是使用者、部門、角色和資源;三個關係,分別是隸屬、擁有和許可權。這樣,我們就可以畫出下圖的使用者訪問控制資料模型。

這個資料模型是否合理、是否符合業務需求?我們可以用這個簡單框圖模擬一下業務流程,簡單地測試一下它的合理性。首先看看從這個框圖中能不能讀出類似這樣的資訊:隸屬於乙個部門的乙個使用者擁有哪些角色就能對哪些資源具有訪問許可權。如果可以,就可以說明這個模型設計是可行的。

很明顯,這個資料模型設計的業務流程是通順的。因為對於這個框圖,我們可以這樣讀出它的流程:部門具有一些隸屬使用者,使用者擁有一些角色,角色對一些資源具有訪問許可權。

有了這個資料模型之後,就可以對節點和關係進行建模了。在建模中再來確定節點和關係的屬性,例如,使用者節點可能需要使用者名稱、密碼、性別、郵箱、建立日期等屬性,同時還要確定關係的對等方式,例如,是一對

一、一對多還是多對多等。對於這個例項來說,使用者與部門的隸屬關係是多對一關係,使用者與角色的擁有關係和角色與資源的許可權關係都是多對多關係。

Neo4j資料模型設計

摘要 資料模型設計是資料建模的第一步,因為neo4j不需要模式結構定義,所以使用簡單框圖就可以為乙個專案或應用設計資料模型。建立資料模型之後,就可以使用sdn進行資料實體建模和一些資料訪問的設計。本文選自 neo4j全棧開發 開始資料模型設計,一般通過分析業務需求就可以提取出需要建立的節點和關係,然...

Neo4j資料模型設計

摘要 資料模型設計是資料建模的第一步,因為neo4j不需要模式結構定義,所以使用簡單框圖就可以為乙個專案或應用設計資料模型。建立資料模型之後,就可以使用sdn進行資料實體建模和一些資料訪問的設計。本文選自 neo4j全棧開發 開始資料模型設計,一般通過分析業務需求就可以提取出需要建立的節點和關係,然...

Neo4j學習(2) Win系統安裝Neo4j

neo4j 是目前最流行的圖形資料庫,支援完整的事務,在屬性圖中,圖是由頂點 vertex 邊 edge 和屬性 property 組成的,頂點和邊都可以設定屬性,頂點也稱作節點,邊也稱作關係,每個節點和關係都可以由乙個或多個屬性。neo4j建立的圖是用頂點和邊構建乙個有向圖,其查詢語言cypher...