Yahoo ‘ s Bullet kijkt vooruit in het opvragen van gegevens streamen

0
112

0

bullet-logo.png

Een paar maanden terug, we stelden de vraag of de wereld heeft een ander streaming engine. Nu verlengen wij die vraag te bevragen. Vrijwel elke streaming engine is een manier om submit query ‘ s, anders, waarom zou u een streaming engine? Hoewel streaming motoren bieden de belofte van vers real-time gegevens, de lelijke waarheid is dat zij moeten gegevens in de cache eerste. Dat betekent dat de meeste streaming-query motoren moeten kijken terug op gegevens die al zijn verzameld.

Als het bijgehouden betrokkenheid van gebruikers over de eigenschappen voor het Internet, Yahoo op zoek was naar een meer lichtgewicht betekent voor het uitvoeren van de vrij rudimentaire query ‘ s die zijn meestal geworpen op data in beweging, zoals aantallen, gemiddelden, rangen, en de uitkeringen. En gezien de intensiteit van het verkeer, het zocht een middel voor het valideren van de sensoren en instrumentatie pikt deze telt. In feite, validatie werd de primaire use case voor dit nieuwe project.

Het resultaat is de Kogel project, dat Yahoo gewoon als open source vrijgegeven op GitHub. Bullet is een zeer verspreid kader ontworpen voor cloud multi-tenant datacenters die u laten uitvoeren “forward-looking’ query ‘ s. Bullet-query ‘ s uitvoeren op de gegevens die door het systeem nadat u de query. In andere woorden, u een query gegevens die zullen komen, eerder dan de data die is er al. Het ongebruikelijk is voor een open source project, Bullet heeft tevens een visuele gebruikersinterface, zodat je niet per se beperkt tot de commando-regel of third-party tools. En het heeft ook een REST API voor programmatische toegang.

Als een query-engine, Bullet is ontworpen om licht van gewicht, het toevoegen van minimaal bijkomende kosten als u de processtromen. Maar er is een heavy lift die betrokken zijn in dat de ruwe data, opgemaakt als Avro-bestanden, moet worden ontleed in kolommen, die vervolgens kunnen worden getroffen met SQL-query ‘ s die zijn geplaatst sliding time windows.

Kogel kan halen afzonderlijke records; het uitvoeren van aggregaties zoals groeps-bys, bedragen, aantallen, rangen, en gemiddelden. En, voor de gevallen waarin u wilt kalibreren van de software instrumentatie, kan het genereren van histogrammen weergegeven van de verdeling van de werkelijke waarden. En als de torrent van de gegevens is te groot voor geheugen beschikbaar is, kunt u een voorbeeld van het gebruik van de DataSketch bibliotheek die Yahoo ontwikkeld. DataSketches de beste ding om te persistentie in de Kogel, wordt in dat ze cache resultaten (maar niet de ruwe gegevens).

Als Yahoo gemaakt wordt Storm, is het niet verwonderlijk dat de Kogel is geoptimaliseerd voor dat de motor. Maar het kan ook het lezen van Kafka of Goot. Het zou waarschijnlijk niet veel waarde aan zoekmachines zoals Vonk Streaming die beperkt zijn tot microbatching.

Terwijl de Kogel vandaag de dag is beperkt tot een handvol van SQL-query ‘ s in live -, tijd-windowed gegevens, één van de volgende functies die worden toegevoegd is de mogelijkheid voor het streamen van incrementele resultaten van een client-applicatie via de REST-API.

Voor nu, de Kogel is vroeg stadium technologie, beschikbaar als open source via GitHub. Er is geen support door de leverancier en het is geen onderdeel van enig gereedschap, zodat u op uw eigen met betrekking tot het beheren en integreren. Bullet concurreert in een zeer drukke landschap van log monitoring motoren zoals Splunk, Logstash/Elasticsearch, en anderen die in de buurt van real-time mogelijkheden. De uitdaging voor het krijgen van mindshare is, bewijzen de zaak dat toekomstgerichte query ‘ s bieden de rand in het kennen van je klanten door middel van het digitale logboek bestand voetsporen die zij achterlaten.

0