对象类型(Object Type)入门
本体(Ontology)里最核心的一个词就是"对象类型"。这一篇用最生活化的例子,带你看懂它是什么、和数据集有什么关系,以及怎样把一堆数据行整理成清晰的对象类型。
https://www.palantir.com/docs/foundry/object-link-types/object-types-overview/
原始标题:Object types · Overview
一句话速览
对象类型(Object Type)入门:本体(Ontology)里最核心的一个词就是"对象类型"。这一篇用最生活化的例子,带你看懂它是什么、和数据集有什么关系,以及怎样把一堆数据行整理成清晰的对象类型。
一句话说清:对象类型就是现实事物的"模板"
先记住一个定义,后面所有例子都围绕它展开。
在 Palantir Foundry 的本体里,对象类型(object type)是一个"真实世界实体或事件"的结构定义。它规定了"这一类东西"长什么样、有哪些特征,但不关心具体是哪一个。
打个比方:Employee(员工)这个对象类型,定义了"所有员工"长什么样;而"Melissa Chang""Akriti Patel"这些人,就是 Employee 的对象实例(object / object instance)——也就是这个模板下具体的某一个。
它和数据集是同一套思维:三层类比
如果你熟悉表格(数据集),本体只是换了个名字。
本体里的概念,和数据集的结构几乎一一对应。理解这张表,你就理解了一半的本体:
| 本体概念 | 数据集里的对应物 | 一句话解释 |
|---|---|---|
| 对象类型 object type | 整张表的 schema(结构) | "所有员工"这一类事物的定义 |
| 对象 object | 表中的一行 row | 某一个具体员工,如 Melissa Chang |
| 对象集 object set | 筛选后的一组行 | "所有资深员工"这样的一批对象 |
点开下面三层,看看它们各自的角色:
Employee 对象类型,规定了员工要有工号、入职日期、岗位等特征。它对应的是整张员工表的 schema,本身不包含任何具体的人。真实例子:员工(Employee)与航班(Flight)
同一个套路,套到不同业务上长什么样。
官方文档给了两个最经典的例子,我们用它们贯穿全篇:
动手练:把这些数据片段,归到正确的对象类型
左边是一些零散的数据片段,右边是两个候选对象类型。点击左边的片段,看它该归到哪一类——也想清楚:它是"类型"还是"实例"还是"属性值"?
主键:员工工号
主键:航班编号
点击左边任意数据片段,看它该归到哪个对象类型。
一个对象类型由哪些部件构成
在 Ontology Manager 里新建对象类型时,你其实在填这几样东西。
一个可用的对象类型,通常包含以下部件:
- 主键(primary key):唯一标识每个对象的字段,例如员工工号。没有它,系统分不清"哪个是哪个"。
- 标题(title):在界面上给人看的那行字,例如员工姓名、航班号。可以是一到多个属性拼成。
- 属性(properties):描述这个实体的各项特征,如入职日期、岗位、乘客数。
- 图标与颜色:纯展示用,帮助用户在应用里一眼认出这类对象。
- 背后数据源 / 创建方式:对象从哪来?靠数据集接入,还是靠动作(action)创建。
它怎么接上真实数据:backing datasource
本体不是空想的数据模型,它必须映射到你公司的真实数据。
Foundry 的本体之所以有用,是因为它把每个本体概念映射到了组织真实的数据库,从而能驱动真实应用。具体到对象类型,有两条路让对象"活"起来:
Employee 对象类型,已有数据自动变成对象。怎样挑一个好的对象类型:粒度与取舍
不是什么都该建模成对象类型,选对"颗粒度"最重要。
建模时最容易走偏。下面几条经验帮你判断"这个东西该不该是一个对象类型":
- 它得是真实存在的实体或事件。员工、航班、订单、设备——这些是对象类型的好候选。
- 颗粒度要对。把"一次航班"建为对象,比把"航班表"建为对象更合理;对象应对应能被单独指代、单独操作的那一层。
- 它要有稳定的主键。能被唯一辨认,才值得成为对象类型。
- 别把"属性"或"计算结果"当成对象类型。"员工姓名"是属性,"本月销售额"通常是派生值,不应单独成类型。
一页带走
延伸阅读 · 相关页面
按主题横向跳转,不必顺着目录一篇篇读。
常见问题速答 · FAQ
关于「对象类型(Object Type)入门」,读者最常问的几个问题。