parquet
Used in:
components
- OverviewOverview
- VersionsVersions
- DependentsDependents
- DependenciesDependencies
<dependency> <groupId>org.apache.parquet</groupId> <artifactId>parquet</artifactId> <version>1.15.1</version> </dependency>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>org.apache</groupId> <artifactId>apache</artifactId> <version>33</version> </parent> <groupId>org.apache.parquet</groupId> <artifactId>parquet</artifactId> <version>1.15.1</version> <packaging>pom</packaging> <name>Apache Parquet Java</name> <url>https://parquet.apache.org</url> <description>Parquet is a columnar storage format that supports nested data. This provides the java implementation.</description> <scm> <connection>scm:git:git@github.com:apache/parquet-mr.git</connection> <url>scm:git:git@github.com:apache/parquet-mr.git</url> <developerConnection>scm:git:git@github.com:apache/parquet-mr.git</developerConnection> <tag>apache-parquet-1.15.1-rc0</tag> </scm> <licenses> <license> <name>The Apache Software License, Version 2.0</name> <url>https://www.apache.org/licenses/LICENSE-2.0.txt</url> </license> </licenses> <issueManagement> <system>GitHub</system> <url>https://github.com/apache/parquet-java/issues</url> </issueManagement> <mailingLists> <mailingList> <name>Dev Mailing List</name> <post>dev@parquet.apache.org</post> <subscribe>dev-subscribe@parquet.apache.org</subscribe> <unsubscribe>dev-unsubscribe@parquet.apache.org</unsubscribe> </mailingList> <mailingList> <name>Commits Mailing List</name> <post>commits@parquet.apache.org</post> <subscribe>commits-subscribe@parquet.apache.org</subscribe> <unsubscribe>commits-unsubscribe@parquet.apache.org</unsubscribe> </mailingList> </mailingLists> <repositories> <repository> <id>jitpack.io</id> <url>https://jitpack.io</url> <name>Jitpack.io repository</name> <!-- needed for brotli-codec --> </repository> </repositories> <properties> <maven.compiler.source>1.8</maven.compiler.source> <maven.compiler.target>1.8</maven.compiler.target> <github.global.server>github</github.global.server> <jackson.groupId>com.fasterxml.jackson.core</jackson.groupId> <jackson.datatype.groupId>com.fasterxml.jackson.datatype</jackson.datatype.groupId> <jackson.package>com.fasterxml.jackson</jackson.package> <!-- To upgrade jackson, check the jdk versions inside the jar and include any new versions in the shading in parquet-jackson. --> <jackson.version>2.18.1</jackson.version> <jackson-databind.version>2.18.1</jackson-databind.version> <japicmp.version>0.21.0</japicmp.version> <javax.annotation.version>1.3.2</javax.annotation.version> <spotless.version>2.30.0</spotless.version> <shade.prefix>shaded.parquet</shade.prefix> <hadoop.version>3.3.6</hadoop.version> <parquet.format.version>2.10.0</parquet.format.version> <previous.version>1.15.0</previous.version> <thrift.executable>thrift</thrift.executable> <format.thrift.executable>${thrift.executable}</format.thrift.executable> <scala.version>2.12.17</scala.version> <!-- scala.binary.version is used for projects that fetch dependencies that are in scala --> <scala.binary.version>2.12</scala.binary.version> <scala.maven.test.skip>false</scala.maven.test.skip> <pig.version>0.16.0</pig.version> <pig.classifier>h2</pig.classifier> <thrift-maven-plugin.version>0.10.0</thrift-maven-plugin.version> <thrift.version>0.21.0</thrift.version> <format.thrift.version>${thrift.version}</format.thrift.version> <fastutil.version>8.5.13</fastutil.version> <semver.api.version>0.9.33</semver.api.version> <slf4j.version>1.7.33</slf4j.version> <avro.version>1.11.4</avro.version> <guava.version>33.2.1-jre</guava.version> <brotli-codec.version>0.1.1</brotli-codec.version> <mockito.version>1.10.19</mockito.version> <powermock.version>2.0.9</powermock.version> <net.openhft.version>0.26ea0</net.openhft.version> <exec-maven-plugin.version>1.6.0</exec-maven-plugin.version> <!-- parquet-cli dependencies --> <opencsv.version>2.3</opencsv.version> <jcommander.version>1.82</jcommander.version> <tukaani.version>1.10</tukaani.version> <zstd-jni.version>1.5.6-6</zstd-jni.version> <commons-text.version>1.12.0</commons-text.version> <jsr305.version>3.0.2</jsr305.version> <commons-lang3.version>3.17.0</commons-lang3.version> <!-- properties for the profiles --> <surefire.argLine>-XX:MaxJavaStackTraceDepth=8</surefire.argLine> <surefire.logLevel>ERROR</surefire.logLevel> <!-- Resource intesive tests are enabled by default but disabled in the CI envrionment --> <enableResourceIntensiveTests>true</enableResourceIntensiveTests> <extraJavaTestArgs> -XX:+IgnoreUnrecognizedVMOptions --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.lang.invoke=ALL-UNNAMED --add-opens=java.base/java.lang.reflect=ALL-UNNAMED --add-opens=java.base/java.io=ALL-UNNAMED --add-opens=java.base/java.net=ALL-UNNAMED --add-opens=java.base/java.nio=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.util.concurrent=ALL-UNNAMED --add-opens=java.base/java.util.concurrent.atomic=ALL-UNNAMED --add-opens=java.base/sun.nio.ch=ALL-UNNAMED --add-opens=java.base/sun.nio.cs=ALL-UNNAMED --add-opens=java.base/sun.security.action=ALL-UNNAMED --add-opens=java.base/sun.util.calendar=ALL-UNNAMED </extraJavaTestArgs> </properties> <modules> <module>parquet-arrow</module> <module>parquet-avro</module> <module>parquet-benchmarks</module> <module>parquet-cli</module> <module>parquet-column</module> <module>parquet-common</module> <module>parquet-encoding</module> <module>parquet-format-structures</module> <module>parquet-generator</module> <module>parquet-hadoop</module> <module>parquet-jackson</module> <module>parquet-pig</module> <module>parquet-pig-bundle</module> <module>parquet-protobuf</module> <module>parquet-thrift</module> <module>parquet-hadoop-bundle</module> </modules> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.13.2</version> <scope>test</scope> </dependency> <dependency> <groupId>org.easymock</groupId> <artifactId>easymock</artifactId> <version>5.4.0</version> <scope>test</scope> </dependency> </dependencies> <dependencyManagement> <dependencies> <dependency> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-mapreduce-client-core</artifactId> <version>${hadoop.version}</version> <exclusions> <exclusion> <groupId>org.slf4j</groupId> <artifactId>*</artifactId> </exclusion> <exclusion> <groupId>ch.qos.reload4j</groupId> <artifactId>*</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-client</artifactId> <version>${hadoop.version}</version> <exclusions> <exclusion> <groupId>org.slf4j</groupId> <artifactId>*</artifactId> </exclusion> <exclusion> <groupId>ch.qos.reload4j</groupId> <artifactId>*</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-common</artifactId> <version>${hadoop.version}</version> <exclusions> <exclusion> <groupId>org.slf4j</groupId> <artifactId>*</artifactId> </exclusion> <exclusion> <groupId>ch.qos.reload4j</groupId> <artifactId>*</artifactId> </exclusion> </exclusions> </dependency> </dependencies> </dependencyManagement> <reporting> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-javadoc-plugin</artifactId> <reportSets> <reportSet><!-- by default, id = "default" --> <reports><!-- select non-aggregate reports --> <report>javadoc</report> <report>test-javadoc</report> </reports> </reportSet> <reportSet><!-- aggregate reportSet, to define in poms having modules --> <id>aggregate</id> <inherited>false</inherited><!-- don't run aggregate in child modules --> <reports> <report>aggregate</report> </reports> </reportSet> </reportSets> <configuration> <sourceFileExcludes> <sourceFileExclude>**/generated-sources/**/*.java</sourceFileExclude> </sourceFileExcludes> <source>8</source> <quiet>true</quiet> </configuration> </plugin> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>cobertura-maven-plugin</artifactId> <version>2.7</version> <configuration> <formats> <format>html</format> </formats> <aggregate>true</aggregate> <instrumentation> <ignores> <ignore>java.lang.UnsupportedOperationException.*</ignore> </ignores> <excludes> <exclude>parquet/Log.class</exclude> <exclude>**/*Exception.class</exclude> <exclude>parquet/example/**/*.class</exclude> </excludes> </instrumentation> </configuration> </plugin> </plugins> </reporting> <build> <pluginManagement> <plugins> <plugin> <!-- Disable the source artifact from ASF parent --> <artifactId>maven-assembly-plugin</artifactId> <executions> <execution> <id>source-release-assembly</id> <phase>none</phase> </execution> </executions> </plugin> <plugin> <artifactId>maven-enforcer-plugin</artifactId> <executions> <execution> <id>enforce-banned-dependencies</id> <goals> <goal>enforce</goal> </goals> <configuration> <rules> <bannedDependencies> <excludes> <exclude>org.slf4j:slf4j-log4j12:*:*:compile</exclude> <exclude>org.slf4j:slf4j-reload4j:*:*:compile</exclude> </excludes> </bannedDependencies> </rules> <fail>true</fail> </configuration> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-shade-plugin</artifactId> <executions> <execution> <phase>package</phase> <goals> <goal>shade</goal> </goals> <configuration> <minimizeJar>true</minimizeJar> <artifactSet> <includes> <include>${jackson.groupId}:*</include> <include>it.unimi.dsi:fastutil</include> <include>net.openhft:*</include> </includes> </artifactSet> <!-- Shade jackson but do not include any class. Let parquet-jackson handle this --> <filters> <filter> <artifact>${jackson.groupId}:*</artifact> <excludes> <exclude>**</exclude> </excludes> </filter> </filters> <relocations> <relocation> <pattern>${jackson.package}</pattern> <shadedPattern>${shade.prefix}.${jackson.package}</shadedPattern> </relocation> <relocation> <pattern>it.unimi.dsi</pattern> <shadedPattern>${shade.prefix}.it.unimi.dsi</shadedPattern> </relocation> <relocation> <pattern>net.openhft</pattern> <shadedPattern>${shade.prefix}.net.openhft</shadedPattern> </relocation> </relocations> </configuration> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <configuration> <archive> <manifestEntries> <git-SHA-1>${buildNumber}</git-SHA-1> </manifestEntries> </archive> </configuration> <executions> <execution> <goals> <goal>test-jar</goal> </goals> </execution> </executions> </plugin> </plugins> </pluginManagement> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-javadoc-plugin</artifactId> <configuration> <sourceFileExcludes> <sourceFileExclude>**/generated-sources/**/*.java</sourceFileExclude> </sourceFileExcludes> <source>8</source> <quiet>true</quiet> </configuration> </plugin> <plugin> <groupId>com.mycila.maven-license-plugin</groupId> <artifactId>maven-license-plugin</artifactId> <version>1.10.b1</version> <configuration> <header>src/license.txt</header> <strictCheck>true</strictCheck> </configuration> <!--executions> <execution> <phase>test</phase> <goals> <goal>check</goal> </goals> </execution> </executions--> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-remote-resources-plugin</artifactId> <configuration> <skip>true</skip> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-failsafe-plugin</artifactId> <configuration> <argLine>${extraJavaTestArgs}</argLine> </configuration> <executions> <execution> <goals> <goal>integration-test</goal> <goal>verify</goal> </goals> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <configuration> <argLine>${surefire.argLine} ${extraJavaTestArgs}</argLine> <systemPropertyVariables> <!-- Configure Parquet logging during tests See http://www.slf4j.org/api/org/slf4j/impl/SimpleLogger.html --> <org.slf4j.simpleLogger.defaultLogLevel>${surefire.logLevel}</org.slf4j.simpleLogger.defaultLogLevel> <org.slf4j.simpleLogger.showDateTime>true</org.slf4j.simpleLogger.showDateTime> <org.slf4j.simpleLogger.dateTimeFormat>YYYY-MM-dd HH:mm:ss</org.slf4j.simpleLogger.dateTimeFormat> <org.slf4j.simpleLogger.showThreadName>false</org.slf4j.simpleLogger.showThreadName> <org.slf4j.simpleLogger.showShortLogName>true</org.slf4j.simpleLogger.showShortLogName> <!-- Configure log level for Hadoop --> <hadoop.logLevel>${surefire.logLevel}</hadoop.logLevel> <enableResourceIntensiveTests>${enableResourceIntensiveTests}</enableResourceIntensiveTests> </systemPropertyVariables> <excludes> <exclude>**/benchmark/*.java</exclude> </excludes> </configuration> </plugin> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>buildnumber-maven-plugin</artifactId> <!-- Warning! 3.2.1 caused issues during verification, 3.2.0 is known to work correctly. --> <version>3.2.0</version> <executions> <execution> <phase>validate</phase> <goals> <goal>create</goal> </goals> </execution> </executions> </plugin> <plugin> <groupId>org.apache.rat</groupId> <artifactId>apache-rat-plugin</artifactId> <executions> <execution> <phase>test</phase> <goals> <goal>check</goal> </goals> </execution> </executions> <configuration> <consoleOutput>true</consoleOutput> <excludes> <exclude>.github/PULL_REQUEST_TEMPLATE.md</exclude> <exclude>**/*.parquet</exclude> <exclude>**/*.avro</exclude> <exclude>**/*.json</exclude> <exclude>**/*.avsc</exclude> <exclude>**/*.iml</exclude> <exclude>**/*.log</exclude> <exclude>**/*.md.vm</exclude> <exclude>**/.classpath</exclude> <exclude>**/.project</exclude> <exclude>**/.settings/**</exclude> <exclude>**/build/**</exclude> <exclude>**/target/**</exclude> <exclude>.git/**</exclude> <exclude>.gitignore</exclude> <exclude>.gitmodules</exclude> <exclude>.idea/**</exclude> <exclude>*/jdiff/*.xml</exclude> <exclude>licenses/**</exclude> <exclude>protobuf_install/**</exclude> <exclude>thrift-${thrift.version}/**</exclude> <exclude>thrift-${thrift.version}.tar.gz</exclude> <exclude>**/dependency-reduced-pom.xml</exclude> <exclude>**/*.rej</exclude> </excludes> </configuration> </plugin> <!-- https://mvnrepository.com/artifact/com.diffplug.spotless/spotless-maven-plugin --> <plugin> <groupId>com.diffplug.spotless</groupId> <artifactId>spotless-maven-plugin</artifactId> <version>${spotless.version}</version> <configuration> <java> <excludes> <exclude>**/generated-sources/**</exclude> </excludes> <toggleOffOn /> <removeUnusedImports /> <importOrder /> <trimTrailingWhitespace /> <palantirJavaFormat /> <endWithNewline /> <formatAnnotations /> <indent> <tabs>true</tabs> <spacesPerTab>4</spacesPerTab> </indent> <indent> <spaces>true</spaces> <spacesPerTab>2</spacesPerTab> </indent> </java> </configuration> <executions> <execution> <phase>verify</phase> <goals> <goal>check</goal> </goals> </execution> </executions> </plugin> <plugin> <groupId>com.github.siom79.japicmp</groupId> <artifactId>japicmp-maven-plugin</artifactId> <version>${japicmp.version}</version> <configuration> <parameter> <oldVersionPattern>${previous.version}</oldVersionPattern> <breakBuildOnSourceIncompatibleModifications>true</breakBuildOnSourceIncompatibleModifications> <onlyModified>true</onlyModified> <ignoreMissingClassesByRegularExpressions> <ignoreMissingClassesByRegularExpression>${shade.prefix}.*</ignoreMissingClassesByRegularExpression> </ignoreMissingClassesByRegularExpressions> <ignoreMissingOldVersion>true</ignoreMissingOldVersion> <excludeModules> <!-- Excluding the following modules because they are not part of the parquet public API --> <excludeModule>parquet-benchmarks</excludeModule> <excludeModule>parquet-cli</excludeModule> <excludeModule>parquet-tools-deprecated</excludeModule> <excludeModule>parquet-format-structures</excludeModule> <!-- Excluding the following modules because bundles do not contain any java classes while they still fail the compatibility check because of missing dependencies --> <excludeModule>parquet-hadoop-bundle</excludeModule> <excludeModule>parquet-pig-bundle</excludeModule> </excludeModules> <excludes> <exclude>${shade.prefix}</exclude> <!-- Removal of a protected method in a class that's not supposed to be subclassed by third-party code --> <exclude>org.apache.parquet.column.values.bytestreamsplit.ByteStreamSplitValuesReader#gatherElementDataFromStreams(byte[])</exclude> <!-- Due to the removal of deprecated methods --> <exclude>org.apache.parquet.arrow.schema.SchemaMapping$TypeMappingVisitor#visit(org.apache.parquet.arrow.schema.SchemaMapping$MapTypeMapping)</exclude> <!-- Make static variables final --> <exclude>org.apache.parquet.avro.AvroReadSupport#AVRO_REQUESTED_PROJECTION</exclude> <exclude>org.apache.parquet.avro.AvroReadSupport#AVRO_DATA_SUPPLIER</exclude> <exclude>org.apache.parquet.hadoop.ParquetFileReader#PARQUET_READ_PARALLELISM</exclude> </excludes> </parameter> </configuration> <executions> <execution> <phase>verify</phase> <goals> <goal>cmp</goal> </goals> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-dependency-plugin</artifactId> <executions> <execution> <goals> <goal>analyze-only</goal> </goals> <configuration> <failOnWarning>true</failOnWarning> <ignoreNonCompile>true</ignoreNonCompile> <ignoredDependencies> <dependency>javax.annotation:javax.annotation-api:jar:1.3.2</dependency> </ignoredDependencies> </configuration> </execution> </executions> </plugin> <plugin> <groupId>org.cyclonedx</groupId> <artifactId>cyclonedx-maven-plugin</artifactId> <version>2.8.0</version> <executions> <execution> <phase>package</phase> <goals> <goal>makeBom</goal> </goals> </execution> </executions> </plugin> </plugins> </build> <profiles> <profile> <id>jdk9+</id> <activation> <jdk>[9,)</jdk> </activation> <properties> <!-- release takes precedence over source/target if java version is 9 or higher --> <maven.compiler.release>8</maven.compiler.release> </properties> </profile> <profile> <id>hadoop2</id> <properties> <hadoop.version>2.7.3</hadoop.version> </properties> </profile> <!-- Profile for tests to have more output --> <profile> <id>verbose-test</id> <properties> <surefire.logLevel>INFO</surefire.logLevel> <surefire.argLine>-XX:MaxJavaStackTraceDepth=1024</surefire.argLine> </properties> </profile> <profile> <id>vector-plugins</id> <modules> <module>parquet-plugins/parquet-encoding-vector</module> <module>parquet-plugins/parquet-plugins-benchmarks</module> </modules> </profile> </profiles> </project>