Yandex heeft de broncode van YTsaurus vrijgegeven

YTsaurus

YTsaurus is een gedistribueerd opslag- en verwerkingsplatform voor big data met ondersteuning voor het MapReduce-model.

Een paar dagen geleden Yandex onthuld via een aangekondigd de opening van de broncode van het YTsauru-platform, die wordt gebruikt voor gedistribueerde opslag en verwerking van grote hoeveelheden gegevens, die gegevensmanipulatie ondersteunt met behulp van het MapReduce-paradigma, SQL-query-engine, gedistribueerd bestandssysteem en NoSQL-opslag in sleutel-waarde-indeling.

YTsaurus gebruikt op de Yandex-infrastructuur om de rekenkracht van supercomputers efficiënt te gebruiken van het bedrijf Het platform kan worden geschaald naar clusters van meer dan 10 knooppunten, die tot een miljoen processors en duizenden GPU's dekken (voor machine learning-taken).

Geïsoleerde containers die op fysieke servers draaien, kunnen als clustereenheden worden gebruikt. Opslag kan exabytes aan gegevens bevatten die zich op verschillende media bevinden, zoals harde schijven, SSD's, NVME en RAM.

Het cluster ondersteunt dynamische toevoeging en verwijdering van knooppunten, redundantie (geen single point of failure), automatische replicatie, actieve clustersoftware-upgrades en automatisch redundantieherstel in het geval van een knooppuntstoring.

Er worden drie soorten clusters ondersteund: rekenclusters (voor massale parallelle verwerking van big data met behulp van MapReduce-bewerkingen), clusters voor draaitabellen en opslag van sleutelwaarden, en geografisch gedistribueerde clusters.

Een platformgebaseerde service kan de middelen bieden om gegevens op te slaan en te verwerken voor tienduizenden gebruikers. Typische YTsaurus-toepassingen in Yandex zijn onder meer het opslaan van informatie over advertentienetwerkgebruikers, het trainen van machine learning-modellen, het vormen van een zoekindex en het bouwen van een datawarehouse voor services zoals Yandex Taxi. , Food, Lavka en leveringen

Van de basis use cases wordt vermeld:

  • Batchverwerking: MapReduce en SPYT (Apache Spark als rekenmachine op gegevens in YTsaurus) voor de verwerking van gestructureerde en semi-gestructureerde gegevens: records of financiële transacties.
  • Ad-hocanalyse: Snelle query's via CHYT (een groep ClickHouse-servers op YTsaurus-rekenknooppunten) zonder gegevens naar een afzonderlijk analysesysteem te kopiëren. ODBC en JDBC met de mogelijkheid om BI te verbinden voor visualisatie.
  • OLTP-taken: Realtime transactiewerk met opslag van sleutelwaarden: bijvoorbeeld opslag van gebruikersprofielen, weergave van advertenties of verwerking van streams.
  • Machinaal leren: Beheer GPU-clusters om modellen met miljarden parameters te trainen.
  • Opslag van meta-informatie: Transactionele opslag van meta-informatie en betrouwbare service van gedistribueerde sloten.
  • Creatie van datawarehouses en ETL voor gegevensverwerking op meerdere niveaus met behulp van typische tools: Apache Spark, SQL, MapReduce.

Terwijl van de kant van de belangrijkste elementen van de architectuur, worden de volgende genoemd:

  • Gedistribueerd bestandssysteem en Cypress fouttolerante boomgebaseerde opslag van meta-informatie.
  • Scheduler voor gedistribueerd computergebruik met ondersteuning voor het MapReduce-model, evenals geavanceerde basisbewerkingen.
  • Horizontale schaalbaarheid van IT-activiteiten.
  • Isolatie van computerbronnen en mogelijkheid om bepaalde computerbronnen (CPU, GPU, RAM) in verschillende verhoudingen toe te wijzen.
  • Draaitabellen voor het maken van OLTP-opslag, ondersteuning voor op MVCC gebaseerde opslag, transacties, de mogelijkheid om gegevens te verwijderen na verloop en berichtenwachtrijen voor het streamen van gegevensverwerking via draaitabellen.
  • API en bibliotheken voor programmeertalen C++, Python, Java, Go.
  • Een webinterface voor gebruikers en beheerders die navigatie door een boomachtige opslag ondersteunt.

Eindelijk als u er meer over wilt weten, moet u weten dat de projectcode is geschreven in C/C++ en open is onder de Apache 2.0-licentie. U kunt de details controleren in de volgende link.

El GitHub-opslagplaats bevat de servercode voor YTsaurus, het implementatieframework dat wordt gebruikt door k8s, een webinterface naar het systeem en client-SDK's voor populaire programmeertalen zoals C++, Java, Go en Python. 


Laat je reactie achter

Uw e-mailadres wordt niet gepubliceerd. Verplichte velden zijn gemarkeerd met *

*

*

  1. Verantwoordelijk voor de gegevens: Miguel Ángel Gatón
  2. Doel van de gegevens: Controle SPAM, commentaarbeheer.
  3. Legitimatie: uw toestemming
  4. Mededeling van de gegevens: De gegevens worden niet aan derden meegedeeld, behalve op grond van wettelijke verplichting.
  5. Gegevensopslag: database gehost door Occentus Networks (EU)
  6. Rechten: u kunt uw gegevens op elk moment beperken, herstellen en verwijderen.