# Size of dependencies

**URL:** <https://discuss.elastic.co/t/size-of-dependencies/34091>\
**Category:** Elasticsearch\
**Tags:** es-hadoop\
**Created:** [November 7, 2015, 8:39pm UTC](https://discuss.elastic.co/t/size-of-dependencies/34091 "2015-11-07T20:39:02Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![John\_Bush\_3](https://avatars.discourse-cdn.com/v4/letter/j/76d3ee/32.png) [@John\_Bush\_3](https://discuss.elastic.co/u/John_Bush_3)\
**Post date:** [November 7, 2015, 8:39pm UTC](https://discuss.elastic.co/t/size-of-dependencies/34091/1 "2015-11-07T20:39:02Z")

</div>

I've been working with the ES Spout for storm it works great, but I'm concerned about the number of dependencies brought in. It makes my rather small storm job around 180MB because I'm bringing the whole entire hadoop ecosystem transitively. My suggestion would be to maybe slice up the elasticsearch-hadoop projects into smaller jars, for someone using this for only storm, we don't need pig, hive, spark, parquet, etc, etc, etc,etc.

I know I can put dependencies on the storm cluster, but that really breaks the deployment strategy and undermines the whole values the JVM's isolated classpath which I need in an organization is big as mine, with jobs being development by many teams.

I'm going to attempt to size down the dependencies myself which I expect to be a giant hairball of classpath issues. If anyone else has some tips in this arena I'd love to hear them.

---

<div class="post-metadata">

**Author:** ![John\_Bush\_3](https://avatars.discourse-cdn.com/v4/letter/j/76d3ee/32.png) [@John\_Bush\_3](https://discuss.elastic.co/u/John_Bush_3)\
**Post date:** [November 7, 2015, 9:02pm UTC](https://discuss.elastic.co/t/size-of-dependencies/34091/3 "2015-11-07T21:02:30Z")

</div>

I'll answer my own question, this got the size down by 1/2 and it still runs ok

```
<dependency>
        <groupId>org.elasticsearch</groupId>
        <artifactId>elasticsearch-hadoop</artifactId>
        <version>2.1.0</version>
        <scope>runtime</scope>
        <exclusions>
            <exclusion>
                <groupId>org.apache.spark</groupId>
                <artifactId>*</artifactId>
            </exclusion>
            <exclusion>
                <groupId>org.spark-project</groupId>
                <artifactId>*</artifactId>
            </exclusion>
            <exclusion>
                <groupId>org.glassfish</groupId>
                <artifactId>*</artifactId>
            </exclusion>
            <exclusion>
                <groupId>com.twitter</groupId>
                <artifactId>*</artifactId>
            </exclusion>
            <exclusion>
                <groupId>org.apache.zookeeper</groupId>
                <artifactId>*</artifactId>
            </exclusion>
            <exclusion>
                <groupId>org.apache.hive</groupId>
                <artifactId>*</artifactId>
            </exclusion>

            <exclusion>
                <groupId>log4j</groupId>
                <artifactId>*</artifactId>
            </exclusion>
            <exclusion>
                <groupId>org.slf4j</groupId>
                <artifactId>*</artifactId>
            </exclusion>

        </exclusions>
    </dependency>
```

---

<div class="post-metadata">

**Author:** ![costin](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/costin/32/44950_2.png) [@costin](https://discuss.elastic.co/u/costin)\
**Post date:** [November 7, 2015, 9:03pm UTC](https://discuss.elastic.co/t/size-of-dependencies/34091/4 "2015-11-07T21:03:15Z")

</div>

Have you tried using the [_minimalistic_ binaries](https://www.elastic.co/guide/en/elasticsearch/hadoop/master/install.html#_minimalistic_binaries) ?

---

<div class="post-metadata">

**Author:** ![John\_Bush\_3](https://avatars.discourse-cdn.com/v4/letter/j/76d3ee/32.png) [@John\_Bush\_3](https://discuss.elastic.co/u/John_Bush_3)\
**Post date:** [November 7, 2015, 9:04pm UTC](https://discuss.elastic.co/t/size-of-dependencies/34091/5 "2015-11-07T21:04:12Z")

</div>

oh nice! that's exactly what I need. Thanks.

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)\
**Post date:** [July 6, 2017, 1:27pm UTC](https://discuss.elastic.co/t/size-of-dependencies/34091/6 "2017-07-06T13:27:19Z")

</div>


