Часто обновляемый CSDL-запрос в DataSift
Наш запрос 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?
1 ответ
Решение
В настоящее время, когда вам нужно "изменить" ваш CSDL, вы должны перекомпилировать определение. Это будет означать получение вашего полного списка ключевых слов и добавление их в определение CSDL. DataSift работает над улучшением этого процесса, позволяя разумнее управлять большими списками ключевых слов, хотя эта функция все еще находится в разработке.