Python微信订餐小程序课程视频
https://edu.csdn.net/course/detail/36074
Python实战量化交易理财系统
https://edu.csdn.net/course/detail/35475
1、实时重建索引
在实际的生产环境中,一个field
的设置是不能被修改的,如果要修改一个Field
,那么应该重新按照新的mapping
,建立一个index
,然后将数据批量查询出来,重新用bulk api
写入index
中。
批量查询的时候,建议采用scroll api
,并且采用多线程并发的方式来reindex
数据。例如说每次scoll
就查询指定日期的一段数据,交给一个线程即可。
(1) 一开始,依靠dynamic mapping
,插入数据,但是不小心有些数据是2019-09-10
这种日期格式的,所以title
这种field
被自动映射为了date
类型,实际上它应该是string
类型的。
首先插入以下数据
PUT /my_index/_doc/1
{
"title": "2019-09-10"
}
PUT /my_index/_doc/2
{
"title": "2019-09-11"
}
(2)当后期向索引中加入string
类型的title
值的时候,就会报错
PUT /my_index/_doc/3
{
"title": "my first article"
}
报错
{
"error": {
"root\_cause": [
{
"type": "mapper\_parsing\_exception",
"reason": "failed to parse field [title] of type [date] in document with id '