to reason about existing data properties by providing semantic information about  user-defined functions <a href="//nightlies.apache.org/flink/flink-docs-release-1.0/apis/batch/index.html#semantic-annotations">[4]</a>. While the optimizer is a killer feature of Flink, it can happen that a user knows better than the optimizer how to execute a specific join. Similar to relational database systems, Flink offers optimizer hints to tell the optimizer which join strategies to pick <a href="//nightlies.apache.org/