Sber.DS koderik gabe ere ereduak sortu eta ezartzeko aukera ematen duen plataforma da

Tamaina ezberdinetako enpresetan egunero sortzen dira zer beste prozesu automatizatu daitezkeen buruzko ideiak eta bilerak. Baina eredu bat sortzeko denbora asko eman daitekeelaz gain, hura ebaluatzen eta emaitza ausazkoa ez dela egiaztatzen eman behar duzu. Ezarri ondoren, edozein eredu kontrolatu eta aldian-aldian egiaztatu behar da.

Eta hauek dira edozein enpresatan igaro behar dituzun etapa guztiak, bere tamaina edozein dela ere. Sberbanken eskala eta ondareaz ari bagara, doikuntza-kopurua esponentzialki handitzen da. 2019 amaieran, 2000 eredu baino gehiago erabiltzen ziren jada Sberbanken. Ez da nahikoa eredu bat garatzea bakarrik, beharrezkoa da industria-sistemekin integratzea, ereduak eraikitzeko datu-martsak garatzea eta bere funtzionamenduaren kontrola bermatzea kluster batean.

Sber.DS koderik gabe ere ereduak sortu eta ezartzeko aukera ematen duen plataforma da

Gure taldea Sber.DS plataforma garatzen ari da. Ikaskuntza automatikoko arazoak ebazteko aukera ematen du, hipotesiak probatzeko prozesua bizkortzen du, printzipioz ereduak garatzeko eta baliozkotzeko prozesua errazten du eta ereduaren emaitza ere kontrolatzen du PROM-en.

Zure itxaropenak ez engainatzeko, aldez aurretik esan nahi dut mezu hau sarrera bat dela, eta mozketaren azpian, hasteko, funtsean Sber.DS plataformaren kanpaiaren azpian dagoenari buruz kontatzen da. Eredu baten bizi-zikloari buruzko istorioa bereizita kontatuko dugu sorreratik ezarpenera.

Sber.DS hainbat osagaiz osatuta dago, gakoak liburutegia, garapen sistema eta ereduen exekuzio sistema dira.

Sber.DS koderik gabe ere ereduak sortu eta ezartzeko aukera ematen duen plataforma da

Liburutegiak ereduaren bizi-zikloa kontrolatzen du, garatzeko ideia agertzen den unetik PROM-en inplementatzen, kontrolatzen eta desafektatzen. Liburutegiaren ezaugarri asko erregulatzailearen arauek agintzen dituzte, adibidez, prestakuntza- eta baliozkotze-laginak jakinaraztea eta biltegiratzea. Izan ere, hau gure eredu guztien erregistroa da.

Garapen-sistema ereduak eta baliozkotze-metodoak bisualki garatzeko pentsatuta dago. Garatutako ereduek lehen mailako balioztatzea jasaten dute eta exekuzio sistemara entregatzen dira negozio-funtzioak bete ditzan. Era berean, exekuzio sisteman, eredua monitorean jar daiteke, aldian-aldian bere funtzionamendua kontrolatzeko baliozkotze-metodoak abiarazteko.

Sisteman hainbat nodo mota daude. Batzuk hainbat datu-iturritara konektatzeko diseinatuta daude, beste batzuk - iturri-datuak eraldatzeko eta horiek aberasteko (markaketa). Hainbat eredu eraikitzeko nodo asko daude eta baliozkotzeko nodoak. Garatzaileak edozein iturritako datuak karga ditzake, eraldatu, iragazi, tarteko datuak ikus ditzake, zatitan banatu.

Plataformak proiektuaren eremura arrastatu daitezkeen prest egindako moduluak ere baditu. Ekintza guztiak bistaratutako interfaze baten bidez egiten dira. Izan ere, arazoa konpon dezakezu kode lerro bakar bat gabe.

Eraikitako gaitasunak nahikoak ez badira, sistemak zure moduluak azkar sortzeko gaitasuna eskaintzen du. Oinarritutako garapen-modu integratua egin dugu Jupyter Kernel Gateway hutsetik modulu berriak sortzen dituztenentzat.

Sber.DS koderik gabe ere ereduak sortu eta ezartzeko aukera ematen duen plataforma da

Sber.DS arkitektura mikrozerbitzuetan eraikita dago. Iritzi asko daude mikrozerbitzuak zer diren. Batzuek uste dute nahikoa dela kode monolitikoa zatitan banatzea, baina datu-base berera joaten dira oraindik. Gure mikrozerbitzuak beste mikrozerbitzu batekin komunikatu behar du REST APIaren bidez soilik. Datu-basera zuzenean sartzeko konponbiderik ez.

Zerbitzuak oso handiak eta geldoak izan ez daitezen saiatzen gara: instantzia bakar batek ez luke 4-8 gigabyte RAM baino gehiago kontsumitu behar eta eskaerak horizontalki eskalatzeko gai izan beharko luke instantzia berriak martxan jarriz. Zerbitzu bakoitza REST APIaren bidez soilik komunikatzen da besteekin (Ireki APIa). Zerbitzuaz arduratzen den taldeak APIa atzerantz bateragarria izatea eskatzen du erabiltzen duen azken bezeroa arte.

Aplikazioaren muina Javan idatzita dago Spring Framework erabiliz. Irtenbidea hodeiko azpiegituretan azkar hedatzeko diseinatu zen, beraz, aplikazioa edukiontzien sistema baten bidez eraikitzen da Red Hat OpenShift (Kubernetes). Plataforma etengabe garatzen ari da, bai negozioaren funtzionaltasuna areagotzeari dagokionez (konektore berriak, AutoML gehitzen dira), bai eraginkortasun teknologikoari dagokionez.

Gure plataformaren "txip" bat da ikusizko interfazean garatutako kodea exekutatu dezakegula edozein Sberbank eredu exekutatzeko sistematan. Orain dagoeneko bi daude: bat Hadoop-en, bestea OpenShift-en (Docker). Ez gara hor gelditzen eta integrazio moduluak sortzen ditugu kodea edozein azpiegituratan exekutatzeko, lokaletan eta hodeian barne. Sberbank ekosisteman eraginkortasunez integratzeko aukerei dagokienez, lehendik dauden exekuzio-inguruneekin lan egitea ere aurreikusten dugu. Etorkizunean, irtenbidea malgutasunez txerta daiteke "kutxatik kanpo" edozein erakundetako edozein paisaitan.

Python-en Hadoop-en PROM-en exekutatzen duen irtenbide bat mantentzen saiatu direnek badakite ez dela nahikoa python ingurune pertsonalizatu bat prestatzea eta entregatzea datu-nodo bakoitzari. Python moduluak erabiltzen dituzten C / C ++ liburutegi kopuru handi batek ez dizu lasai atseden utziko. Liburutegi edo zerbitzari berriak gehitzean paketeak eguneratzea ez dugu ahaztu behar, dagoeneko inplementatutako eredu-kodearekin atzerako bateragarritasuna mantenduz.

Hori nola egin jakiteko hainbat ikuspegi daude. Adibidez, prestatu aldez aurretik maiz erabiltzen diren hainbat liburutegi eta inplementatu PROM-en. Clouderaren Hadoop banaketak erabiltzen du normalean lursailak. Orain Hadoopen ere badago korrika egiteko aukera Docker- ontziak. Kasu erraz batzuetan, paketearekin batera kodea entregatu daiteke pitoia.arrautzak.

Bankuak oso serio hartzen du hirugarrenen kodea exekutatzeko segurtasuna, beraz, Linux nukleoaren ezaugarri berriak aprobetxatzen ditugu, non ingurune isolatu batean exekutatzen den prozesu bat. Linux izen-eremua, adibidez, sarerako eta disko lokalerako sarbidea mugatu dezakezu, eta horrek asko murrizten du kode maltzurren aukera. Sail bakoitzaren datu-eremuak babestuta daude eta datu horien jabeek soilik eskura ditzakete. Plataformak bermatzen du domeinu bateko datuak beste domeinu batean soilik sar daitezkeela datuak argitaratzeko prozesu baten bidez, kontrolpean dauden fase guztietan iturriak atzitu eta helburuko merkatuan datuak lurreratzeko.

Sber.DS koderik gabe ere ereduak sortu eta ezartzeko aukera ematen duen plataforma da

Aurten Hadoop-en Python/R/Java-n idatzitako exekutatzeko ereduen MVP osatzeko asmoa dugu. Hadoop-en edozein erabiltzaile-ingurune exekutatzen ikasteko asmo handiko zeregina jarri diogu gure buruari, gure plataformako erabiltzaileak inola ere ez mugatzeko.

Gainera, ondorioztatu denez, DSko espezialista asko bikainak dira matematikan eta estatistikan, eredu politak egiten dituzte, baina ez dira oso ondo ezagutzen big data eraldaketan, eta gure datu-ingeniarien laguntza behar dute prestakuntza-laginak prestatzeko. Gure lankideei laguntzea eta Spark motorreko modeloetarako ohiko eraldaketa eta ezaugarriak prestatzeko modulu erosoak sortzea erabaki genuen. Horri esker, denbora gehiago eskaini ahal izango da ereduak garatzen eta datu-ingeniariek datu-multzo berri bat prestatzeko zain ez egon.

Arlo ezberdinetan ezagutza duten pertsonak ditugu: Linux eta DevOps, Hadoop eta Spark, Java eta Spring, Scala eta Akka, OpenShift eta Kubernetes. Hurrengoan ereduen liburutegiari buruz hitz egingo dugu, ereduak enpresaren bizitza-zikloan nola pasatzen den, balioztatzea eta ezarpena nola egiten diren.

Iturria: www.habr.com

Gehitu iruzkin berria