Я работаю над учебными пособиями Azure по потоковой передаче твитов через концентратор событий в блоки данных и через когнитивные службы для анализа настроений ( ссылка на этот ). Это работает нормально, но я хотел бы провести анализ местоположения твита. Учебник только отправляет текст твита (я полагаю) в концентратор событий. Обратите внимание на status.getText () в приведенном ниже коде Scala.
while (!finished) {
val result = twitter.search(query)
val statuses = result.getTweets()
var lowestStatusId = Long.MaxValue
for (status <- statuses.asScala) {
if(!status.isRetweet()){
sendEvent(status.getText(), 5000)
}
lowestStatusId = Math.min(status.getId(), lowestStatusId)
}
query.setMaxId(lowestStatusId - 1)
}
sendEvent находится здесь:
def sendEvent(message: String, delay: Long) = {
sleep(delay)
val messageData = EventData.create(message.getBytes("UTF-8"))
eventHubClient.get().send(messageData)
System.out.println("Sent event: " + message + "\n")
}
Могу ли я также вызвать geoLocation () и отправить его в концентратор событий, чтобы я мог получить геолокацию и / или текст для заданного Чирикать из EventHub позже?
Главным образом интересно, может ли EventData.create () каким-то образом отправлять два "столбца" (свойства) для одной и той же "строки" (отдельное событие).