Apache Pinot, un magatzem de dades OLAP open source

Apatxe Pinot

Apache Pinot és un magatzem de dades OLAP distribuït en temps real

Apatxe Pinot és una solució d'emmagatzematge OLAP distribuïda dissenyada en temps real, que es fa servir per oferir anàlisis escalables en temps real amb baixa latència.

Podeu ingerir dades de fonts de dades per lots (com HDFS, S3, Azure Data Lake, Google Cloud Storage), així com de fonts de transmissió (com Kafka). Pinot està dissenyat per escalar horitzontalment, de manera que pugui escalar a conjunts de dades més grans i taxes de consulta més altes segons calgui.

Sobre Apache Pinot

El projecte Pinot va ser desenvolupat originalment per LinkedIn i el 2015 va ser transferit a la Fundació Apache per a un major desenvolupament conjunt. L'emmagatzematge està dissenyat per funcionar en un entorn on constantment s'afegeixen noves dades i està dissenyat per proporcionar una latència mínima i predictible, cosa que permet que l'emmagatzematge s'utilitzi per al processament de consultes en temps real.

Com la majoria dels altres magatzems de dades i solucions demmagatzematge de dades OLAP, Pinot admet un llenguatge de consulta similar a SQL que admet la selecció, agregació, filtratge, agrupació, ordenació i consultes diferents de dades.

Apatxe Pinot proporciona escalabilitat horitzontal i proporciona un mitjà per aconseguir tolerància a falles i capacitat de supervivència davant d'errors de programari i maquinari. Els processos de replicació i respatller s'integren directament al cicle de processament de les dades agregades al magatzem. D'una banda, aquest enfocament permet simplificar significativament l'arquitectura, però, d'altra banda, provoca un retard entre l'addició de dades i la disponibilitat per a consultes.

Les dades s'emmagatzemen en taules en una base de dades orientada a columnes, a més que s'admeten diversos esquemes de compressió i la capacitat de col·locar múltiples valors en un camp. Pinot proporciona un sistema d'índex connectable que pot utilitzar diverses tecnologies d'indexació (índex ordenat, índex de mapa de bits, índex invertit, índex StarTree, filtre Bloom, índex de rang, índex de cerca de text (Lucence/FST), índex JSON , índex geoespacial).

De les característiques que es destaquen d'Apache Pinot:

  • Orientat a columnes: una base de dades orientada a columnes amb diversos esquemes de compressió, com a longitud d'execució i longitud de bits fixa.
  • Indexació connectable: tecnologies d'indexació connectables, Índex ordenat, Índex de mapa de bits, Índex invertit.
  • Optimització de consultes: capacitat d'optimitzar el pla de consulta/execució en funció de les metadades de consultes i segments.
  • Ingesta de fluxos i lots: ingesta gairebé en temps real de fluxos i ingesta per lots de Hadoop.
  • consulta: motor dexecució de consultes basat en SQL.
  • Upsert durant la ingesta en temps real: actualitzeu les dades a escala amb coherència
  • Camps de valors múltiples: compatibilitat amb camps de valors múltiples, la qual cosa us permet consultar camps com a valors separats per comes.
  • Nadiu del núvol a Kubernetes: Helm chart proporciona una implementació en clúster escalable horitzontalment i tolerant a falles que és fàcil dadministrar amb Kubernetes.

Nova versió d'Apache Pinot

cal esmentar que fa poc es va donar a conèixer la versió 1.0 d'Apache Pinot, la qual bàsicament va resumir molta feina per estabilitzar la base del codi i tenir en compte els desitjos de la comunitat (es van tenir en compte més de 300 comentaris).

A més, es destaca quee el nou motor de processament de consultes de múltiples etapes (Multi-Stage Query Engine) ha assolit el seu màxim potencial, el que permet implementar suport per fusionar taules (JOIN). El motor utilitzat inicialment va fer un excel·lent treball amb operacions simples de filtrat i agregació, però per garantir un temps d'execució de consultes predictible, no admetia operacions de combinació de taules.

El nou motor inclou les etapes intermèdies del processament de consultes complexes i la semàntica de SQL són a prop d'ANSI SQL. A més, la nova versió ofereix suport nadiu per processar dades en format JSON, brinda suport per al valor «NULL», s'integra amb Apache Spark 3.xi millora la implementació de taules en mode Upsert (afegint compressió de segments i brindant suport per a operacions d'eliminació).

Finalment, si hi ets interessat en poder conèixer més sobre això, has de saber que el codi del projecte està escrit a Java i distribuït sota la llicència Apache. Pots consultar els detalls de la nova versió al següent enllaç.


Deixa el teu comentari

La seva adreça de correu electrònic no es publicarà. Els camps obligatoris estan marcats amb *

*

*

  1. Responsable de les dades: Miguel Ángel Gatón
  2. Finalitat de les dades: Controlar l'SPAM, gestió de comentaris.
  3. Legitimació: El teu consentiment
  4. Comunicació de les dades: No es comunicaran les dades a tercers excepte per obligació legal.
  5. Emmagatzematge de les dades: Base de dades allotjada en Occentus Networks (UE)
  6. Drets: En qualsevol moment pots limitar, recuperar i esborrar la teva informació.