根据环境变量将数据存储在不同位置的Solr核心中
Storing data in Solr core at different location based on environment variable
我正在研究 Java Spring 启动 Web 应用程序。我在 Solr 中存储一些数据。我在 application.properties
中定义的根目录中有许多不同的 Solr 内核。我的应用程序工作正常。现在我需要 运行 应用程序作为具有给定环境变量的 docker 容器。这些变量之一将指示将来自一个特定 Solr Core 的某些数据存储在何处,例如。 Core1
。这个核心永远是同一个,只是位置不同。
在实践中,我有一些数据,我使用但没有存储在任何地方。此数据分为 10 种不同“类型”的数据。例如,我正在存储 Person
个对象,但我有 10 个不同的国籍。现在我需要将它保存到 solr core Core1
,但我想按这些国籍划分它,所以我会有 10 个不同的文件夹和数据。比方说,我想通过某种控制器将这些处理后的数据导出到某个地方。到目前为止,我不确定是独立存储并导出数据本身,还是包含该数据的整个 Core 更好。不确定哪个更好,甚至更可行。
我很难弄清楚如何以某种方式配置 Solr,它会根据给定的环境变量将数据存储在不同的文件夹中。
我试图在 Core1
Solr Core 的 core.properties
文件中定义 dataDir
属性,如下所示:
dataDir=${SOLR_DATA}/data
然后在 Windows 中将 ${SOLR_DATA}
变量定义为环境变量,甚至重新启动了 PC,但我的 Spring 启动应用程序仍然崩溃,错误是没有系统变量名字.
事实证明,我的问题很不合适,我的问题是以完全不同的方式解决的。我们创建了 Docker 容器并将路径作为参数传递给外部 SolrCore。
我正在研究 Java Spring 启动 Web 应用程序。我在 Solr 中存储一些数据。我在 application.properties
中定义的根目录中有许多不同的 Solr 内核。我的应用程序工作正常。现在我需要 运行 应用程序作为具有给定环境变量的 docker 容器。这些变量之一将指示将来自一个特定 Solr Core 的某些数据存储在何处,例如。 Core1
。这个核心永远是同一个,只是位置不同。
在实践中,我有一些数据,我使用但没有存储在任何地方。此数据分为 10 种不同“类型”的数据。例如,我正在存储 Person
个对象,但我有 10 个不同的国籍。现在我需要将它保存到 solr core Core1
,但我想按这些国籍划分它,所以我会有 10 个不同的文件夹和数据。比方说,我想通过某种控制器将这些处理后的数据导出到某个地方。到目前为止,我不确定是独立存储并导出数据本身,还是包含该数据的整个 Core 更好。不确定哪个更好,甚至更可行。
我很难弄清楚如何以某种方式配置 Solr,它会根据给定的环境变量将数据存储在不同的文件夹中。
我试图在 Core1
Solr Core 的 core.properties
文件中定义 dataDir
属性,如下所示:
dataDir=${SOLR_DATA}/data
然后在 Windows 中将 ${SOLR_DATA}
变量定义为环境变量,甚至重新启动了 PC,但我的 Spring 启动应用程序仍然崩溃,错误是没有系统变量名字.
事实证明,我的问题很不合适,我的问题是以完全不同的方式解决的。我们创建了 Docker 容器并将路径作为参数传递给外部 SolrCore。