注意:以下翻译的准确性尚未经过验证。这是使用 AIP ↗ 从原始英文文本进行的机器翻译。
Ontology 管理器应用程序有一个专用的管道图,显示漏斗管道中各种任务的状态。图中的 Object Storage V2 节点上的绿色勾表示索引已完成,对象类型可以从 OSv2 中查询。
OSv1 和 OSv2 的数据验证略有不同。
OSv1 的行为通常由底层数据存储的行为决定,因为它与底层分布式文档存储和搜索引擎紧密耦合。OSv2 具有更严格的验证,以确保进入 Ontology 的数据质量,并在整个系统中提供更确定的行为和更高的可读性,与 OSv1 相比。
因此,一些在 OSv1 上被接受的索引管道在使用 OSv2 时可能会遇到验证错误。有关此类重大更改的详细列表,请参阅 Ontology 在 OSv1 和 OSv2 之间的重大更改 文档。
OSv2 管理任务的所有方面,包括任务重试。如果一个任务因临时错误而失败,该错误可能通过重建任务来解决,OSv2 将在大约五分钟后自动重试该任务。如果 OSv2 检测到任务由于无效的数据格式而终止失败,它将仅在有新数据可用时自动重试。在对象类型由受限视图数据源支持的情况下,当数据或策略更改时会触发任务。
索引大小主要受限于某个给定对象类型被索引到的对象数据库中的存储空间。例如,在 OSv2 数据存储中,这将是搜索节点的磁盘空间。
如果没有足够的磁盘空间,索引任务将不会成功,并将在 Ontology 管理器应用程序中的管道图中报告潜在问题。如果遇到磁盘空间错误,请联系您的 Palantir 代表。
在同步由流数据源支持的对象类型时,有两个阶段:内部流创建和索引。流索引任务的索引延迟与Funnel 批处理管道相当,使用 Spark 大规模并行化历史流数据的初始处理。此索引延迟与用户对实时 Ontology 数据的编辑相当。内部流创建通常是限制因素;它利用我们的流基础设施按每条记录处理数据源。
Funnel 流管道中最耗时的部分是 Flink 检查点,以实现"精确一次"流一致性。默认的检查点频率为每秒一次,因此这是数据到达输入流和被索引到 Ontology 之间的主要延迟。我们进行持续实验,通过减少频率甚至完全移除来评估成本/性能/延迟之间的权衡。
如有必要,联系 Palantir 支持以配置行为。
索引吞吐量限制为每个对象类型每秒 2 MB 进入Object Storage v2 对象数据库。如果您需要更高的索引吞吐量,请联系 Palantir 支持。
不可以,Funnel 流管道在索引时保留输入流的顺序。数据应按顺序写入流。这可以通过在上游流管道中按事件时间戳窗口化数据并指定主键使数据进行哈希分区来完成。
Funnel 流管道支持创建、更新和删除工作流。您可以在变更数据捕获文档中找到有关如何设置删除元数据的更多文档。
目前不可以。解决整个对象应在上游管道中完成。如果stateful streaming由于规模问题不能解决此问题,请联系 Palantir 支持。
可以,支持。了解更多关于如何配置具有流数据源的 Ontology 类型的信息,请参阅我们的文档。
Ontology 流目前仅由 Object Storage v2 对象数据库支持。如果您需要在其他对象数据库中实现此功能,请联系 Palantir 支持。
不支持;由于用户编辑不支持流数据源的对象类型,物化数据集与流中的存档数据集没有区别。根据当前架构,数据集中的去重视图无法提供。
用户无法取消 Funnel 流管道。Funnel 始终保持流活跃,因为生产对象类型需要高可用性。这种设置在原型设计时可能会产生不必要的成本。如果这对您的应用案例构成重大障碍,请联系 Palantir 支持。或者,您可以在原型阶段尝试将对象类型切换为批处理类型。
Funnel 流管道有一个启发式方法来判断其管道是否与替换流“最新”,然后再切换到新的流。您可以通过以下步骤更改数据源以指向不同的流或流的分支:
Funnel 流管道计算方式与普通流资源相同。有关流资源成本的更多信息,请查看我们的流计算使用情况文档。
保留窗口最初作为 Beta 版本期间的数据大小限制机制开发。因此,它仅作为尽力而为的实现。这意味着保留窗口内的对象实例将是可查询的,但保留窗口外的对象实例最终将被删除。例如,如果保留窗口设置为两周,并且流数据源的某个对象实例上次由输入流于三周前更新,则该对象实例可能会从该对象类型中删除。然而,该对象实例也可能在 Ontology 中保留更长时间,并且在任何特定时间范围内都不能保证被移除。
当前用于从 Ontology “清理”旧数据的机制是通过管道替换,默认情况下每两周运行一次。在替换时,Funnel 流管道从保留窗口的开始重播流,从而从 Ontology 中删除较旧的对象实例。如果您需要更定期地删除旧对象实例,请联系 Palantir 支持。
如果未设置保留窗口,则所有来自输入流源的数据将被摄入 Ontology。
在 Ontology 管理器中,您必须始终明确指定您的输入数据源为流;这适用于既具有流数据源的对象类型,也适用于受流支持的受限视图。否则,您的数据源将回退为标准Funnel 批处理管道进行索引。有关详细信息,请查看我们的配置流对象类型文档。
可以,查询 Ontology对于流对象类型和批处理对象类型的工作方式相同。