Apache ORC

ORC (Optimized Row Columnar) est un logiciel libre de stockage de données orienté colonnes de l'écosystème Apache Hadoop. Il est comparable à Parquet et RCFile, et a été créé un mois avant Parquet par Hortonworks en collaboration avec Facebook. Il est hautement optimisé pour la lecture, l'écriture et le traitement des données dans Hive.

La structure des fichiers ORC comprend des bandes et un pied de fichier.

Bandes : Regroupe les données par blocs.

  • Données d'index : Stockées sous forme de colonnes. Elles conservent les valeurs min et max de chaque colonne et la position de la ligne dans chaque colonne. Elles permettent de localiser les bandes et les groupes de lignes en fonction des données requises. Données de ligne : Les véritables données du fichier. Également stockées en tant que colonnes Pied de bande : contient un répertoire de l'emplacement du flux (données sérialisées).

Pied de fichier : Recueille des informations générales sur le fichier.

  • Métadonnées : diverses informations statistiques liées aux colonnes au niveau de la bande. Cela permet d'éliminer les fractionnements d'entrée sur la base de poussées prédictives qui sont évaluées pour chaque stripe. Pied de page du fichier : contient des informations sur la liste des bandes, le nombre de lignes par bande, le type de données pour chaque colonne, et les agrégats min, max et somme au niveau de la colonne. Postscript : contient la longueur du pied de fichier et des métadonnées, la version du fichier, la compression générale utilisée (none, zlib, snappy, etc), et la taille du dossier compressé.

La taille par défaut des bandes est de 250 Mo. Les bandes de grande taille permettent des lectures efficaces à partir de HDFS.

Ce format prend en charge les transactions ACID, des index intégrés et tous les types de Hive : structs, lists, maps et unions. Il est efficace pour les charges de travail de Business Intelligence et améliore les performances en lecture, écriture et traitement dans Hive.

Les projets utilisant ORC incluent Hadoop, Spark, Arrow, Flink, Iceberg, Druid, Gobblin et Nifi.

En savoir plus
Site officiel

Articles associés

Comparaison des architectures de base de données : data warehouse, data lake and data lakehouse

Comparaison des architectures de base de données : data warehouse, data lake and data lakehouse

Catégories : Big Data, Data Engineering | Tags : Gouvernance des données, Infrastructure, Iceberg, Parquet, Spark, Data Lake, Lakehouse, Entrepôt de données (Data Warehouse), Format de fichier

Les architectures de base de données ont fait l’objet d’une innovation constante, évoluant avec l’apparition de nouveaux cas d’utilisation, de contraintes techniques et d’exigences. Parmi les trois…

HOLDORF Guillaume

Par HOLDORF Guillaume

17 mai 2022

H2O en pratique : un protocole combinant AutoML et les approches de modélisation traditionnelles

H2O en pratique : un protocole combinant AutoML et les approches de modélisation traditionnelles

Catégories : Data Science, Formation | Tags : Automation, Cloud, H2O, Machine Learning, MLOps, On-premises, Open source, Python, XGBoost

H20 est livré avec de nombreuses fonctionnalités. La deuxième partie de la série H2O en pratique propose un protocole pour combiner la modélisation AutoML avec des approches de modélisation et d…

H2O en pratique: retour d'expérience d'un Data Scientist

H2O en pratique: retour d'expérience d'un Data Scientist

Catégories : Data Science, Formation | Tags : Automation, Cloud, H2O, Machine Learning, MLOps, On-premises, Open source, Python

Les plates-formes d’apprentissage automatique (AutoML) gagnent en popularité et deviennent un outil puissant à disposition des data scientists. Il y a quelques mois, j’ai présenté H2O, une plate-forme…

KAFERLE DEVISSCHERE Petra

Par KAFERLE DEVISSCHERE Petra

29 sept. 2021

Espace de stockage et temps de génération des formats de fichiers

Espace de stockage et temps de génération des formats de fichiers

Catégories : Data Engineering, Data Science | Tags : Avro, HDFS, Hive, ORC, Parquet, Big Data, Data Lake, Format de fichier, JavaScript Object Notation (JSON)

Le choix d’un format de fichier approprié est essentiel, que les données soient en transit ou soient stockées. Chaque format de fichier a ses avantages et ses inconvénients. Nous les avons couverts…

NGOM Barthelemy

Par NGOM Barthelemy

22 mars 2021

Développement accéléré de modèles avec H2O AutoML et Flow

Développement accéléré de modèles avec H2O AutoML et Flow

Catégories : Data Science, Formation | Tags : Automation, Cloud, H2O, Machine Learning, MLOps, On-premises, Open source, Python

La construction de modèles de Machine Learning (ML) est un processus très consommateur de temps. De plus, il requière de bonne connaissance en statistique, en algorithme de ML ainsi qu’en…

KAFERLE DEVISSCHERE Petra

Par KAFERLE DEVISSCHERE Petra

10 déc. 2020

Comparaison de différents formats de fichier en Big Data

Comparaison de différents formats de fichier en Big Data

Catégories : Big Data, Data Engineering | Tags : Business Intelligence, Data structures, Avro, HDFS, ORC, Parquet, Traitement par lots, Big Data, CSV, JavaScript Object Notation (JSON), Kubernetes, Protocol Buffers

Dans l’univers du traitement des données, il existe différents types de formats de fichiers pour stocker vos jeu de données. Chaque format a ses propres avantages et inconvénients selon les cas d…

NGOM Aida

Par NGOM Aida

23 juil. 2020

Ingestion de Data Lake, quelques bonnes pratiques

Ingestion de Data Lake, quelques bonnes pratiques

Catégories : Big Data, Data Engineering | Tags : NiFi, Gouvernance des données, HDF, Exploitation, Avro, Hive, ORC, Spark, Data Lake, Format de fichier, Protocol Buffers, Registre, Schéma

La création d’un Data Lake demande de la rigueur et de l’expérience. Voici plusieurs bonnes pratiques autour de l’ingestion des données en batch et en flux continu que nous recommandons et mettons en…

WORMS David

Par WORMS David

18 juin 2018

Quelles nouveautés pour Apache Spark 2.3 ?

Quelles nouveautés pour Apache Spark 2.3 ?

Catégories : Data Engineering, DataWorks Summit 2018 | Tags : Arrow, PySpark, Performance, ORC, Spark, Spark MLlib, Data Science, Docker, Kubernetes, pandas, Streaming

Plongeons nous dans les nouveautés proposées par la nouvelle distribution 2.3 d’Apache Spark. Cette article est composé de recherches et d’informations issues des présentations suivantes du DataWorks…

BEREZOWSKI César

Par BEREZOWSKI César

23 mai 2018

Questions essentielles sur les base de données Time Series

Questions essentielles sur les base de données Time Series

Catégories : Big Data | Tags : Druid, Grafana, HBase, Hive, ORC, Data Science, Elasticsearch, IOT

Aujourd’hui, le gros des données Big Data est de nature temporelle. On le constate dans les médias comme chez nos clients : compteurs intelligents, transactions bancaires, usines intelligentes,…

WORMS David

Par WORMS David

18 mars 2018

Stockage HDFS et Hive - comparaison des formats de fichiers et compressions

Stockage HDFS et Hive - comparaison des formats de fichiers et compressions

Catégories : Data Engineering | Tags : Business Intelligence, Hive, ORC, Parquet, Format de fichier

Il y a quelques jours, nous avons conduit un test dans le but de comparer différents format de fichiers et méthodes de compression disponibles dans Hive. Parmi ces formats, certains sont natifs à HDFS…

WORMS David

Par WORMS David

13 mars 2012

Canada - Maroc - France

Nous sommes une équipe passionnée par l'Open Source, le Big Data et les technologies associées telles que le Cloud, le Data Engineering, la Data Science le DevOps…

Nous fournissons à nos clients un savoir faire reconnu sur la manière d'utiliser les technologies pour convertir leurs cas d'usage en projets exploités en production, sur la façon de réduire les coûts et d'accélérer les livraisons de nouvelles fonctionnalités.

Si vous appréciez la qualité de nos publications, nous vous invitons à nous contacter en vue de coopérer ensemble.

Support Ukrain