将 Flex 表用于 IDOL 数据

您可以创建 Flex 表,将其用于 IDOL 连接器框架服务器 (CFS) 和 ODBC 客户端。CFS VerticaIndexer 模块使用连接器检索数据。然后,CFS 会将数据编制成您的 Vertica 数据库中的索引。

CFS 为许多连接器提供支持,使其能够连接存储库中存储的不同非结构化文件类型。存储库的示例包括 Microsoft Exchange(电子邮件)、文件系统(包括 Word 文档、图像和视频)、Microsoft SharePoint 以及 Twitter(包含推文)。

连接器检索并聚合存储库中的数据。CFS 为数据编制索引,将其发送值 IDOL、IDOL OnDemand 或 Vertica。下图说明了存储库和连接器的基本设置。

配置 CFS 并将其连接到您的 Vertica 数据库后,连接器将监视存储库是否对已加载文档进行更改和删除以及是否存在之前未添加到服务器的新文件。然后,CFS 将自动更新其服务器目标。

在 CFS 不断更新和删除的情况下,要获得最佳查询结果,Vertica 建议使用实时聚合投影和 top-K 投影。有关这些投影如何工作的详细信息和用例,请参阅 投影

适用于 CFS 的 ODBC 连接字符串

要设置 CFS VerticaIndexer 以便将 IDOL 元数据加载到数据库中,需要几个步骤。

首先,要将信息添加到 CFS 配置文件。要实现这一目标,请将一个 Indexing 段添加到指定 ODBC ConnectionString 详细信息的配置文件。

要成功加载数据,有效数据库用户必须具有对目标表的写入权限。两个 ODBC 连接参数(UIDPWD)分别指定 Vertica 用户和密码。以下示例显示了一个示例 CFS Indexing段。该段包含一个带基本参数的 ConnectionString,而基本参数包括示例用户 (UID=fjones) 和密码 (PWD=fjones_password):

[Indexing]
IndexerSections=vertica
IndexTimeInterval=30
[vertica]
IndexerType = Library
ConnectionString=Driver=Vertica;Server=123.456.478.900;Database=myDB;UID=fjones;PWD=fjones_password
TableName = marcomm.myFlexTable
LibraryDirectory = ./shared_library_indexers
LibraryName = verticaIndexer

有关 ODBC 连接参数的详细信息,请参阅 [ODBC 配置参数。](http://vertica.com/docs/7.1.x/HTML/index.htm#Authoring/ConnectingToVertica/ClientODBC/DSNParameters.htm?TocPath=Connecting to HP Vertica|Client Libraries|Creating an ODBC Data Source Name (DSN)|_____4)

CFS COPY LOCAL 语句

CFS 首先为要添加到数据库的文档存储库中的元数据编制索引并对其进行处理。然后,CFS 使用您添加到配置文件的索引信息创建 ODBC 连接。建立连接后,CFS 生成指定 fjsonparser 的标准 COPY LOCAL 语句。CFS 使用如下语句将数据直接加载到预先存在的 Flex 表:

=> COPY myFlexTable FROM LOCAL path_to_compressed_temporary_json_file PARSER fjsonparser();
=> SELECT * FROM myavro;
 __identity__ | __raw__
--------------+---------
(0 rows)

如果 IDOL 元数据出现在 Flex 表中,您可以按照更改 Flex 表中的说明,选择添加新的表列或实体化其他数据。