ElasticSearch如何修改mapping

78次阅读
没有评论

共计 1309 个字符,预计需要花费 4 分钟才能阅读完成。

这篇文章将为大家详细讲解有关 ElasticSearch 如何修改 mapping,丸趣 TV 小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

目前网上来讲,具体实现代码很少,我找了好久只找到了 Python 的实现。本文基于 ES 官方代码的 PHP SDK 和 bulk 有一个迁移实现。

?php
require  vendor/autoload.php 
$hosts[hosts] = array(
  host = 127.0.0.1 ,
  port = 9200 ,
  scheme  =   http 
$client = Elasticsearch\ClientBuilder::create()
 - setSSLVerification(false)
 - setHosts($hosts)
 - build();
for ($i = 1; $i  = 10; $i++) { if ($i != 10) { 
 $params[index] =  index-0 .$i; 
 }
 else { $params[ index] =  index- .$i; 
 }
 echo $params[index]. \r\n 
 $params[type] =  raw  
 $params[scroll] =  120s 
 $params[size] = 50000;
 $params[body] = array( 
  query  =  array( 
  match_all  =  array() 
 ) 
 );
 $response = $client- search($params);
 $step = 1;
 while (isset($response[ hits][hits])   count($response[ hits][hits])   0) {
 echo $step++. \t 
 $scroll_id = $response[ _scroll_id  
 unset($response);
 $response = $client- scroll( 
 array( 
  scroll_id  =  $scroll_id,
  scroll  =   120s 
 ) 
 ); 
 if (count($response[ hits][hits])   0) { 
 $bulk = array(index = $params[ index]. -reindex , type = $params[ type 
 foreach ($response[ hits][hits] as $key= $val) { $bulk[ body][]=array( 
  index  =  array( 
  _id = $val[_id]
 ), 
 ); 
 $bulk[body][] = $val[ _source 
 }
 // insert reindex
 $res = $client- bulk($bulk);
 unset($bulk);
 } else { 
 break; 
 } 
 } 
}

关于“ElasticSearch 如何修改 mapping”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-08-25发表,共计1309字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)