我的logicblox程序從一組初始事實和一組規則R開始。它推導出最終的一組事實T'。如何在Logicblox中跟蹤運行?
對於運行,使用了一條規則和幾個事實,它導出了一些新的事實。 如何提取有關執行的運行的所有信息?
提前,是否有可能提取與某些派生事實相關的運行?
我的logicblox程序從一組初始事實和一組規則R開始。它推導出最終的一組事實T'。如何在Logicblox中跟蹤運行?
對於運行,使用了一條規則和幾個事實,它導出了一些新的事實。 如何提取有關執行的運行的所有信息?
提前,是否有可能提取與某些派生事實相關的運行?
我在Logicblox 3.10參考手冊中找到了一個解決方案。 Logicblox 3.10支持記錄和查詢出處。 https://download.logicblox.com/content/docs/core-reference/webhelp/provenance.html#provenance-recording
我不知道Logicblox 4參考手冊中沒有提及它的原因。也許它不再被支持。
取決於您如何評估程序。例如,對於bloxbatch實用程序,請嘗試使用「-logLevel debugDetail @ factbus」標誌來獲取所有規則評估的完整跟蹤/配置文件。這將精確地告訴您如何執行連接(即查詢優化的結果)。如果您想彙總此配置文件以查看哪些規則花費最多時間,則可以使用Thiago Bartolomei的python腳本LogAnalyzer.py(例如,在Doop框架中公開可用,此處爲https://bitbucket.org/yanniss/doop/src/9daaea0b582674603abb2f3e43f73f630ee6d3e1/bin/LogAnalyzer.py)。
我不認爲有一種通用的方法來計算事實的起源,即一組評估產生了具體派生事實的規則,儘管過去已有實驗設施存在。
謝謝你的回答。 「-logLevel debugDetail @ factbus」標誌是有幫助的,但它不完全是我需要的。 我在一本Logicblox教程「LogicBlox,平臺和語言:教程」中發現,他們說「Provenance。Dataloglb包含一個在程序評估期間記錄出處信息的選項」。 有什麼方法可以追蹤出處信息? –