如何更新 Solr 集合中的字段名称?

How to update Field Name in Solr Collection?

我有一个 solr 索引数据如下。 我的要求是将实际上是日期的字段名称 MATERIAL_DOCUMENT_YEAR 更新为 MATERIAL_DOCUMENT_DATE。 数据以百万为单位,重新索引需要更多时间。

Solr UI 有什么方法可以更新字段名称,而无需重新索引整个数据?

{
  "responseHeader":{
    "zkConnected":true,
    "status":0,
    "QTime":39,
    "params":{
      "q":"SOLR_DATA",
      "_":"1607925693065"}},
  "response":{"numFound":129500000,"start":0,"maxScore":5.632038,"docs":[
      {
        "PLANT":["HYD"],
        "STOCK_TYPE":[""],
        "Table_Name":["TBL_MATERIAL_DOC_DISPLAY"],
        "MATERIAL_DOCUMENT_YEAR":["20140312"],
        "MATERIAL_DESCRIPTION":["T-SHIRT-XXL"],
        "MATERIAL_DOCUMENT_NUMBER":["12345678"],
        "MOVEMENT_TYPE":["123"],
        "COST_CENTER":[""],

如果不重新索引和修改 schema.xml,则无法重命名字段 也许您可以添加另一个名称正确的字段。 一旦为所有字段添加了它,您就可以删除之前不正确的字段。

第二个选项是创建另一个具有正确字段名称的集合。 一旦新集合中的所有数据都是最新的,您就可以使用较早的集合名称为其创建别名。

完成上述所有操作后,您就可以删除旧索引...