我正在运行海洋运营模式,因此我每天都会将新的netCDF文件放入通过opendap TDS和tomcat提供的文件夹中。 完成模型后,旧文件会被新的文件覆盖它们具有相同的名称(!)但似乎服务器没有更新/提供新数据。如果我在系统磁盘文件中执行ncdump,我会得到一个值;如果我通过opendap 使用访问权限相同的ncdump 我有所不同,在我看来它是缓存并保持并且不会像我想的那样刷新。 有没有办法通过TDS opendap tomcat禁用netCDF文件的缓存? 谢谢, 干杯 伊维
答案 0 :(得分:0)
要确保THREDDS数据服务器(TDS)不缓存数据,您可以设置未缓存的datasetRoot。以下是我们用于海洋预测模型的实际示例,其中每天使用相同的名称(此处为NECOFS_GOM2_FORECAST.nc,NECOFS_GOM3_FORECAST.nc等)将新的预测NetCDF文件简单地上传到服务器:
<?xml version="1.0" encoding="UTF-8"?>
<catalog xmlns="http://www.unidata.ucar.edu/namespaces/thredds/InvCatalog/v1.0"
xmlns:xlink="http://www.w3.org/1999/xlink" name="THREDDS Catalog for NetCDF Files" version="1.0.1">
<service name="allServices" serviceType="Compound" base="">
<service name="ncdods" serviceType="OpenDAP" base="/thredds/dodsC/"/>
<service name="HTTPServer" serviceType="HTTPServer" base="/thredds/fileServer/"/>
</service>
<datasetRoot path="FVCOM" location="/http/www/CODFISH/Data/FVCOM/" cache="false"/>
<dataset name="NECOFS GOM2 Forecast" ID="gom2_nocache" serviceName="allServices"
urlPath="FVCOM/NECOFS/Forecasts/NECOFS_GOM2_FORECAST.nc" dataType="Grid"/>
<dataset name="NECOFS GOM3 Forecast" ID="gom3_nocache" serviceName="allServices"
urlPath="FVCOM/NECOFS/Forecasts/NECOFS_GOM3_FORECAST.nc" dataType="Grid"/>
<dataset name="NECOFS MET Forecast" ID="necofs_met" serviceName="allServices"
urlPath="FVCOM/NECOFS/Forecasts/NECOFS_MET_FORECAST.nc" dataType="Grid"/>
<dataset name="NECOFS GOM3 Wave Forecast" ID="necofs_gom3_wave" serviceName="allServices"
urlPath="FVCOM/NECOFS/Forecasts/NECOFS_WAVE_FORECAST.nc" dataType="Grid"/>
<dataset name="NECOFS MASSBAY Forecast" ID="massbay_nocache" serviceName="allServices"
urlPath="FVCOM/NECOFS/Forecasts/NECOFS_FVCOM_OCEAN_MASSBAY_FORECAST.nc" dataType="Grid"/>
</catalog>
有关https://www.unidata.ucar.edu/projects/THREDDS/tech/reference/ThreddsConfigXMLFile.html的更多信息,其中也说“看下面的内容可能无法正常工作”,但肯定它适用于TDS 4.2.9,因为我们在此处使用它:http://www.smast.umassd.edu:8080/thredds/forecasts.html