Programavimas

Apžvalga: „Kinetica“ realiuoju laiku analizuoja milijardus eilučių

2009 m. Būsimi „Kinetica“ įkūrėjai bandė rasti esamą duomenų bazę, kuri galėtų suteikti JAV armijos žvalgybos ir saugumo vadovybei (INSCOM) Fort Belvoir (Virdžinija) galimybę realiuoju laiku stebėti milijonus skirtingų signalų, kad įvertinti grėsmes nacionaliniam saugumui. Taigi jie nuo pat pradžių sukūrė naują duomenų bazę, kurios pagrindinis dėmesys buvo nukreiptas į didžiulį lygiagretinimą, sujungiant GPU ir centrinio procesoriaus galią tyrinėti ir vizualizuoti duomenis erdvėje ir laike. Iki 2014 m. Jie pritraukė kitus klientus, o 2016 m. - kaip „Kinetica“.

Dabartinė šios duomenų bazės versija yra „Kinetica 7“ širdis, kuri dabar išplėsta ir yra „Kinetica Active Analytics“ platforma. Platforma sujungia istorinių ir srautinių duomenų analizę, vietos analizę ir mašininį mokymąsi didelio našumo, paruoštame debesyje pakete.

Kaip orientacinius klientus, „Kinetica“, be kitų, turi „Ovo“, „GSK“, „SoftBank“, „Telkomsel“, „Scotiabank“ ir „Caesars“. „Ovo“ naudoja „Kinetica“ mažmeninės prekybos individualizavimui. Belaidis „Worldn“ operatorius „Telkomsel“ naudoja „Kinetica“ tinklo ir abonentų įžvalgoms. Neseniai „Chevron“ įsigyta „Anadarko“ naudoja „Kinetica“, kad paspartintų naftos baseinų analizę tiek, kad įmonei nereikėtų mažinti 90 milijardų eilučių apklausos duomenų rinkinių 3D vizualizavimui ir analizei.

„Kinetica“ dažnai lyginama su kitomis GPU duomenų bazėmis, tokiomis kaip „OmniSci“, „Brytlyt“, „SQream DB“ ir „BlazingDB“. Pasak bendrovės, jie dažniausiai konkuruoja su daug platesniu sprendimų spektru, pradedant nuo užsakytų „SMACK“ („Spark“, „Mesos“, „Akka“, „Cassandra“ ir „Kafka“) „stack“ sprendimų iki tradiciškesnių paskirstytų duomenų apdorojimo ir duomenų saugojimo platformų.

Pagrindinės „Kinetica“ savybės ir architektūra

„Kinetica“ sujungia savo paskirstytą, atmintyje esančią, GPU pagreitintą duomenų bazę su srautinio perdavimo analitika, vietos žvalgyba ir mašininiu mokymusi. Duomenų bazė yra vektorizuota, stulpelinė, pirmiausia atminties ir skirta analitiniams (OLAP) darbo krūviams, automatiškai paskirstant bet kokį darbo krūvį procesoriams ir GPU. „Kinetica“ naudoja SQL-92 užklausų kalbai, panašiai kaip „PostgreSQL“ ir „MySQL“, ir palaiko daugybę galimybių, įskaitant teksto paiešką, laiko eilučių analizę, vietos analizę ir diagramų analizę.

„Kinetica“ gali valdyti visą duomenų korpusą, protingai tvarkydama duomenis GPU atmintyje, sistemos atmintyje, diske ar SSD, HDFS ir debesų saugyklose, tokiose kaip „Amazon S3“. Pasak bendrovės, ši galimybė valdyti visas saugojimo pakopas yra unikali „Kinetica“ tarp GPU duomenų bazių.

Naudodama platinamas lygiagrečių duomenų perdavimo galimybes, „Kinetica“ gali vienu metu atlikti didelės spartos srautinių duomenų rinkinių (su „Kafka“) įvedimą ir sudėtingą srautinių ir istorinių duomenų analizę. Galite mokyti „TensorFlow“ modelius pagal duomenis tiesiogiai „Kinetica“ arba importuoti iš anksto paruoštus „TensorFlow“ arba „juodosios dėžės“ modelius, kad įvykdytumėte išvadas paketinio apdorojimo, srauto apdorojimo ar viešosios žiniatinklio paslaugos pagalba.

„Kinetica“ turi patikimą ir GPU pagreitintą geoerdvinių funkcijų biblioteką, pagal kurią galima atlikti filtravimą pagal pareikalavimą, kaupimą, laiko eilutes, erdvinį sujungimą ir geoforos analizę. Jis taip pat gali rodyti neribotą geometriją, šilumos žemėlapius ir kontūrus, naudodamas serverio atvaizdavimo technologiją (nes didelių duomenų rinkinių pateikimas kliento pusėje užima daug laiko).

Savo reliacinius duomenis galite naudoti savojo grafo kontekste (aiškiai sukurdami mazgus, kraštus ir kitus diagramos objektus iš reliacinių duomenų), kad suprastumėte geoerdvinius ir negeospatinius santykius, taip pat galite realiuoju laiku optimizuoti maršrutą ir netgi analizuoti socialinius tinklus. naudojant Kinetica GPU pagreitinto grafiko algoritmus (naudojant kinetica.solve_graph funkcija).

„Kinetica“ „Kinetica“

„Kinetica“ diegimo ir konfigūravimo parinktys

Yra trys „Kinetica“ diegimo būdai. Pageidaujamas metodas dabar yra „KAgent“, kuris automatizuoja „Kinetica“, „Active Analytics Workbench“ (AAW) ir „Kubernetes“, žiedų (didelis prieinamumas) ir dar daugiau diegimą ir konfigūravimą. Du alternatyvūs metodai yra „Docker“ naudojimas (nešiojamiems „Kinetica“ diegimams) ir diegimas rankiniu būdu per komandų eilutę naudojant įprastus „Linux“ pagrįstus paketų tvarkytuvus, pvz., yum ir taiklus.

Resursu valdymas. „Kinetica“ palaiko penkias saugojimo pakopas: VRAM, RAM, disko talpyklą, „persistent“ ir šaltąjį. Visoms operacijoms, kurioms naudojamas GPU, reikalingi duomenys, kuriuos jie naudoja, kad būtų VRAM pakopa. Duomenų tvarkymas šiuose penkiuose sluoksniuose yra ne triviali problema.

Iškeldinimas yra priverstinis duomenų perkėlimas iš aukštesnio lygio į žemesnį, kad būtų galimybė kitiems duomenims perkelti į tą aukštesnę pakopą. Kiekvienas sistemos objektas turi iškeldinimo lygį, kuris priklauso nuo objekto tipo ir po juo esančių pakopų, į kurias jis galėtų būti iškeldintas. Iškeldinimas gali būti atliekamas atsakant į užklausą, kuri gali sukelti daug duomenų judėjimą, arba proaktyviai fone, atsižvelgiant į aukštą ir žemą vandens ženklų lygį ir iškeldinimo prioritetus, o tai paprastai sukuria mažiau duomenų judėjimo.

Didelis prieinamumas. „Kinetica HA“ pašalina vienintelį gedimo tašką standartiniame „Kinetica“ klasteryje ir suteikia atsigavimą po gedimo. Jis įdiegtas ne Kinetica, kad būtų panaudotos kelios duomenų kopijos ir galiausiai būtų nuoseklus duomenų saugykla. „Kinetica HA“ sprendimas susideda iš keturių komponentų: „front-end“ apkrovos balansavimo, didelio prieinamumo procesų valdytojų, vieno ar daugiau „Kinetica“ grupių ir paskirstytos pranešimų eilės.

Administracija. „Kinetica“ galite administruoti naudodami grafinį „GAdmin“ įrankį - „Linux“ komandinę eilutę paslaugą komandą arba KAgentą. Žemiau pateiktoje ekrano kopijoje rodoma 6 mazgų sankaupos „GAdmin“ informacijos suvestinė.

„Kinetica“ demonstracinės versijos

Be „GAdmin“ ir „KAgent“, „Kinetica“ siūlo žiniatinklio vizualizavimo įrankį „Reveal“ ir „Active Analytics Workbench“ (AAW), skirtą mašininio mokymosi modeliams ir algoritmams integruoti.

Aukščiau pateiktame paveikslėlyje parodytas šešių mazgų klasteris yra tas, kurį naudojau tyrinėdamas keletą „Kinetica“ demonstracinių versijų. Klasterį sudaro „g3.8xlarge“ egzemplioriai, kuriuose kiekviename yra du „Nvidia Tesla M60“ GPU ir 32 „Intel Xeon E5 2686 v4“ procesoriai. Kiekviename egzemplioriuje yra 244 GiB RAM ir 16 GiB VRAM kiekviename GPU. Ši sąranka gali būti sumažinta, padidinta ir išplėsta, kad atitiktų bet kokį naudojimo atvejį. Baigęs testus duomenų bazėje buvo 413 lentelių ir 2,2 milijardo įrašų.

Mano ištirtos demonstracinės versijos buvo skirtos finansinės rizikos prognozavimui naudojant galimybes, draudimo rizikai potvynių Teksase, tinklo saugumo įvertinimui, pagrįstam eismo patikrinimu, ir taksi kelionėms NYC. Proceso metu pastebėjau, kad, skirtingai nei „OmniSci“ demonstracinės versijos (žr. Mano apžvalgą), kuriose visos naudojo pavienes suplotas lenteles (greičiui), „Kinetica“ demonstracinėse versijose dažnai buvo naudojamos kelios lentelės, rodiniai ir analitinės informacijos suvestinės.

Finansinės rizikos prognozavimas su pasirinkimo galimybėmis

Ši programa iš esmės yra „Kinetica“ finansinės rizikos valdymo realiuoju laiku koncepcijos įrodymas. „React“ mobilioji programa ir dvi žiniatinklio prietaisų skydeliai leidžia rizikos valdytojui pamatyti visus savo portfelio „graikus“ (rizikos vertinimo veiksnius) ir pridėti apsidraudimo sandorius. Užkulisiuose operacijos perkeliamos į duomenų bazę, o „Black Scholes“ mašininio mokymosi rizikos modelis nuolat atnaujina tiesioginius duomenis. Priešingai, tradicinis rizikos valdymas apima operacijų duomenų nukopijavimą į atskirą grupę, kuri kiekvieną vakarą vykdo rizikos modelius.

Draudimo rizika dėl katastrofiškų potvynių Teksase

Šios programos tikslas yra įvertinti draudimo bendrovės riziką katastrofiškų potvynių Teksase iš draudėjų lentelės ir uragano „Harvey“ potvynių zonų. Programa atlieka didelius geoerdvinius skaičiavimus SQL kartu su statistiniais skaičiavimais.

Tinklo saugumo vertinimas

Ši programa skirta padėti tinklo saugumo pareigūnui apsaugoti tinklą nuo įsilaužimų. Pagrindinė „Kinetica“ lentelė sujungia apie 1,8 milijardo istorinių tinklo užklausų su realiuoju laiku teikiama informacija.

NYC taksi pasivažinėjimai

Niujorko taksi važiavimo duomenų bazę taip pat peržiūrėjau „OmniSci“. „Kinetica“ teikia ją kaip duomenų rinkinį, kurį galite įkelti; tai užtruko apie minutę. Iš pradžių po visų žemėlapio mastelio keitimo operacijų Kineticoje atnaujinti visas diagramas užtruko ilgiau, nei prisiminiau iš „OmniSci“; tada pakeičiau nuostatą taip, kad „Kinetica“ kituose grafikuose duomenų nebraižytų už priartinto žemėlapio ribų, o atsakymo laikas nukrito iki sekundės.

„Kinetica“ skiltelės ir prietaisų skydeliai

Individuali „Kinetica Reveal“ grafika vadinama skiltelėmis. Skiltelės yra suskirstytos į prietaisų skydus.

Skiltelių dizaineris yra gana panašus į dizainerius, kuriuos rasite „OmniSci“ ir daugelyje BI produktų, tokių kaip „Tableau“.

Aš neišbandžiau „Kinetica“ grafikų analizės dalies, bet man patinka jos dizainas. Jei diagramų duomenų bazės yra tik maža dalis to, ką turite padaryti su savo duomenimis, tada pakartotinai panaudoti saugomas reliacinių lentelių eilutes kaip kraštus ir mazgus yra visiškai prasminga. GPU naudojimas grafo algoritmams paspartinti taip pat yra visiškai logiškas.

Matydamas, kaip „Kinetica“ integruoja mašininį mokymąsi į savo GPU duomenų bazę, analizę realiuoju laiku ir geografinę informaciją, suprantu, kur „OmniSci“ nori eiti, bet „Kinetica“ jau yra. Be to, pamačiusi, kaip „Kinetica“ valdo savo saugojimo pakopas, suprantu, kodėl „Kinetica“ paprastai konkuruoja su didžiųjų duomenų ir duomenų saugyklų sistemomis.

Apskritai „Kinetica“ yra labai įspūdinga. Jis daro tai, ką tvirtina, peršokdamas aukštas duomenų bazes vienu ... turiu omenyje, realiu laiku analizuoja duomenų bazes su milijardais istorinių eilučių ir tiesioginių kanalų. Norėčiau pajusti prenumeratos kainą, tačiau tai yra patentuota, kaip dažnai būna tokio masto sistemose.

Kaina: „Kinetica“ apmokestina metinę abonementą pagal atmintyje esančių terabaitų skaičių; jis neapmokestina duomenų saugojimo kitose pakopose. Prenumeratos licencija leidžia paleisti „Kinetica“ bet kur - vietoje ar debesyje. Prenumeratos išlaidos yra visiškai nuspėjamos. Galima 30 dienų nemokama bandomoji versija.

Platforma: „RHEL“, „CentOS“, „Ubuntu“, „Suse“ arba „Debian Linux“ serveris su mažiausiai aštuoniais procesoriaus branduoliais ir 8 GB RAM; „Nvidia K40“ ar naujesni GPU; vietoje, debesyje arba „Jetson TX2“ įterptojo įrenginio krašte. „Kinetica“ taip pat veikia su „Docker“ su GPU arba be jų.

$config[zx-auto] not found$config[zx-overlay] not found