【发布时间】:2018-11-14 21:51:25
【问题描述】:
我正在尝试在 MarkLogic 中为 JSON 文件创建 TDE。
目的是创建一个模板,然后从 MarkLogic 中提取数据以在 BI 中创建报表。
Marklogic 中的示例文档:
{
"filename": "StudentDetails.txt",
"auditId": "xxxx",
"FileInputTimestamp": "2018-11-14T15:47:40.074",
"FileProcessedTimestamp": "2018-11-14T15:47:40.236",
}
**TDE 我尝试过并且我能够验证它,但是 JSON 文档没有层次结构并且我无法将上下文指定为根节点。 **
xquery version "1.0-ml";
let $my-first-TDE:=
<template xmlns="http://marklogic.com/xdmp/tde">
<context>/</context>
<collections>
<collection>ods_fms_file_audit</collection>
</collections>
<rows>
<row>
<schema-name>File_audit</schema-name>
<view-name>ABaC_View</view-name>
<columns>
<column>
<name>FILE_NAME</name>
<scalar-type>string</scalar-type>
<val>filename</val>
</column>
<column>
<name>AUDIT_ID</name>
<scalar-type>string</scalar-type>
<val>auditId</val>
</column>
</columns>
</row>
</rows>
</template>
return
tde:validate(
$my-first-TDE
)
**这将使用我通过的文档提取模板并且我得到空的结果集。 问题是,我无法在纯 json 中指定根节点。 **
xquery version "1.0-ml";
let $my-first-TDE:=
<template xmlns="http://marklogic.com/xdmp/tde">
<context>/</context>
<collections>
<collection>ods_fms_file_audit</collection>
</collections>
<rows>
<row>
<schema-name>File_audit</schema-name>
<view-name>ABaC_View</view-name>
<columns>
<column>
<name>FILE_NAME</name>
<scalar-type>string</scalar-type>
<val>filename</val>
</column>
<column>
<name>AUDIT_ID</name>
<scalar-type>string</scalar-type>
<val>auditId</val>
</column>
</columns>
</row>
</rows>
</template>
return
tde:node-data-extract(
fn:doc( "/file/StudentDetails.json" ),
$my-first-TDE
)
另外,如果我能知道如何提取 marklogic 输出并将其连接到 POwer BI,那就太好了(或)是否有任何规定可以运行生成我的报告并从 ML 中提取数据的 .xqy。
【问题讨论】:
标签: marklogic