2016-03-02 63 views
0

我的logicblox程序從一組初始事實和一組規則R開始。它推導出最終的一組事實T'。如何在Logicblox中跟蹤運行?

對於運行,使用了一條規則和幾個事實,它導出了一些新的事實。 如何提取有關執行的運行的所有信息?

提前,是否有可能提取與某些派生事實相關的運行?

回答

0

取決於您如何評估程序。例如,對於bloxbatch實用程序,請嘗試使用「-logLevel debugDetail @ factbus」標誌來獲取所有規則評估的完整跟蹤/配置文件。這將精確地告訴您如何執行連接(即查詢優化的結果)。如果您想彙總此配置文件以查看哪些規則花費最多時間,則可以使用Thiago Bartolomei的python腳本LogAnalyzer.py(例如,在Doop框架中公開可用,此處爲https://bitbucket.org/yanniss/doop/src/9daaea0b582674603abb2f3e43f73f630ee6d3e1/bin/LogAnalyzer.py)。

我不認爲有一種通用的方法來計算事實的起源,即一組評估產生了具體派生事實的規則,儘管過去已有實驗設施存在。

+0

謝謝你的回答。 「-logLevel debugDetail @ factbus」標誌是有幫助的,但它不完全是我需要的。 我在一本Logicblox教程「LogicBlox,平臺和語言:教程」中發現,他們說「Provenance。Dataloglb包含一個在程序評估期間記錄出處信息的選項」。 有什麼方法可以追蹤出處信息? –