我的Endeca App CAS数据已损坏,需要更正。
问题背景:
BCC数据库中的某些产品的显示名称和描述中包含换行符。
例如,这是产品显示名称:“Saregama Carvaan R20005便携式数字音乐播放器。”
早些时候,它在数据库中被称为:“Saregama Carvaan R20005便携式数字音乐播放器”
我已在数据库中更正并完成了索引编制。但是在CAS中,当我读到尺寸时。它没有更新,它有相同的换行符。
"product.displayName","Saregama Carvaan R20005 Portable Digital Music Player
","98987766"
我将更正此换行符并再次导入尺寸。
格式正确:"product.displayName","Saregama Carvaan R20005 Portable Digital Music Player","98987766"
我理解的是CAS尺寸无法接受损坏值的更改,即使它已在数据库中更正。
请告诉我,无论如何,我们可以直接在CAS中操纵数据。
答案 0 :(得分:0)
我在Windows环境中工作,所以我的脚本假设您这样做。或者,概念是相同的,但您只需要将引用更新为基于Unix的。
将此解决方案中的%PROJECTNAME%替换为您的Endeca应用程序的实际名称。
提取CAS数据和状态
c:\Endeca\CAS\11.2.0\bin\cas-cmd.bat exportDimensionValueIdMappings -m %PROJECTNAME%-dimension-value-id-manager -f c:\temp\dimvalidmapping.csv
您的文件现在将包含此元素的多个条目。它看起来可能如下:
...
"product.displayName","Saregama Carvaan R20005 Portable Digital Music Player
","98987766"
...
"product.displayName","Saregama Carvaan R20005 Portable Digital Music Player","12345678"
...
您现在需要决定,是否要为不正确的元素保留现有ID(即98987766),或者是否要保留新ID(在删除源中的换行符之后)数据)?
假设您想要使用收藏的文本编辑器保留原始文件,只需删除该行上的换行符并删除后续的“新”条目。或者,使用换行符删除原始元素。保存文件,然后再次导入。
导入已清理的CAS数据
C:\Endeca\CAS\11.2.0\bin\cas-cmd.bat importDimensionValueIdMappings -m %PROJECTNAME%-dimension-value-id-manager -f c:\temp\dimvalidmapping.csv
如果文件中有更多换行符,您的导入可能会失败。在导入之前,您需要更正它们。重复上面的清理过程。
现在启动一个基线索引,从这一点开始,您应该将名称映射到正确的维度ID。