你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

数据目录搜索语法参考

Azure 数据目录 是托管在 Microsoft Azure 中的完全托管服务,充当企业数据源的注册系统和发现系统。 Azure 数据目录具有使技术和非技术用户能够发现、了解和使用数据源的功能。

数据发现的一个重要方面是能够搜索已在 Azure 数据目录 中注册的数据源。 Azure 数据目录具有强大的搜索语法,使用户能够轻松生成返回用户所需数据的查询。

搜索语法概述

Azure 数据目录搜索类似于 Microsoft Windows 和 Microsoft Outlook 使用的搜索,这些工具的用户应该很熟悉。

查询技术

方法 用途 示例
基本搜索 使用一个或多个搜索词的基本搜索。 结果是与一个或多个指定搜索词的属性匹配的所有资产。 sales data
属性范围 仅返回搜索词匹配指定属性的数据源 name:finance
布尔运算符 使用布尔运算扩大或缩小搜索 finance NOT corporate
使用括号分组 使用括号将部分查询分组以实现逻辑隔离,尤其是与布尔运算符结合使用时 name:finance AND (tags:tag1 OR tags:tag2)
比较运算符 针对具有数字和日期数据类型的属性使用比较运算而非相等运算 creationTime>"11/05/2014"

匹配、比较和布尔运算符

关键字/符号 示例 函数
: experts:user@domain.com tags:tag1 使用属性范围并仅返回给定属性包含所搜索文本的资产。 查询的语义为“前缀匹配”。
= name=Sales name="Soft Drink Sales" 允许用户指定完全匹配。 仅返回包含与搜索词值完全相同的属性的资产。
<> experts<>user1 tags<>tag2 “不等于”运算符。 将仅返回那些没有搜索查询中指示的值的资产。
"" "social security" 查找包含确切短语 social security 的项目。 使用引号有一种特殊情况。 如果将引号与属性范围一起使用,则语义是分组的,但不是确切的措辞。 在这种情况下,该行为与指定命名属性两次相同。 示例:name:“social security”查找包含单词 social 的 name 属性或名称属性中带有“安全”一词的任何资产。
() (tags:tag1 AND tags:tag2) OR (name:sales AND database:salesfy15) 在数据库 salesfy15 中查找包含 tag1 和 tag2 或名称为 sales 的项。 通常与布尔运算符结合使用
>,>= timestamp>"11/05/2014" 查找修改日期在 2014/11/05 之后的项目。
<,<= timestamp<"11/05/2014" 查找日期早于 2014/11/05 的项目。
NOT social NOT security 查找包含社交但不包含安全性的项目。
AND social AND security 查找包含社会和安全的项目。
OR social OR security 查找包含社交或安全的项目。
Hsa: has:tags has:description 仅允许筛选并返回 (设置给定属性的资产,或者如果属性表示集合,则它至少) 一个元素。

说明

前缀语义

默认情况下,Azure 数据目录中的所有搜索都是使用一种称为前缀匹配语义的技术完成的。 这意味着任何搜索词在资产属性的开头开始匹配。

例如,请考虑在 Azure 数据目录中注册的两个具有以下名称的虚构资产:

  • SalesData
  • 销售员报价

搜索“sales”将返回这两个资产,因为它们的名称都以单词“sales”开头。 Azure 数据目录的未来版本包括对精确匹配运算符的支持。

属性范围搜索

Azure 数据目录 查询语法支持属性范围。 在当前预览 版中,属性范围区分大小写。 这意味着,为了使查询正常工作,搜索查询中属性的实际大小写必须与索引中的实际大小写匹配。

搜索无效属性 (不存在的属性,) 导致错误。

使用属性范围时,引号的行为方式特殊。 任何其他上下文中的引号表示确切的措辞。 但是,在属性范围中使用引号时,语义是分组的。 例如, name:"Sales Products" 执行自由文本搜索,查找名称属性的内容,查找“Sales”或“Products”。 因此, 的 name:"Sales Products" 语义与 name:Sales name:Products完全相同。

可搜索属性中属性名称的一般原则是 camel 大小写,这意味着第一个字母为小写,然后每个单词的第一个字母都是大写的。

下面列出了最有用的属性。

属性 用途 示例
name 查找搜索词出现在数据源名称中的项 name:finance
description 查找搜索词出现在数据源说明中的项 description:finance
objectType 查找特定对象类型的项,例如表、视图或 KPI objectType:table
sourceType 查找特定数据源类型的项,例如SQL Server或SQL Server Analysis Services多维 sourceType:"tabular"
标记 查找搜索词出现在数据源标记中的项 tags:finance
timestamp 根据项元数据最近修改的日期和时间查找项 timestamp:>"11/05/2014"
lastRegisteredTime 根据注册其元数据的日期和时间查找项 lastRegisteredTime:>"11/05/2014"
friendlyName 查找搜索词出现在数据源友好名称中的项 friendlyName: finance
专家 查找数据源专家与搜索词匹配的项 experts:user@example.com experts:user
termName 查找搜索词出现在应用于数据资产的业务术语表术语中的项 termName:marketing

还可以将以下属性名称与“has:”筛选器一起使用,以检查设置了特定属性的资产。

属性 用途 示例
预览 查找包含预览的项 has:preview
文档 查找包含文档的项目 has:documentation
tableDataProfiles 查找具有表配置文件 (大小、行数等 ) has:tableDataProfiles
columnsDataProfiles 查找具有列数据配置文件的项 (非重复值的数量、min、max 等 ) has:columnsDataProfiles

搜索示例

以下部分演示了一些搜索示例。

返回名称中带有“sales”的所有资产

name:sales

返回 2015 年 4 月 20 日之后注册的所有资产,其中包括任何属性中的“销售”

sales AND lastRegisteredTime&gt;"4/20/2015"

返回包含任何属性中销售额且没有 Q1FY2013 标记的所有资产

sales AND tags&lt;&gt;"Q1FY2013"

返回未分配专家或文档的所有资产

not has:experts and not has:documentation