pinot-tools
Used in:
components
- OverviewOverview
- VersionsVersions
- DependentsDependents
- DependenciesDependencies
<dependency> <groupId>org.apache.pinot</groupId> <artifactId>pinot-tools</artifactId> <version>1.3.0</version> </dependency>
<?xml version="1.0"?> <!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. --> <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/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <artifactId>pinot</artifactId> <groupId>org.apache.pinot</groupId> <version>1.3.0</version> </parent> <artifactId>pinot-tools</artifactId> <name>Pinot Tools</name> <url>https://pinot.apache.org/</url> <properties> <pinot.root>${basedir}/..</pinot.root> </properties> <dependencies> <dependency> <groupId>org.apache.pinot</groupId> <artifactId>pinot-controller</artifactId> </dependency> <dependency> <groupId>org.apache.pinot</groupId> <artifactId>pinot-broker</artifactId> </dependency> <dependency> <groupId>org.apache.pinot</groupId> <artifactId>pinot-server</artifactId> </dependency> <dependency> <groupId>org.apache.pinot</groupId> <artifactId>pinot-minion</artifactId> </dependency> <dependency> <groupId>org.apache.pinot</groupId> <artifactId>pinot-minion-builtin-tasks</artifactId> </dependency> <dependency> <groupId>org.apache.pinot</groupId> <artifactId>pinot-batch-ingestion-common</artifactId> </dependency> <dependency> <groupId>org.apache.pinot</groupId> <artifactId>pinot-avro</artifactId> </dependency> <dependency> <groupId>org.apache.pinot</groupId> <artifactId>pinot-confluent-avro</artifactId> </dependency> <dependency> <groupId>org.apache.pinot</groupId> <artifactId>pinot-csv</artifactId> </dependency> <dependency> <groupId>org.apache.pinot</groupId> <artifactId>pinot-protobuf</artifactId> </dependency> <dependency> <groupId>org.apache.pinot</groupId> <artifactId>pinot-json</artifactId> </dependency> <dependency> <groupId>org.apache.pinot</groupId> <artifactId>pinot-orc</artifactId> </dependency> <dependency> <groupId>org.apache.pinot</groupId> <artifactId>pinot-parquet</artifactId> </dependency> <dependency> <groupId>org.apache.pinot</groupId> <artifactId>pinot-thrift</artifactId> </dependency> <dependency> <groupId>org.apache.pinot</groupId> <artifactId>pinot-kafka-2.0</artifactId> <scope>runtime</scope> </dependency> <dependency> <groupId>org.apache.pinot</groupId> <artifactId>pinot-kafka-3.0</artifactId> <scope>runtime</scope> </dependency> <dependency> <groupId>org.apache.pinot</groupId> <artifactId>pinot-kinesis</artifactId> <scope>runtime</scope> </dependency> <dependency> <groupId>org.apache.pinot</groupId> <artifactId>pinot-pulsar</artifactId> <scope>runtime</scope> </dependency> <dependency> <groupId>org.apache.pinot</groupId> <artifactId>pinot-batch-ingestion-standalone</artifactId> <scope>runtime</scope> </dependency> <dependency> <groupId>org.apache.pinot</groupId> <artifactId>pinot-s3</artifactId> <scope>runtime</scope> </dependency> <dependency> <groupId>org.apache.pinot</groupId> <artifactId>pinot-yammer</artifactId> </dependency> <dependency> <groupId>org.apache.pinot</groupId> <artifactId>pinot-dropwizard</artifactId> </dependency> <dependency> <groupId>org.apache.pinot</groupId> <artifactId>pinot-compound-metrics</artifactId> </dependency> <dependency> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-common</artifactId> <scope>compile</scope> </dependency> <!-- Replace bcprov-jdk15on which is excluded from hadoop-common --> <dependency> <groupId>org.bouncycastle</groupId> <artifactId>bcprov-jdk18on</artifactId> </dependency> <dependency> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-hdfs</artifactId> <scope>compile</scope> </dependency> <dependency> <groupId>xml-apis</groupId> <artifactId>xml-apis</artifactId> </dependency> <dependency> <groupId>software.amazon.awssdk</groupId> <artifactId>sdk-core</artifactId> </dependency> <dependency> <groupId>software.amazon.awssdk</groupId> <artifactId>s3</artifactId> </dependency> <dependency> <groupId>org.reactivestreams</groupId> <artifactId>reactive-streams</artifactId> </dependency> <dependency> <groupId>info.picocli</groupId> <artifactId>picocli</artifactId> </dependency> <dependency> <groupId>org.glassfish.tyrus.bundles</groupId> <artifactId>tyrus-standalone-client</artifactId> </dependency> <!-- This dependency is needed for LaunchSparkDataIngestionJobCommand. The dependency only contains a few classes and scala library which has been excluded. Hence, it will not interfere with spark-core classes present in runtime env and will use the env spark version to actually execute the spark job --> <dependency> <groupId>org.apache.spark</groupId> <artifactId>spark-launcher_${scala.compat.version}</artifactId> <version>${spark3.version}</version> </dependency> <dependency> <groupId>org.testng</groupId> <artifactId>testng</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.mockito</groupId> <artifactId>mockito-core</artifactId> <scope>test</scope> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>appassembler-maven-plugin</artifactId> <configuration> <programs> <program> <mainClass>org.apache.pinot.tools.PinotToolLauncher</mainClass> <name>pinot-tools</name> <jvmSettings> <initialMemorySize>1G</initialMemorySize> <maxMemorySize>1G</maxMemorySize> <extraArguments> <extraArgument>-Dlog4j2.configurationFile=conf/pinot-tools-log4j2.xml</extraArgument> </extraArguments> </jvmSettings> </program> <program> <mainClass>org.apache.pinot.tools.admin.PinotAdministrator</mainClass> <name>pinot-admin</name> <jvmSettings> <initialMemorySize>4G</initialMemorySize> <extraArguments> <extraArgument>-Dlog4j2.configurationFile=conf/log4j2.xml</extraArgument> <extraArgument>-Dpinot.admin.system.exit=true</extraArgument> </extraArguments> </jvmSettings> </program> <program> <mainClass>org.apache.pinot.tools.StarTreeIndexViewer</mainClass> <name>star-tree-index-viewer</name> <jvmSettings> <initialMemorySize>1G</initialMemorySize> <maxMemorySize>1G</maxMemorySize> <extraArguments> <extraArgument>-Dlog4j2.configurationFile=conf/pinot-tools-log4j2.xml</extraArgument> </extraArguments> </jvmSettings> </program> <program> <mainClass>org.apache.pinot.tools.admin.PinotController</mainClass> <name>start-controller</name> <jvmSettings> <initialMemorySize>1G</initialMemorySize> <maxMemorySize>1G</maxMemorySize> <extraArguments> <extraArgument>-Dlog4j2.configurationFile=conf/log4j2.xml</extraArgument> </extraArguments> </jvmSettings> </program> <program> <mainClass>org.apache.pinot.tools.admin.PinotBroker</mainClass> <name>start-broker</name> <jvmSettings> <initialMemorySize>1G</initialMemorySize> <maxMemorySize>1G</maxMemorySize> <extraArguments> <extraArgument>-Dlog4j2.configurationFile=conf/log4j2.xml</extraArgument> </extraArguments> </jvmSettings> </program> <program> <mainClass>org.apache.pinot.tools.admin.PinotServer</mainClass> <name>start-server</name> <jvmSettings> <initialMemorySize>1G</initialMemorySize> <maxMemorySize>1G</maxMemorySize> <extraArguments> <extraArgument>-Dlog4j2.configurationFile=conf/log4j2.xml</extraArgument> </extraArguments> </jvmSettings> </program> <program> <mainClass>org.apache.pinot.tools.admin.PinotMinion</mainClass> <name>start-minion</name> <jvmSettings> <initialMemorySize>1G</initialMemorySize> <maxMemorySize>1G</maxMemorySize> <extraArguments> <extraArgument>-Dlog4j2.configurationFile=conf/log4j2.xml</extraArgument> </extraArguments> </jvmSettings> </program> <program> <mainClass>org.apache.pinot.tools.admin.PinotServiceManagerStarter</mainClass> <name>start-service-manager</name> <jvmSettings> <initialMemorySize>1G</initialMemorySize> <maxMemorySize>1G</maxMemorySize> <extraArguments> <extraArgument>-Dlog4j2.configurationFile=conf/log4j2.xml</extraArgument> </extraArguments> </jvmSettings> </program> <program> <mainClass>org.apache.pinot.tools.Quickstart</mainClass> <name>quick-start-batch</name> <jvmSettings> <initialMemorySize>4G</initialMemorySize> <extraArguments> <extraArgument>-Dlog4j2.configurationFile=conf/quickstart-log4j2.xml</extraArgument> </extraArguments> </jvmSettings> </program> <program> <mainClass>org.apache.pinot.tools.HybridQuickstart</mainClass> <name>quick-start-hybrid</name> <jvmSettings> <initialMemorySize>4G</initialMemorySize> <extraArguments> <extraArgument>-Dlog4j2.configurationFile=conf/quickstart-log4j2.xml</extraArgument> </extraArguments> </jvmSettings> </program> <program> <mainClass>org.apache.pinot.tools.RealtimeQuickStart</mainClass> <name>quick-start-streaming</name> <jvmSettings> <initialMemorySize>4G</initialMemorySize> <extraArguments> <extraArgument>-Dlog4j2.configurationFile=conf/quickstart-log4j2.xml</extraArgument> </extraArguments> </jvmSettings> </program> <program> <mainClass>org.apache.pinot.tools.UpsertQuickStart</mainClass> <name>quick-start-upsert-streaming</name> <jvmSettings> <initialMemorySize>4G</initialMemorySize> <extraArguments> <extraArgument>-Dlog4j2.configurationFile=conf/quickstart-log4j2.xml</extraArgument> </extraArguments> </jvmSettings> </program> <program> <mainClass>org.apache.pinot.tools.PartialUpsertQuickStart</mainClass> <name>quick-start-partial-upsert-streaming</name> <jvmSettings> <initialMemorySize>1G</initialMemorySize> <maxMemorySize>1G</maxMemorySize> <extraArguments> <extraArgument>-Dlog4j2.configurationFile=conf/quickstart-log4j2.xml</extraArgument> </extraArguments> </jvmSettings> </program> <program> <mainClass>org.apache.pinot.tools.JsonIndexQuickStart</mainClass> <name>quick-start-json-index-batch</name> <jvmSettings> <initialMemorySize>4G</initialMemorySize> <extraArguments> <extraArgument>-Dlog4j2.configurationFile=conf/quickstart-log4j2.xml</extraArgument> </extraArguments> </jvmSettings> </program> <program> <mainClass>org.apache.pinot.tools.RealtimeJsonIndexQuickStart</mainClass> <name>quick-start-json-index-streaming</name> <jvmSettings> <initialMemorySize>4G</initialMemorySize> <extraArguments> <extraArgument>-Dlog4j2.configurationFile=conf/quickstart-log4j2.xml</extraArgument> </extraArguments> </jvmSettings> </program> <program> <mainClass>org.apache.pinot.tools.RealtimeComplexTypeHandlingQuickStart</mainClass> <name>quick-start-complex-type-handling-streaming</name> <jvmSettings> <initialMemorySize>4G</initialMemorySize> <extraArguments> <extraArgument>-Dlog4j2.configurationFile=conf/quickstart-log4j2.xml</extraArgument> </extraArguments> </jvmSettings> </program> <program> <mainClass>org.apache.pinot.tools.OfflineComplexTypeHandlingQuickStart</mainClass> <name>quick-start-complex-type-handling-offline</name> <jvmSettings> <initialMemorySize>4G</initialMemorySize> <extraArguments> <extraArgument>-Dlog4j2.configurationFile=conf/quickstart-log4j2.xml</extraArgument> </extraArguments> </jvmSettings> </program> <program> <mainClass>org.apache.pinot.tools.AuthQuickstart</mainClass> <name>quick-start-auth</name> <jvmSettings> <initialMemorySize>4G</initialMemorySize> <extraArguments> <extraArgument>-Dlog4j2.configurationFile=conf/quickstart-log4j2.xml</extraArgument> </extraArguments> </jvmSettings> </program> <program> <mainClass>org.apache.pinot.tools.AuthZkBasicQuickstart</mainClass> <name>quick-start-auth-zk</name> <jvmSettings> <initialMemorySize>4G</initialMemorySize> <extraArguments> <extraArgument>-Dlog4j2.configurationFile=conf/quickstart-log4j2.xml</extraArgument> </extraArguments> </jvmSettings> </program> <program> <mainClass>org.apache.pinot.tools.perf.QueryRunner</mainClass> <name>query-runner</name> <jvmSettings> <initialMemorySize>4G</initialMemorySize> <extraArguments> <extraArgument>-Dlog4j2.configurationFile=conf/pinot-tools-log4j2.xml</extraArgument> </extraArguments> </jvmSettings> </program> <program> <mainClass>org.apache.pinot.tools.admin.command.FileSystemCommand</mainClass> <name>pinot-fs-util</name> <jvmSettings> <initialMemorySize>4G</initialMemorySize> <extraArguments> <extraArgument>-Dlog4j2.configurationFile=conf/pinot-tools-log4j2.xml</extraArgument> </extraArguments> </jvmSettings> </program> </programs> <binFileExtensions> <unix>.sh</unix> </binFileExtensions> <!-- Set the target configuration directory to be used in the bin scripts --> <configurationDirectory>conf</configurationDirectory> <!-- Copy the contents from "/src/main/config" to the target configuration directory in the assembled application --> <copyConfigurationDirectory>false</copyConfigurationDirectory> <!-- Include the target configuration directory in the beginning of the classpath declaration in the bin scripts --> <includeConfigurationDirectoryInClasspath>false</includeConfigurationDirectoryInClasspath> <assembleDirectory>${project.build.directory}/${project.artifactId}-pkg</assembleDirectory> <unixScriptTemplate>${project.basedir}/src/main/resources/appAssemblerScriptTemplate</unixScriptTemplate> <!-- Generate bin scripts for windows and unix pr default --> <platforms> <platform>unix</platform> </platforms> <repositoryLayout>flat</repositoryLayout> <repositoryName>lib</repositoryName> </configuration> </plugin> <plugin> <artifactId>maven-assembly-plugin</artifactId> <executions> <execution> <id>build-pinot-tool-launcher</id> <configuration> <descriptorRefs> <descriptorRef>jar-with-dependencies</descriptorRef> </descriptorRefs> <archive> <manifest> <mainClass>org.apache.pinot.tools.PinotToolLauncher</mainClass> </manifest> </archive> <finalName>pinot-tool-launcher</finalName> <archiverConfig> <compress>${archiver.compress}</compress> </archiverConfig> <recompressZippedFiles>${archiver.recompressZippedFiles}</recompressZippedFiles> </configuration> <phase>package</phase> <goals> <goal>single</goal> </goals> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-resources-plugin</artifactId> <executions> <execution> <id>copy-kafka-resources</id> <phase>process-resources</phase> <goals> <goal>copy-resources</goal> </goals> <configuration> <!-- this is important --> <overwrite>true</overwrite> <!-- target --> <outputDirectory>${basedir}/target/classes/sample_data/</outputDirectory> <resources> <resource> <!-- source --> <directory>src/main/resources/sample_data/kafka_2.0</directory> </resource> </resources> </configuration> </execution> <execution> <id>copy-batch-ingestion-resources</id> <phase>process-resources</phase> <goals> <goal>copy-resources</goal> </goals> <configuration> <!-- this is important --> <overwrite>true</overwrite> <!-- target --> <outputDirectory>${basedir}/target/classes/examples/</outputDirectory> <resources> <resource> <!-- source --> <directory>src/main/resources/examples</directory> </resource> </resources> </configuration> </execution> </executions> </plugin> </plugins> </build> </project>