我们的DataSift CSDL查询就是这样:
List<string> keywords=dbAccess.GetAllKeywords(); // there are 100K+ of them
string csKwList="\""+String.Join(",", keywords)+"\"";
string csdl = "facebook.message contains_any "+csKwList;
DataSiftManager.Resubscribe(csdl); //this involves deleting current subscritpion, recompiling a new csdl, and subscribing anew.
这样可行,但每次在列表中添加几个新关键字时,我必须从数据库中提取整个列表。这是不可接受的。
我的问题是,如果我确切地知道在csdl查询中添加和删除了哪些关键字,是否有办法稍微修改当前有效的订阅?
答案 0 :(得分:1)
目前,当您需要修改&#39;你的CSDL,你需要重新编译定义。这意味着抓住完整的关键字列表,并将其添加到您的CSDL定义中。 DataSift正在通过允许更智能地管理大型关键字列表来改进此过程,尽管此功能仍在开发中。