Official Geospatial Support

Hey everyone! In the company that I am working on, we use a lot of geospatial data. As we were are currently in the process of implementing a data lakehouse, I saw that as of the version 25.1, Dremio only supports a limited number of geospatial commands.
On the contrary, tools such as Presto and Trino currently support the full list of of commands from Apache Sedona.
While we can work with Apache Sedona in our notebooks, it would make it easier if those commands could also be run directly in Dremio.
Is it in the devs plans to also add official support for those commands in Dremio?

Thanks in advance for any answer!

P.S. I saw that in the community that there was an unofficial implementation for adding the full list of geospatial commands, but I see that its latest version supports up to Dremio 25.0, and following its instructions gave me a whole bunch of errors.

Hi @Makdak26

Take a look of that project : GitHub - sheinbergon/dremio-udf-gis: OGC/GIS functions and extensions for Dremio

Cheers

1 Like

Thank you for the reply! I’ve already seen it, however when I tried to work with it having Dremio version 25.1, it gave me errors and thus it did not work.
According to github, it was last updated for version 25.0.5, so my guess is that its hardcoded for that version? I will look into it more, as we do not want to downgrade to an older version.

@Makdak26 I’m the author of the spatial exetnsions library linked above. Please report your exact errors (text excerpts/screenshots) in the Github Issues Page, as well as how you installed the extension. It should support the newer versions OTB for new versions as well, and it’s as simple as dropping a JAR inside the installation directory

@Makdak26 I’ve just manually tested the latest version (0.16.0) with Dremio 25.1.1 and it’s working as expected. You probably installed it incorrectly. As requested earlier, please open a github issue and include your errors.

@Makdak26 In any case, version 0.18.0 built against Dremio 25.1.1 is ready. You can get it from here

@sheinbergon Thank you for going through the trouble of testing it and also releasing a newer version ! I’m sure I must have done something wrong from my side at that time. I will try it again and will let you know of the results.

I managed to find a solution for the errors that I was getting. Indeed the issues were from how I was using the jar files.
I fixed the errors, by creating a custom docker file to build the dremio image and copy the jar to the jars/3rdparty directory

FROM dremio/dremio-oss:25.2
COPY "dremio-udf-gis-0.18.0.jar" /opt/dremio/jars/3rdparty/

and based on that created my service for dremio, on the docker-compose file

geodremio:
    image: gis-dremio:latest
    container_name: geodremio
    build: ./dremio/
    depends_on:
      - geonessie
    networks:
      iceberg_net:
    ports:
      - 7008:9047
      - 7009:31010
      - 7010:32010
    volumes:
      - ./dremio/data:/opt/dremio/data