Oracle SQL Microsoft Graph 連接器
Oracle SQL Microsoft Graph 連接器可讓您的組織從內部部署 Oracle 資料庫探索數據並編制索引。 連接器會在 Microsoft Search 和 Microsoft Copilot 365 中為指定的內容編製索引。 若要讓索引與源數據保持在最新狀態,它支援定期完整和累加編目。 使用 Oracle SQL 連接器,您也可以限制特定使用者的搜尋結果存取權。
本文適用於Microsoft 365 個系統管理員或設定、執行及監視 Oracle SQL Microsoft Graph 連接器的任何人。
功能
- 使用 SQL 查詢為 Oracle SQL 資料庫中的記錄編製索引。
- 使用 SQL 查詢中新增的使用者或群組清單,指定每一筆記錄的訪問許可權。
- 讓使用者在 Copilot 中詢問索引記錄的相關問題。
- 在 Copilot 中使用語意搜尋 ,讓用戶能夠根據關鍵詞、個人喜好設定和社交連線來尋找相關內容。
限制
- Oracle SQL 版本:內部部署資料庫必須執行 Oracle Database 11g 版或更新版本。 連接器支援裝載於 Windows、Linux 和 Azure VM 平臺上的 Oracle 資料庫。
- 為了支援高編目速度和更佳的效能,建置連接器僅支援 OLTP (在線事務處理) 工作負載。 OLAP (在線分析處理) 工作負載,這些工作負載不會在 40 秒逾時後執行提供的 SQL 查詢,且不受支援。
- ACL 僅支援使用使用者主體名稱 (UPN) 、Microsoft Entra ID 或 Active Directory 安全性。
- 不支援在資料庫數據行內編製豐富內容的索引。 這類內容的範例包括 HTML、JSON、XML、Blob,以及作為資料庫數據行內連結存在的檔剖析。
必要條件
- 您必須是組織Microsoft 365 租使用者的 搜尋管理員 。
- 安裝 Microsoft Graph 連接器代理程式:若要存取您的 Oracle SQL Server,您必須安裝並設定連接器代理程式。 若要深入瞭解,請參閱 安裝 Microsoft Graph 連接器代理 程式。
- 服務帳戶:若要連線到您的 SQL 資料庫,並允許 Microsoft Graph 連接器定期更新記錄,您需要具有授與服務帳戶讀取許可權的服務帳戶。
注意事項
如果您在設定 Oracle SQL 連接器時使用 Windows 驗證,則您嘗試登入的使用者必須具有安裝連接器代理程式之電腦的互動式登入許可權。 如需詳細資訊,請參閱 登入原則管理。
開始使用安裝程式
1.顯示名稱
顯示名稱可用來識別 Copilot 中的每個引文,協助使用者輕鬆辨識相關聯的檔案或專案。 顯示名稱也代表受信任的內容。 顯示名稱也會當做 內容來源篩選條件使用。 此欄位有預設值,但您可以將它自定義為組織中用戶可辨識的名稱。
2. SQL伺服器
若要連線到您的 SQL 數據,您必須指定主機名、埠和服務 (資料庫) 名稱。
如果服務名稱無法使用,而且您使用系統標識符聯機 (SID) ,則可以使用下列其中一個命令來衍生服務名稱, (以 sys 系統管理員) 身分執行。
- 從 gv$session 中選取SERVICE_NAME,其中 sid 在 (從 v$MYSTAT) 選取 sid;
- 從雙重選sys_context ('userenv','service_name') ;
3. 圖形連接器代理程式
Graph 連接器代理程式可作為網站實例與連接器 API 之間的橋樑,以啟用安全且有效率的數據傳輸。 在此步驟中,選取您要用於連接器的代理程式組態。
如果您尚未安裝 Microsoft Graph 連接器代理 程式,您可以 下載代理程式安裝程式 ,並遵循安裝指示進行設定。 安裝之後,請確定代理程式已正確設定,以將內部部署網站與連接器連線機。
4.驗證類型
若要從 Oracle SQL 驗證和同步數據,請選擇兩個支援的方法之一:
a. 基本驗證
b. Windows 驗證
5.向有限的物件推出
如果您想要先在 Copilot 和其他搜尋介面中驗證此連線,再將此連線擴充至更廣泛的物件,請將此連線部署至有限的使用者基底。 若要深入瞭解有限的推出, 請按兩下這裡。
內容
若要搜尋資料庫內容,您必須在設定連接器時指定 SQL 查詢。 這些 SQL 查詢需要將您要編製索引的所有資料庫數據行命名 (源屬性) 。 這包括需要執行才能取得所有數據行的任何 SQL 聯結。 若要限制對搜尋結果的存取,您必須在設定連接器時,指定 #D23C426E73D4E4347A08C8C56DB65C717 清單 (ACL) SQL 查詢內。
1.需要完整編目 ()
a.
選 (選) 和 ACL 資料行 (選用資料行)
[按兩下以展開]選取數據行以進行完整編目查詢。
在此步驟中,您會設定執行資料庫完整編目的 SQL 查詢。 完整編目會選取需要在 Microsoft Copilot 或 Search 中呈現的所有數據行或屬性。 您也可以指定 ACL 資料行,將搜尋結果的存取限制為特定使用者或群組。
提示
若要取得您需要的所有資料行,您可以聯結多個數據表。
此範例示範五個數據行的選取範圍,這些數據行會保存搜尋的數據:OrderId、OrderTitle、OrderDesc、CreatedDateTime 和 IsDeleted。 若要設定每個數據列的檢視許可權,您可以選擇性地選取下列 ACL 數據行:AllowedUsers、AllowedGroups、DeniedUsers 和 DeniedGroups。 所有這些數據行也有 查詢、 搜尋、擷 取或 精簡的選項。
選取資料行,如下列範例查詢所示: SELECT orderId, orderTitle, orderDesc, allowedUsers, allowedGroups, deniedUsers, deniedGroups, createdDateTime, isDeleted
SQL 連接器不允許 SELECT 子句中具有非英數位元的數據行名稱。 使用別名,從數據行名稱中移除任何非英數位元。 範例 - SELECT column_name AS columnName
若要管理搜尋結果的存取權,您可以在查詢中指定一或多個 ACL 資料行。 SQL 連接器可讓您控制每個記錄層級的存取權。 您可以選擇對資料表中的所有記錄擁有相同的存取控制。 如果 ACL 資訊儲存在個別的數據表中,您可能必須在查詢中與這些數據表聯結。
上述查詢中每個 ACL 資料行的使用方式如下所述。 下列清單說明四 種訪問控制機制。
- AllowedUsers:此數據行會指定可存取搜尋結果的使用者標識符清單。 在下列範例中,用戶清單: john@contoso.com、 keith@contoso.com和 lisa@contoso.com 只能存取 OrderId = 12 的記錄。
- AllowedGroups:此數據行會指定能夠存取搜尋結果的使用者群組。 在下列範例中,群組 sales-team@contoso.com 只能存取 OrderId = 12 的記錄。
- DeniedUsers:此資料行會指定 無法 存取搜尋結果的用戶清單。 在下列範例中,用戶 john@contoso.com 和 keith@contoso.com 沒有 OrderId = 13 的記錄存取權,而其他人則可以存取此記錄。
- DeniedGroups:此數據行會指定 無法 存取搜尋結果的使用者群組。 在下列範例中,群組 engg-team@contoso.com 和 pm-team@contoso.com 無法存取 OrderId = 15 的記錄,而其他人則可以存取此記錄。
b.
支援的數據類型
[按兩下以展開]支援的數據類型清單。
Oracle SQL Microsoft Graph 連接器支援下列數據類型。 數據表也會摘要說明支援的SQL數據類型的索引數據類型。 若要深入瞭解Microsoft圖形連接器支持的數據類型來編製索引,請參閱 屬性資源類型的檔。
類別 | 源數據類型 | 編製數據類型的索引 |
---|---|---|
數字數據類型 | NUMBER (p,0) | int64 (for p <= 18) p > 18) 的雙 (。 |
浮點數數據類型 | NUMBER (p,s) FLOAT (p) |
雙。 |
日期數據類型 | 日期 時間戳 TIMESTAMP (n) |
datetime。 |
字元數據類型 | CHAR (n) VARCHAR VARCHAR2 長 CLOB NCLOB |
字串。 |
Unicode 字元數據類型 | NCHAR NVARCHAR |
字串。 |
RowID 數據類型 | ROWID UROWID |
字串。 |
針對目前不直接支援的任何其他數據類型,數據行必須明確轉換為支持的數據類型。
c.
浮浮浮水印 (必要)
[按兩下以展開]在完整編目查詢中指定浮浮浮水印數據行
若要防止多載資料庫,連接器會使用完整編目浮浮水印數據行批次並繼續完整編目查詢。 使用浮浮水印數據行的值,會擷取每個後續批次,並從最後一個檢查點繼續查詢。 基本上,此機制會控制完整編目的數據重新整理。
建立浮浮浮水印的查詢代碼段,如下列範例所示:
-
WHERE (CreatedDateTime > @watermark)
. 使用保留關鍵詞@watermark
來寫入浮 如果浮浮水印資料列的排序順序為遞增,請使用>
,否則請使用<
。 -
ORDER BY CreatedDateTime ASC
. 以遞增或遞減順序排序浮水印數據行。
在下圖所示的組態中, CreatedDateTime
是選取的水位線數據行。 若要擷取第一批數據列,請指定浮水印數據行的數據類型。 在這裡情況下,資料類型為 DateTime
。
第一個查詢會使用下列方法擷取前 N 個數據列數:“CreatedDateTime > January 1, 1753 00:00:00” (dateTime 數據類型的最小值) 。 擷取第一個批次之後,如果數據列是以遞增順序排序,則批次中傳回的最高值 CreatedDateTime
會儲存為檢查點。 例如,2019 年 3 月 1 日 03:00:00。 然後在查詢中使用 「CreatedDateTime > March 1, 2019 03:00:00」 擷取下一批 N 個數據列。
2.管理屬性
SQL 連接器會挑選完整編目 SQL 查詢中指定的所有數據行,作為擷取的來源屬性。 在此步驟中,您可以定義內容的搜尋架構。 這牽涉到定義搜尋批注,例如搜尋、擷取、查詢和精簡選取的來源屬性。 這也包括指派語意標籤和別名,以增強搜尋相關性。 若要深入瞭解搜尋架構,請參閱 「管理屬性」指導方針的檔。
3.累加編目 (選用)
a.
累加同步查詢
在這個選擇性步驟中,提供 SQL 查詢來執行資料庫的累加編目。 使用此查詢時,SQL 連接器會決定自上次累加編目之後對數據所做的任何變更。 如同在完整編目中,選取您要選取 [ 查詢]、[ 搜尋]、[擷 取 ] 或 [精簡] 選項的所有數據 行。 指定您在完整編目查詢中指定的同一組 ACL 資料行。
下圖中的元件類似於完整編目元件,但有一個例外狀況。 在此情況下,“ModifiedDateTime” 是選取的水位線數據行。 檢閱完整的編目步驟,以瞭解如何撰寫累加編目查詢,並查看下列影像作為範例。
b. 選擇性) (虛刪除指示
在 SQL 記錄系統中,虛刪除是一種技術,您可以藉由設定特定旗標或數據行,將記錄標示為「已刪除」,而不是實際移除資料庫中的記錄。 這可讓記錄保留在資料庫中,但邏輯上會從大部分的作業中排除。 若要在累加式搜耙期間刪除資料庫中虛刪除的數據列,請指定虛刪除數據行名稱和值,指出數據列已刪除。
使用者
您可以選擇使用 [ 只有可存取此數據源的人員 ] 來限制存取完整編目查詢中選取的使用者或群組,或者您可以覆寫這些使用者,讓 每個人都能看見您的內容。
1.對應包含訪問許可權信息的數據行
選擇指定存取控制機制的各種存取控制 (ACL) 資料行。 選取您在完整編目 SQL 查詢中指定的數據行名稱。 請注意,「拒絕」優先於「允許」許可權。
每個 ACL 資料行都應該是多重值數據行。 您可以使用分號 (;) 、逗號 (、) 等分隔符來分隔這些多個識別碼值。 您必須在值分隔符欄位中指定此 分隔符 。
支援使用下列識別碼類型作為 ACL:
- UPN) (用戶主體名稱 :UPN) (用戶主體名稱是電子郵件位址格式的系統用戶名稱。 例如,UPN (: john.doe@domain.com) 包含使用者名稱 (登入名稱) 、@符号) (分隔符,以及 UPN 後綴) (功能變數名稱。
- Microsoft Entra ID:在 Microsoft Entra ID 中,每個使用者或群組都有類似 'e0d3ad3d-0000-1111-2222-3c5f5c52ab9b' 的物件標識符。
- Active Directory (AD) 安全性標識符:在內部部署 AD 安裝程式中,每個使用者和群組都有不可變的唯一安全標識符,看起來像 'S-1-5-21-3878594291-2115959936-132693609-65242.'
同步處理
重新整理間隔會決定數據源與 Graph 連接器索引之間同步處理資料的頻率。
您可以根據此處的排程選項來設定完整和累加編目。 根據預設,如果每隔 15 分鐘設定一次) ,則累加編目 (,且會設定每天的完整編目。 如有需要,您可以調整這些排程,以符合您的數據重新整理需求。
此時,您已準備好建立 Oracle SQL 的連線。 您可以按下 [建立] 按鈕,從您的資料庫發佈連線和索引數據。
疑難排解
發佈連線之後,您可以在系統管理中心的 [數據源] 索引卷標下檢閱狀態。 若要瞭解如何進行更新和刪除,請參閱 管理您的連接器。 您可以 在這裡找到常見問題的疑難解答步驟。
如果您有問題或想要提供意見反應,請 連絡 Microsoft Graph |支援。