0

我有以下用于构建数据湖的用例(例如在 Azure 中):

我的组织与破产的公司打交道。一旦公司破产,它需要将所有数据交给我们,包括结构化数据(例如 CSV)以及半结构化和非结构化数据(例如 PDF、Word 文档、图像、JSON、.txt 文件等)。 )。拥有数据湖在这里会有所帮助,因为数据量可能很大且不可预测,而 Azure 数据湖似乎是一种成本相对较低且可扩展的存储解决方案。

但是,除了存储所有这些数据之外,我们还需要为业务用户提供一个工具,使他们能够搜索所有这些数据。我可以想象两种搜索类型:

  • 搜索特定文件(使用文件名或部分文件名作为搜索条件)
  • 搜索所有文本文件(word 文档、.txt 和 PDF)并识别符合搜索条件的文件(例如,正在搜索的特定短语)

是否有任何开箱即用的工具可以使用 Azure Data Lake 作为数据源,使用户能够执行此类搜索?

4

2 回答 2

0

使用 Azure Data Lake 进行认知搜索绝对是一种选择,并且是 Microsoft 推荐的。我们需要考虑的几个因素:

  1. 价格。https://azure.microsoft.com/en-us/pricing/details/search/。不是一个便宜的选择。
  2. 您需要的源数据和索引的大小。
  3. 您对其他开源服务的认可。ELK 是一个流行的全文搜索开源框架。
于 2020-02-15T04:53:22.503 回答
0

不幸的是,目前还没有工具可以帮助您直接在 Data Lake 中过滤文件。

甚至Azure 存储资源管理器也只支持按前缀搜索。

数据工厂支持我们过滤文件,但它通常用于复制和传输数据。参考:数据工厂支持复制活动的通配符文件过滤器

更新:

Azure 认知搜索似乎是一个不错的选择。

认知搜索支持从数据湖导入源,并提供过滤器来帮助我们搜索文件。

筛选器提供用于选择 Azure 认知搜索查询中使用的文档的条件。未过滤的搜索包括索引中的所有文档。过滤器将搜索查询范围限定为文档子集。

我们可以参考Azure 认知搜索中的过滤器

希望这可以帮助。

于 2020-01-08T02:47:19.000 回答