Atvērtā pirmkoda DataHub: LinkedIn metadatu meklÄ“Å”anas un atklāŔanas platforma

Atvērtā pirmkoda DataHub: LinkedIn metadatu meklÄ“Å”anas un atklāŔanas platforma

NepiecieÅ”amo datu ātra atraÅ”ana ir bÅ«tiska jebkuram uzņēmumam, kas paļaujas uz lielu datu apjomu, lai pieņemtu uz datiem balstÄ«tus lēmumus. Tas ne tikai ietekmē datu lietotāju (tostarp analÄ«tiÄ·u, maŔīnmācÄ«Å”anās izstrādātāju, datu zinātnieku un datu inženieru) produktivitāti, bet arÄ« tieÅ”i ietekmē galaproduktus, kas ir atkarÄ«gi no kvalitatÄ«va maŔīnmācÄ«Å”anās (ML) konveijera. Turklāt tendence ieviest vai veidot maŔīnmācÄ«Å”anās platformas, protams, rada jautājumu: kāda ir jÅ«su metode, lai iekŔēji atklātu funkcijas, modeļus, metriku, datu kopas utt.

Å ajā rakstā mēs runāsim par to, kā mēs publicējām datu avotu saskaņā ar atvērto licenci DataHub mÅ«su metadatu meklÄ“Å”anas un atklāŔanas platformā, sākot no projekta sākuma KurKā. LinkedIn uztur savu DataHub versiju atseviŔķi no atvērtā pirmkoda versijas. Sāksim ar skaidrojumu, kāpēc mums ir vajadzÄ«gas divas atseviŔķas izstrādes vides, pēc tam apspriedÄ«sim agrÄ«nās pieejas atvērtā pirmkoda WhereHows izmantoÅ”anai un salÄ«dzināsim mÅ«su iekŔējo (ražoÅ”anas) DataHub versiju ar versiju vietnē. GitHub. Mēs arÄ« kopÄ«gosim informāciju par mÅ«su jauno automatizēto risinājumu atvērtā pirmkoda atjauninājumu nosÅ«tÄ«Å”anai un saņemÅ”anai, lai nodroÅ”inātu abu repozitoriju sinhronizāciju. Visbeidzot, mēs sniegsim norādÄ«jumus par to, kā sākt lietot atvērtā pirmkoda DataHub, un Ä«si apspriedÄ«sim tā arhitektÅ«ru.

Atvērtā pirmkoda DataHub: LinkedIn metadatu meklÄ“Å”anas un atklāŔanas platforma

WhereHows tagad ir DataHub!

IepriekÅ” prezentētā LinkedIn metadatu komanda DataHub (WhereHows pēctecis), LinkedIn meklÄ“Å”anas un metadatu atklāŔanas platforma un kopÄ«gi plāni tās atvērÅ”anai. Neilgi pēc Ŕī paziņojuma mēs izlaidām DataHub alfa versiju un kopÄ«gojām to ar kopienu. KopÅ” tā laika mēs esam nepārtraukti papildinājuÅ”i repozitoriju un sadarbojuÅ”ies ar ieinteresētajiem lietotājiem, lai pievienotu visvairāk pieprasÄ«tās funkcijas un atrisinātu problēmas. Tagad mēs esam priecÄ«gi paziņot par oficiālo izlaiÅ”anu DataHub vietnē GitHub.

Atvērtā pirmkoda pieejas

KurHows, LinkedIn sākotnējais portāls datu atraÅ”anai un no kurienes tie nāk, sākās kā iekŔējs projekts; metadatu komanda to atvēra pirmkods 2016. gadā. KopÅ” tā laika komanda vienmēr ir uzturējusi divas dažādas kodu bāzes ā€” vienu atvērtā koda un otru LinkedIn iekŔējai lietoÅ”anai, jo ne visas produktu funkcijas, kas izstrādātas LinkedIn lietoÅ”anas gadÄ«jumiem, parasti bija piemērojamas plaŔākai auditorijai. Turklāt vietnei WhereHows ir dažas iekŔējas atkarÄ«bas (infrastruktÅ«ra, bibliotēkas utt.), kas nav atvērtā koda. Turpmākajos gados vietnei WhereHows tika veiktas daudzas iterācijas un izstrādes cikli, padarot abu kodu bāzu sinhronizÄ“Å”anu par lielu izaicinājumu. Gadu gaitā metadatu komanda ir izmēģinājusi dažādas pieejas, lai mēģinātu sinhronizēt iekŔējo un atvērtā koda izstrādi.

Pirmais mēģinājums: "Vispirms atvērtais avots"

Sākotnēji mēs izmantojām izstrādes modeli "vispirms atvērtā koda", kur lielākā daļa izstrādes notiek atvērtā pirmkoda repozitorijā un tiek veiktas izmaiņas iekŔējai izvietoÅ”anai. Å Ä«s pieejas problēma ir tāda, ka kods vienmēr vispirms tiek nosÅ«tÄ«ts uz GitHub, pirms tas ir pilnÄ«bā pārskatÄ«ts iekŔēji. Kamēr nav veiktas izmaiņas atvērtā pirmkoda krātuvē un nav veikta jauna iekŔēja izvietoÅ”ana, mēs neatradÄ«sim nekādas ražoÅ”anas problēmas. Sliktas izvietoÅ”anas gadÄ«jumā arÄ« bija ļoti grÅ«ti noteikt vainÄ«go, jo izmaiņas tika veiktas pa partijām.

Turklāt Å”is modelis samazināja komandas produktivitāti, izstrādājot jaunas funkcijas, kurām bija nepiecieÅ”amas ātras iterācijas, jo visas izmaiņas vispirms bija jāievieto atvērtā pirmkoda repozitorijā un pēc tam tika pārsÅ«tÄ«tas uz iekŔējo repozitoriju. Lai samazinātu apstrādes laiku, nepiecieÅ”amo labojumu vai izmaiņas vispirms varēja veikt iekŔējā repozitorijā, taču tas kļuva par milzÄ«gu problēmu, apvienojot Ŕīs izmaiņas atpakaļ atvērtā pirmkoda repozitorijā, jo abi repozitoriji nebija sinhronizēti.

Å o modeli ir daudz vieglāk ieviest koplietojamām platformām, bibliotēkām vai infrastruktÅ«ras projektiem nekā pilnvērtÄ«gām pielāgotām tÄ«mekļa lietojumprogrammām. Turklāt Å”is modelis ir ideāli piemērots projektiem, kas sākas atvērtā pirmkoda sākumā, bet WhereHows tika izveidots kā pilnÄ«bā iekŔēja tÄ«mekļa lietojumprogramma. Bija patieŔām grÅ«ti pilnÄ«bā abstrahēt visas iekŔējās atkarÄ«bas, tāpēc mums vajadzēja saglabāt iekŔējo dakÅ”iņu, taču iekŔējās dakÅ”as saglabāŔana un galvenokārt atvērtā koda izstrāde neizdevās.

Otrais mēģinājums: ā€œVispirms iekŔējaisā€

**Otrajā mēģinājumā mēs pārgājām uz "iekŔējo pirmo" izstrādes modeli, kur lielākā daļa izstrādes notiek uzņēmuma iekÅ”ienē un regulāri tiek veiktas izmaiņas atvērtā pirmkoda kodā. Lai gan Å”is modelis ir vislabāk piemērots mÅ«su lietoÅ”anas gadÄ«jumam, tam ir raksturÄ«gas problēmas. Ir iespēja tieÅ”i novirzÄ«t visas atŔķirÄ«bas uz atvērtā koda krātuvi un pēc tam mēģināt vēlāk atrisināt sapludināŔanas konfliktus, taču tas ir laikietilpÄ«gi. Izstrādātāji vairumā gadÄ«jumu cenÅ”as to nedarÄ«t katru reizi, kad viņi pārskata savu kodu. Rezultātā tas tiks darÄ«ts daudz retāk, pa partijām, un tādējādi vēlāk bÅ«s grÅ«tāk atrisināt sapludināŔanas konfliktus.

TreŔo reizi izdevās!

Divu iepriekÅ” minēto neveiksmÄ«go mēģinājumu rezultātā WhoHows GitHub repozitorijs ilgu laiku palika novecojis. Komanda turpināja uzlabot produkta funkcijas un arhitektÅ«ru, lai vietnes WhereHows iekŔējā versija pakalpojumam LinkedIn kļuva modernāka par atvērtā pirmkoda versiju. Tam pat bija jauns nosaukums - DataHub. Pamatojoties uz iepriekŔējiem neveiksmÄ«giem mēģinājumiem, komanda nolēma izstrādāt mērogojamu, ilgtermiņa risinājumu.

Jebkuram jaunam atvērtā pirmkoda projektam LinkedIn atvērtā koda komanda konsultē un atbalsta izstrādes modeli, kurā projekta moduļi ir pilnÄ«bā izstrādāti atklātā pirmkoda veidā. Versētie artefakti tiek izvietoti publiskajā repozitorijā un pēc tam pārbaudÄ«ti atpakaļ iekŔējā LinkedIn artefaktā, izmantojot ārējās bibliotēkas pieprasÄ«jums (ELR). Å Ä« izstrādes modeļa ievēroÅ”ana ir ne tikai laba tiem, kas izmanto atvērtā pirmkoda, bet arÄ« rada modulārāku, paplaÅ”ināmu un pievienojamu arhitektÅ«ru.

Tomēr nobrieduÅ”ai aizmugurlietojumprogrammai, piemēram, DataHub, bÅ«s nepiecieÅ”ams ievērojams laiks, lai sasniegtu Å”o stāvokli. Tas arÄ« izslēdz iespēju pilnÄ«bā funkcionējoÅ”ai ievieÅ”anai atklātā avotā, pirms visas iekŔējās atkarÄ«bas ir pilnÄ«bā abstrahētas. Tāpēc esam izstrādājuÅ”i rÄ«kus, kas palÄ«dz mums ātrāk un ar daudz mazāk sāpēm veikt atvērtā pirmkoda ieguldÄ«jumu. Å is risinājums sniedz labumu gan metadatu komandai (DataHub izstrādātājam), gan atvērtā pirmkoda kopienai. Nākamajās sadaļās tiks apspriesta Ŕī jaunā pieeja.

Atvērtā pirmkoda publicÄ“Å”anas automatizācija

Metadatu komandas jaunākā pieeja atvērtā pirmkoda DataHub ir izstrādāt rÄ«ku, kas automātiski sinhronizē iekŔējo kodu bāzi un atvērtā pirmkoda repozitoriju. Å Ä« rÄ«ku komplekta augsta lÄ«meņa funkcijas ietver:

  1. Sinhronizējiet LinkedIn kodu uz/no atvērtā koda, līdzīgi rsync.
  2. Licences galvenes Ä£enerÄ“Å”ana, lÄ«dzÄ«ga Apache žurka.
  3. Automātiski Ä£enerējiet atvērtā koda izpildes žurnālus no iekŔējiem izpildes žurnāliem.
  4. Novērst iekŔējās izmaiņas, kas pārtrauc atvērtā pirmkoda bÅ«vējumus atkarÄ«bas pārbaude.

Nākamajās apakÅ”nodaļās tiks aplÅ«kotas iepriekÅ” minētās funkcijas, kurām ir interesantas problēmas.

Avota koda sinhronizācija

AtŔķirÄ«bā no DataHub atvērtā pirmkoda versijas, kas ir viens GitHub repozitorijs, DataHub LinkedIn versija ir vairāku repozitoriju (saukta iekŔēji) kombinācija. daudzprodukti). DataHub saskarne, metadatu modeļu bibliotēka, metadatu noliktavas aizmugursistēmas pakalpojums un straumÄ“Å”anas darbi atrodas atseviŔķos LinkedIn krātuvēs. Tomēr, lai atvieglotu atvērtā koda lietotājiem, mums ir viena repozitorija DataHub atvērtā pirmkoda versijai.

Atvērtā pirmkoda DataHub: LinkedIn metadatu meklÄ“Å”anas un atklāŔanas platforma

1. attēls. Sinhronizācija starp krātuvēm LinkedIn DataHub un vienu repozitoriju DataHub atvērtais avots

Lai atbalstÄ«tu automatizētas veidoÅ”anas, nosÅ«tÄ«Å”anas un izvilkÅ”anas darbplÅ«smas, mÅ«su jaunais rÄ«ks automātiski izveido faila lÄ«meņa kartÄ“Å”anu atbilstoÅ”i katram avota failam. Tomēr rÄ«ku komplektam ir nepiecieÅ”ama sākotnējā konfigurācija, un lietotājiem ir jānodroÅ”ina augsta lÄ«meņa moduļu kartÄ“Å”ana, kā parādÄ«ts tālāk.

{
  "datahub-dao": [
    "${datahub-frontend}/datahub-dao"
  ],
  "gms/impl": [
    "${dataset-gms}/impl",
    "${user-gms}/impl"
  ],
  "metadata-dao": [
    "${metadata-models}/metadata-dao"
  ],
  "metadata-builders": [
    "${metadata-models}/metadata-builders"
  ]
}

Moduļu lÄ«meņa kartÄ“Å”ana ir vienkārÅ”s JSON, kura atslēgas ir mērÄ·a moduļi atvērtā pirmkoda repozitorijā, un vērtÄ«bas ir LinkedIn krātuvju avota moduļu saraksts. Jebkuru mērÄ·a moduli atvērtā pirmkoda repozitorijā var barot ar neierobežotu skaitu avota moduļu. Lai norādÄ«tu repozitoriju iekŔējos nosaukumus avota moduļos, izmantojiet virknes interpolācija BaÅ”a stilā. Izmantojot moduļa lÄ«meņa kartÄ“Å”anas failu, rÄ«ki izveido faila lÄ«meņa kartÄ“Å”anas failu, skenējot visus saistÄ«tos direktorijos esoÅ”os failus.

{
  "${metadata-models}/metadata-builders/src/main/java/com/linkedin/Foo.java":
"metadata-builders/src/main/java/com/linkedin/Foo.java",
  "${metadata-models}/metadata-builders/src/main/java/com/linkedin/Bar.java":
"metadata-builders/src/main/java/com/linkedin/Bar.java",
  "${metadata-models}/metadata-builders/build.gradle": null,
}

Faila lÄ«meņa kartējumu automātiski izveido rÄ«ki; tomēr lietotājs to var atjaunināt arÄ« manuāli. Å Ä« ir LinkedIn avota faila 1:1 kartÄ“Å”ana ar failu atvērtā pirmkoda repozitorijā. Ar Å”o automātisko failu asociāciju izveidi ir saistÄ«ti vairāki noteikumi:

  • Ja atvērtā koda mērÄ·a modulim ir vairāki avota moduļi, var rasties konflikti, piemēram, tie paÅ”i FQCN, kas pastāv vairāk nekā vienā avota modulÄ«. Kā konfliktu risināŔanas stratēģija mÅ«su rÄ«kiem pēc noklusējuma ir opcija ā€œuzvar pēdējaisā€.
  • "null" nozÄ«mē, ka avota fails neietilpst atvērtā pirmkoda repozitorijā.
  • Pēc katras atklātā pirmkoda iesniegÅ”anas vai izvilkÅ”anas Ŕī kartÄ“Å”ana tiek automātiski atjaunināta un tiek izveidots momentuzņēmums. Tas ir nepiecieÅ”ams, lai identificētu papildinājumus un dzÄ“Å”anu no pirmkoda kopÅ” pēdējās darbÄ«bas.

Saistību žurnālu izveide

SaistÄ«bu žurnāli atvērtā pirmkoda saistÄ«bām tiek automātiski Ä£enerēti, apvienojot iekŔējo repozitoriju izpildes žurnālus. Tālāk ir sniegts izpildes žurnāla paraugs, lai parādÄ«tu mÅ«su rÄ«ka Ä£enerētā izpildes žurnāla struktÅ«ru. ApstiprināŔana skaidri norāda, kuras avota repozitoriju versijas ir iesaiņotas Å”ajā apstiprinājumā, un nodroÅ”ina saistÄ«bu žurnāla kopsavilkumu. Pārbaudiet Å”o apņemties izmantojot reālu izpildes žurnāla piemēru, ko Ä£enerē mÅ«su rÄ«kkopa.

metadata-models 29.0.0 -> 30.0.0
    Added aspect model foo
    Fixed issue bar

dataset-gms 2.3.0 -> 2.3.4
    Added rest.li API to serve foo aspect

MP_VERSION=dataset-gms:2.3.4
MP_VERSION=metadata-models:30.0.0

Atkarības pārbaude

LinkedIn ir atkarÄ«bas pārbaudes infrastruktÅ«ra, kas palÄ«dz nodroÅ”ināt, ka iekŔējā vairākproduktu izmaiņas neizjauc atkarÄ«go vairāku produktu komplektu. Atvērtā koda DataHub repozitorijs nav vairāku produktu, un tas nevar bÅ«t tieÅ”a atkarÄ«ba no vairākiem produktiem, taču, izmantojot vairāku produktu ietÄ«tāju, kas ienes atvērtā pirmkoda DataHub avota kodu, mēs joprojām varam izmantot Å”o atkarÄ«bas testÄ“Å”anu. Tādējādi jebkuras izmaiņas (kas vēlāk var tikt atklātas) jebkurā no vairākproduktiem, kas nodroÅ”ina atvērtā pirmkoda DataHub repozitoriju, aktivizē izveides notikumu čaulas vairāku produktu. Tāpēc jebkuras izmaiņas, kas neizdodas izveidot iesaiņojuma produktu, neiztur testus pirms sākotnējā produkta izmantoÅ”anas un tiek atsauktas.

Å is ir noderÄ«gs mehānisms, kas palÄ«dz novērst jebkādu iekŔējo apņemÅ”anos, kas pārtrauc atvērtā pirmkoda bÅ«vējumu un nosaka to izpildes laikā. Bez tā bÅ«tu diezgan grÅ«ti noteikt, kuras iekŔējās saistÄ«bas izraisÄ«ja atklātā pirmkoda repozitorija izveides kļūme, jo mēs apkopojam iekŔējās izmaiņas DataHub atvērtā koda krātuvē.

AtŔķirÄ«bas starp atvērtā pirmkoda DataHub un mÅ«su produkcijas versiju

LÄ«dz Å”im mēs esam apsprieduÅ”i mÅ«su risinājumu divu DataHub repozitoriju versiju sinhronizÄ“Å”anai, taču mēs joprojām neesam izklāstÄ«juÅ”i iemeslus, kāpēc mums vispirms ir vajadzÄ«gas divas dažādas izstrādes straumes. Å ajā sadaļā mēs uzskaitÄ«sim atŔķirÄ«bas starp DataHub publisko versiju un ražoÅ”anas versiju LinkedIn serveros un izskaidrosim Å”o atŔķirÄ«bu iemeslus.

Viens pretrunu avots ir fakts, ka mÅ«su produkcijas versijai ir atkarÄ«bas no koda, kas vēl nav atvērts avots, piemēram, LinkedIn's Offspring (LinkedIn iekŔējā atkarÄ«bas injekcijas sistēma). Pēcnācējus plaÅ”i izmanto iekŔējās kodu bāzēs, jo tā ir vēlamā metode dinamiskās konfigurācijas pārvaldÄ«bai. Bet tas nav atvērts avots; tāpēc mums bija jāatrod atvērtā pirmkoda alternatÄ«vas atvērtā pirmkoda DataHub.

Ir arÄ« citi iemesli. Tā kā LinkedIn vajadzÄ«bām mēs veidojam metadatu modeļa paplaÅ”inājumus, Å”ie paplaÅ”inājumi parasti ir ļoti specifiski LinkedIn un, iespējams, tieÅ”i neattiecas uz citām vidēm. Piemēram, mums ir ļoti specifiskas iezÄ«mes dalÄ«bnieku ID un cita veida atbilstoÅ”iem metadatiem. Tātad mēs tagad esam izslēguÅ”i Å”os paplaÅ”inājumus no DataHub atvērtā pirmkoda metadatu modeļa. Sadarbojoties ar kopienu un izprotot viņu vajadzÄ«bas, vajadzÄ«bas gadÄ«jumā strādāsim pie Å”o paplaÅ”inājumu kopējām atvērtā pirmkoda versijām.

VienkārÅ”a lietoÅ”ana un vieglāka pielāgoÅ”ana atvērtā pirmkoda kopienai arÄ« iedvesmoja dažas atŔķirÄ«bas starp abām DataHub versijām. AtŔķirÄ«bas straumju apstrādes infrastruktÅ«rā ir labs piemērs tam. Lai gan mÅ«su iekŔējā versijā tiek izmantota pārvaldÄ«ta straumes apstrādes sistēma, atvērtā pirmkoda versijai mēs izvēlējāmies izmantot iebÅ«vētu (savrupu) straumes apstrādi, jo tādējādi tiek novērsta cita infrastruktÅ«ras atkarÄ«ba.

Vēl viens atŔķirÄ«bas piemērs ir viens GMS (vispārinātais metadatu veikals) atvērtā pirmkoda ievieÅ”anā, nevis vairākās GMS. GMA (Ä£eneralizētā metadatu arhitektÅ«ra) ir DataHub aizmugures arhitektÅ«ras nosaukums, un GMS ir metadatu krātuve GMA kontekstā. GMA ir ļoti elastÄ«ga arhitektÅ«ra, kas ļauj sadalÄ«t katru datu konstrukciju (piem., datu kopas, lietotājus utt.) savā metadatu krātuvē vai saglabāt vairākas datu konstrukcijas vienā metadatu krātuvē, ja vien reÄ£istrs satur datu struktÅ«ras kartÄ“Å”anu GMS ir atjaunināts. LietoÅ”anas ērtÄ«bai mēs izvēlējāmies vienu GMS gadÄ«jumu, kas glabā visas dažādās datu konstrukcijas atvērtā pirmkoda DataHub.

Pilns atŔķirību saraksts starp abām ievieŔanām ir sniegts zemāk esoŔajā tabulā.

Produkta iespējas
LinkedIn DataHub
Atvērtā pirmkoda DataHub

Atbalstītās datu konstrukcijas
1) Datu kopas 2) Lietotāji 3) Metrika 4) ML līdzekļi 5) Diagrammas 6) Informācijas paneļi
1) Datu kopas 2) Lietotāji

Atbalstītie metadatu avoti datu kopām
1) Ambrija 2) Couchbase 3) Dalids 4) Espresso 5) HDFS 6) Hive 7) Kafka 8) MongoDB 9) MySQL 10) Oracle 11) Pinot 12) Presto 12) Esi 13) Teradata 13) Vector 14) Venēcija
Hive Kafka RDBMS

Pub-sub
LinkedIn Kafka
SaplūstoŔā Kafka

Straumes apstrāde
Pārvalda
Iegults (atseviŔķs)

Atkarības ievadīŔana un dinamiskā konfigurācija
LinkedIn pēcnācēji
pavasaris

Celtniecības instrumenti
Ligradle (LinkedIn iekŔējais Gradle iesaiņojums)
Gradljū

CI / CD
CRT (LinkedIn iekŔējais CI/CD)
TravisCI un Dokera centrmezgls

Metadatu veikali
Izplatīti vairāki GMS: 1) datu kopa GMS 2) lietotāju GMS 3) metriskā GMS 4) funkcija GMS 5) diagramma/informācijas paneļa GMS
Viena GMS: 1) datu kopām 2) lietotājiem

Mikropakalpojumi Docker konteineros

dokers vienkārÅ”o lietojumprogrammu izvietoÅ”anu un izplatÄ«Å”anu ar konteinerizÄ“Å”ana. Katra pakalpojuma DataHub daļa ir atvērtā pirmkoda daļa, tostarp infrastruktÅ«ras komponenti, piemēram, Kafka, Elastikas meklÄ“Å”ana, neo4j Šø MySQL, ir savs Docker attēls. Mēs izmantojām Docker konteineru orÄ·estrÄ“Å”anu Docker sastopas.

Atvērtā pirmkoda DataHub: LinkedIn metadatu meklÄ“Å”anas un atklāŔanas platforma

2. attēls: Arhitektūra DataHub *atvērtais avots**

Augstākā lÄ«meņa DataHub arhitektÅ«ru var redzēt attēlā iepriekÅ”. Papildus infrastruktÅ«ras komponentiem tai ir četri dažādi Docker konteineri:

datahub-gms: metadatu glabāŔanas pakalpojums

Datahub-frontend: lietojumprogramma spēlēt, kas apkalpo DataHub saskarni.

datahub-mce-consumer: lietojumprogramma Kafkas straumes, kas izmanto metadatu maiņas notikumu (MCE) straumi un atjaunina metadatu krātuvi.

datahub-mae-consumer: lietojumprogramma Kafkas straumes, kas izmanto metadatu audita notikumu straumi (MAE) un izveido meklÄ“Å”anas indeksu un grafiku datu bāzi.

Atvērtā koda repozitorija dokumentācija un oriģināls DataHub emuāra ieraksts satur detalizētāku informāciju par dažādu pakalpojumu funkcijām.

CI/CD vietnē DataHub ir atvērtā koda

Izmanto atvērtā koda DataHub repozitoriju TravisCI nepārtrauktai integrācijai un Dokera centrmezgls nepārtrauktai izvietoÅ”anai. Abiem ir laba GitHub integrācija, un tos ir viegli iestatÄ«t. Lielākajai daļai atvērtā pirmkoda infrastruktÅ«ras, ko izstrādājusi kopiena vai privāti uzņēmumi (piemēram, krustojums), Docker attēli tiek izveidoti un izvietoti Docker Hub, lai sabiedrÄ«ba tos varētu ērti lietot. Jebkuru Docker attēlu, kas atrodams Docker Hub, var viegli izmantot ar vienkārÅ”u komandu docker-pull.

Ar katru apņemÅ”anos DataHub atvērtā koda krātuvē visi Docker attēli tiek automātiski izveidoti un izvietoti Docker Hub ar "jaunāko" tagu. Ja Docker Hub ir konfigurēts ar dažiem regulāro izteiksmju zaru nosaukÅ”ana, visi tagi atvērtā pirmkoda repozitorijā tiek izlaisti arÄ« ar atbilstoÅ”iem tagu nosaukumiem pakalpojumā Docker Hub.

Izmantojot DataHub

DataHub iestatīŔana ir ļoti vienkārŔa un sastāv no trim vienkārŔiem soļiem:

  1. Klonējiet atvērtā koda krātuvi un palaidiet visus Docker konteinerus ar docker-compose, izmantojot nodroÅ”ināto docker-compose skriptu, lai ātri sāktu.
  2. Lejupielādējiet repozitorijā sniegtos datu paraugus, izmantojot komandrindas rÄ«ku, kas arÄ« tiek nodroÅ”ināts.
  3. Pārlūkojiet DataHub savā pārlūkprogrammā.

AktÄ«vi izsekots Gitter tērzÄ“Å”ana konfigurēts arÄ« ātriem jautājumiem. Lietotāji var arÄ« radÄ«t problēmas tieÅ”i GitHub repozitorijā. Pats galvenais, mēs priecājamies un novērtējam visas atsauksmes un ieteikumus!

Plāni nākotnei

PaÅ”laik katra atvērtā pirmkoda DataHub infrastruktÅ«ra vai mikropakalpojums ir veidots kā Docker konteiners, un visa sistēma tiek organizēta, izmantojot docker-komponēt. Ņemot vērā popularitāti un plaÅ”u izplatÄ«bu Kubernetes, mēs arÄ« vēlētos tuvākajā nākotnē nodroÅ”ināt uz Kubernetes balstÄ«tu risinājumu.

Mēs arÄ« plānojam nodroÅ”ināt pabeigtu risinājumu DataHub izvietoÅ”anai publiskā mākoņpakalpojumā, piemēram, Debeszils, AWS vai Google mākonis. Ņemot vērā neseno paziņojumu par LinkedIn migrāciju uz Azure, tas bÅ«s saskaņots ar metadatu komandas iekŔējām prioritātēm.

Visbeidzot, bet ne mazāk svarÄ«gi, paldies visiem DataHub agrÄ«najiem lietotājiem atvērtā pirmkoda kopienā, kuri ir novērtējuÅ”i DataHub alfa versijas un palÄ«dzējuÅ”i mums noteikt problēmas un uzlabot dokumentāciju.

Avots: www.habr.com

Pievieno komentāru