Hi Casey, We wrote the spec for Iceberg intending for it to be implemented in other languages, so we purposely avoided anything that would tie it to Java, like using Java `hashCode` implementations. It should be portable, but please let us know if you run into any issues.
I'm not aware of an existing go implementation. If you start one, please let the community know! rb On Sun, Jan 3, 2021 at 1:20 PM Driesprong, Fokko <fo...@driesprong.frl> wrote: > Hi Casey, > > 1. Personally I don't know any other implementation than in the repository > itself, so JVM and Python. > 2. There aren't any limitations. Most of the underlying tech used is > compatible with many languages. One thing to keep in mind is that you > should be able to read Avro files, which are also available in many > languages. Apart from that, the data itself is written in Avro/Parquet/ORC > which is also widely used and supported. > > I've been working on an Apache Beam implementation (very early stage), > which also has a Go API. But that will take some time to get it to a > certain maturity level. Hope this helps! > > Cheers, Fokko > > Op zo 3 jan. 2021 om 19:39 schreef Casey Lucas <casey.lu...@dynata.com>: > >> I'm just learning about Iceberg. Thanks for the work that has gone into >> it thus far. It seems like a promising technology. >> >> I understand why the core implementation is Java based and saw that there >> are some aspects of the spec implemented in Python. >> >> 1. Is anyone aware of implementations in other languages such as go? >> 2. Is there anything that would fundamentally limit the use of other >> implementations being able to read and write Iceberg data that is also >> being manipulated by the JVM implementation? I assume no based on reading >> the spec, but any insight is appreciated. >> >> I'm curious if reading and writing Iceberg data from a spec-compliant >> implementation without necessarily involving Presto or Spark is an expected >> use-case. >> >> Thanks, >> >> Casey Lucas >> Director, Engineering >> >> dynata.com >> >> The information contained in this e-mail message is intended >> for the use of the recipient(s) named above and is privileged and >> confidential. If you are not the intended recipient, you are formally >> notified that you have received this message in error and that any >> review, >> dissemination, distribution, or copying of the message is strictly >> prohibited. If you have received this communication in error, please >> notify us immediately by e-mail and delete the original message. >> > -- Ryan Blue Software Engineer Netflix