<object id="xwuag"></object>
      1. <tbody id="xwuag"><pre id="xwuag"><video id="xwuag"></video></pre></tbody>
        <progress id="xwuag"></progress>

        <nav id="xwuag"><big id="xwuag"><rt id="xwuag"></rt></big></nav>
        <em id="xwuag"></em>

        <nav id="xwuag"></nav><rp id="xwuag"></rp>
        <li id="xwuag"></li>
      2. <rp id="xwuag"></rp>
        <s id="xwuag"></s><th id="xwuag"><pre id="xwuag"><video id="xwuag"></video></pre></th>
      3. <nav id="xwuag"><center id="xwuag"></center></nav>
          <dd id="xwuag"><big id="xwuag"></big></dd>

          利用别名实现一个用户一个索引编辑

          为了保持设计的简洁,我们想让我们的应用认为我们为每个用户都有一个专门的索引——或者按照我们的例子每个论坛一个——尽管实际上我们用的是一个大的shared index。 因此,我们需要一种方式将 routing 值及过滤器隐含于 forum_id 中。

          索引别名可以帮你做到这些。当你将一个别名与一个索引关联起来,你可以指定一个过滤器和一个路由值:

          PUT /forums/_alias/baking
          {
            "routing": "baking",
            "filter": {
              "term": {
                "forum_id": "baking"
              }
            }
          }

          现在我们可以将 baking 别名视为一个单独的索引。索引至 baking 别名的文档会自动地应用我们自定义的路由值:

          PUT /baking/post/1 
          {
            "forum_id": "baking", 
            "title":    "Easy recipe for ginger nuts",
            ...
          }

          我们还是需要为过滤器指定 forumn_id 字段,但自定义路由值已经是隐含的了。

          baking 别名上的查询只会在自定义路由值关联的分片上运行,并且结果也自动按照我们指定的过滤器进行了过滤:

          GET /baking/post/_search
          {
            "query": {
              "match": {
                "title": "ginger nuts"
              }
            }
          }

          当对多个论坛进行搜索时可以指定多个别名:

          GET /baking,recipes/post/_search 
          {
            "query": {
              "match": {
                "title": "ginger nuts"
              }
            }
          }

          两个 routing 的值都会应用,返回对结果会匹配任意一个过滤器。

          備份地址:http://www.lvesu.com/blog/es/faking-it.html

          国产成人午夜福利r在线观看_欧美性受xxxx孕妇_白丝娇喘过膝袜爽短裙调教_jizz jizz xxxx