Apache Pil: Den lille data-accelerator, der kunne

0
172
arrow.png

For et par år tilbage, bemærkede vi, fremkomsten af Apache Pil; hvad pikeret vores opmærksomhed var, at bagmænd bestod af “en hvem er hvem-liste” med over 20 deltagere fra kan lide af Cloudera, MapR, Hortonworks, Salesforce.com, DataStax, Twitter, AWS, og Dremio.

Som vi har karakteriseret det så, Arrow var omkring big data, næsten bogstaveligt, foring sin duck op i en… kolonne. Pil er en standard kolonneformat for vedvarende data effektivt i hukommelsen. Man skulle tro, at in-memory beregne ville blot brute force-præstation, som var en af de oprindelige trækker Spark. Men hukommelse er ikke bare en hurtig sort boks. Der er et trick til indlæsning af data, så det kan læses effektivt; det er derfor, udviklere ofte løb tør for hukommelse.

Udfordringen med at balancere, i dette tilfælde indlæsning af data i hukommelsen og fodring af data fra hukommelse til at beregne er symptom på et større gammelt problem, som vi har brugt til at henvise til som balancen i systemet. For år, Teradata, der sælges forskellige data warehousing apparater, der er designet for data-intensive, dataintensive, eller blandet arbejdsbyrde scenarier. Bare fordi vi enten har bragt beregne på data, som i Hadoop klynger, eller adskilt data fra compute, som i skyen, udfordringen er stadig den samme. I virkeligheden, det vokser endnu mere kompliceret, når du har problemer, der virkelig tager ressource krav til mix: dyb læring AI problemer, at stykket masser af data, mens du bruger særlige GPU hardware til at beregne.

Apache Pil blev udtænkt til at løse en balance system problem for data forskere: at sikre, at de ikke løber tør for hukommelse, når du kører deres modeller eller køre ud af budgettet, fordi de overallocated hukommelse. Dette var ikke en indbildt problem. For Wes McKinney -, Python-og seriel open source-udvikler, der har skabt den Pandaer analyse af data bibliotek for Python (blandt andre projekter), det var den frustration, for at ramme den hukommelse væggen. Han lærte på den hårde måde, at hvis du havde et stort datasæt, du må hellere afsætte mindst 5 – 10 gange mængden af RAM til det. Der skulle være en bedre måde at reducere den retssag, fejl, omkostninger og kompleksitet for at flytte data ind i hukommelsen og få adgang til det.

McKinney, der er i dag direktør for Ursa Labs, og Jacques Nadeau, CTO i Dremio, hjalp med at lancere Pil, som blev en Apache-projektet tilbage i 2016. Pil fik understøttes af en kritisk masse af big data open source-projekter fra get-go: Hadoop økosystem, Spark, Storm, Cassandra, Pandaer, HBase, og Kudu. Den kan læse data fra populære opbevaring formater såsom Apache Parket -, CSV-filer, Apache ORC, og JSON. Sin oprindelige støtte til Python er vokset til 11 programmering sprog, blandt dem, C++, Java, Python, R, C#, JavaScript, Ruby. Når det er installeret, for eksempel med Gnist, det har været benchmarkes som en forbedring af ydeevne op til 25x.

I betragtning af den brede støtte, Apache-projektet side notering et udsnit af produkter og projekter ved hjælp af Pil er en smule påklistret, som nogle af dem er velkendte navne. Som eksempler kan nævnes Fletcher, en ramme for at konvertere en Pil skema til at arbejde med Fpga ‘ er; Graphistry, en visuel undersøgelse, platform, der anvendes for sikkerhed, bekæmpelse af svig, og relaterede undersøgelser, og Ray, en high-performance fordelt udførelse ramme, der er designet til machine learning og AI-programmer. Men hvor der er røg, er der ild; hent priser fra projekt-portal er i gennemsnit omkring 1 million om måneden. Fællesskabet forbliver aktiv; i løbet af de seneste år næsten 300 personer har indsendt mere end 3000 bidrag.

Så hvor er Pil, der peger fra her? Det mest spændende projekt, som involverer sin rolle som fundament for cuDF, DataFrame foundation bibliotek for RAPIDS, der er bygget op omkring Pil. Der er Gandiva, den nye SQL-udførelse kerne til en Pil, der er udviklet af Dremio, der er baseret på ANN open source compiler. Et andet initiativ, der er omkring transport, så data rustet på en Pil node kan være effektivt kopieret eller flyttet til et andet.

Men den manglende brik-streaming, hvor hastighed af indgående data udgør en særlig udfordring. Der er nogle af de første forsøg på at udfylde Pil knudepunkter i microbatches fra Kafka. Og, så kanten bliver klogere (især som machine learning er anvendt), vil det også give mening for Pil til at opstå i et lille fodaftryk version, og med det, høst en del af arbejdet omkring transport til fodring filtreret eller aggregerede data til skyen.

Det er ikke tid til Pilen folk til at pakke sammen og gå hjem endnu.

Relaterede Emner:

Digital Transformation

Robotteknologi

Tingenes Internet

Innovation

Virksomhedens Software

CXO