对象字段类型
编辑对象字段类型编辑
JSON 文档本质上是分层的:文档可能包含内部对象,而这些内部对象又可能包含内部对象。
response = client.index( index: 'my-index-000001', id: 1, body: { region: 'US', manager: { age: 30, name: { first: 'John', last: 'Smith' } } } ) puts response
PUT my-index-000001/_doc/1 { "region": "US", "manager": { "age": 30, "name": { "first": "John", "last": "Smith" } } }
在内部,此文档被索引为一个简单的、扁平的键值对列表,类似于以下内容
{ "region": "US", "manager.age": 30, "manager.name.first": "John", "manager.name.last": "Smith" }
上述文档的显式映射可能如下所示
response = client.indices.create( index: 'my-index-000001', body: { mappings: { properties: { region: { type: 'keyword' }, manager: { properties: { age: { type: 'integer' }, name: { properties: { first: { type: 'text' }, last: { type: 'text' } } } } } } } } ) puts response
PUT my-index-000001 { "mappings": { "properties": { "region": { "type": "keyword" }, "manager": { "properties": { "age": { "type": "integer" }, "name": { "properties": { "first": { "type": "text" }, "last": { "type": "text" } } } } } } } }
您不需要显式地将字段 type
设置为 object
,因为这是默认值。