Si cercano programmatori con cui approfondire tematiche riguardanti la ricerca e relativa aggregazione di elementi legati da fattori geografici, temporali, e di specifiche comuni utilizzando elasticsearch per poi salvare le risultanze su Cassandra ed in ultimo gestire code di notifica di eventi tramite Kafka o Akka
I'm providing you specifics about what we would like it to be implemented so that you may better understand our needs and provide us with your point of view based on what you already developed.
Search Engines and Suggestion:
Assuming that each managed entity from the site is geographically located (user - product), you want to get through implementation of some basic Elasticsearch functionality of query and visualization of results, according to the following filters:
• Geographical area (geographic search text to implement the tool Clavin – visual search)
• Time scope (duration. Es: trip of four days, one week etc ...)
• criteria of proximity between users who are interested in same offer travel (eg: search for Tinder in Km)
• Range of costs (budget)
• Criteria related to specific activities or type of trip (es: snorkeling - relaxation)
The products will be preloaded so that they are geo-located and itemized according to your specific needs in order to be indexed according to the criterion of the filters mentioned above.
Once obtained results compatible with the filters / keywords, they will be reported in a separate page where they will be listed by degree of compatibility and where you can take vision of their preview (visual and textual elements)
The results so sought, after their selection, will be saved at the occurrence of certain actions by the user so that will be notified to the user any changes / updates to the happening of a certain event caused by third parties (see FBK notifications)
This opens up a sensitive issue: how to handle the quest for novelty and suggestions based on queries registered, “the query notification”, and the mechanism by which handle notifications.
It should be added as and where to save the data.
We manage information mostly with a defined structure and repeated in time, the choice on
database to be used for saving information may be Cassandra.
So the research will be saved before on Cassandra in order to be notified the changes to Elasticsearch in a second time.
It is believed, therefore, to set up a system based on Cassandra for saving any entity on which you would then lay Elasticsearch as support for the provision of research services and advice as well as for the management of the notifications service.
Like notification shall be deemed to be both the system events both messages, posts and events. So, anything that once took place requires to be notified to one or more recipients through a queue manager notifications.
THEORY: The logical choice would be to involve Kafka and to use the pattern more or less established that sees the union of Kafka, Cassandra, Storm and Akka. This would create a system of collecting, interpreting, and distributing data in real time very efficient.