从Solr 6.6参考文档:
managed-schema是Solr默认使用的模式文件的名称,用于支持在运行时通过Schema API或Schemaless Mode功能进行模式更改。如果你选择,你可以显式配置托管模式功能以使用替代文件名,但文件内容仍由Solr自动更新。
schema.xml是模式文件的传统名称,可以由使用ClassicIndexSchemaFactory的用户手动编辑。
如果要使用schema.xml手动编辑架构(尽管不推荐),而不是通过架构api作为托管架构,可以通过在solrconfig.xml中设置架构配置来实现: <schemaFactory class =“ClassicIndexSchemaFactory”/>
托管架构的好处
好处是你可以更安全地更改你的模式,而不必担心输入错误或创建无效模式。如果某些内容无效,API将拒绝你的更改。
架构API还可以在架构发生变化后处理所有核心的重新加载,因此你不必这样做。
托管模式的缺点
你不应该对托管架构进行手动编辑,因此你应该通过API,这使得难以跟踪架构的当前状态(例如,通过版本控制) 注意:Schema API有一个端点用特殊参数获取托管模式 curl http://localhost:8983/solr/<COLLECTION>/schema?wt=schema.xml
注意:如果你有一个schema.xml文件,并且在启动Solr时没有托管模式,并且没有在solrconfig.xml文件中指定schemaFactory,Solr会认为它是托管的,并从你的项目创建managed_schema schema.xml文件,此时你的schema.xml文件不再被读取。托管架构将从此处读取。对schema.xml的进一步更改将被忽略。
注意事项:
1、managed-schema(schema.xml)在语法上差不多