Index and Query a Document(索引和查询文档)

现在让我们放入一些东西动我们的 customer 索引中去。回想一下前面的内容,为了索引一个文档,我们必须告诉 Elasticsearch 在索引中应该使用哪种类型。

让我们索引一个简单的 customer 文档到 customer 索引中,“external” 类型,与一个为 1ID,如下所示 : 

curl -XPUT 'localhost:9200/customer/external/1?pretty&pretty' -d'
{
  "name": "John Doe"
}'

响应如下 : 

{
  "_index" : "customer",
  "_type" : "external",
  "_id" : "1",
  "_version" : 1,
  "result" : "created",
  "_shards" : {
    "total" : 2,
    "successful" : 1,
    "failed" : 0
  },
  "created" : true
}

从上面我们可以看到一个新的 customer 文档被成功的创建到 customer 索引和 external 类型中。该文档还有一个为 1 的内部 ID,它是我们在索引时指定的。

需要注意的是,在您可以索引文档到 Elasticsearch 之前时,它不需要您首先就明确的创建一个索引。在前面的例子中,Elasticsearch 将自动的创建 customer 索引(如果它事先不存在)。

现在让我们检索我们刚刚索引的文档 : 

curl -XGET 'localhost:9200/customer/external/1?pretty&pretty'

响应如下 : 

{
  "_index" : "customer",
  "_type" : "external",
  "_id" : "1",
  "_version" : 1,
  "found" : true,
  "_source" : { "name": "John Doe" }
}

除了一个字段 found 之外,没有什么特别的东西,它指出了我们使用 ID1 请求的状态,另一个字段,_source,它返回了我们先前步骤中索引的全部的 JSON 文档。