Using Flight, choose your language!
All three of the languages we've been using in this book, Python, C++, and Go, provide implementations of Arrow Flight servers and clients. The examples we're going to walk through here are a great way to flex your chops on the different languages and see the similarities and differences between the different languages and the interfaces of their implementations. The Arrow project takes advantage of this interoperability between languages for Flight to run automated integration tests between the different language libraries and ensure that they are all compatible with each other.
So, let's get right down to it and have some fun!
Building a Python Flight Server
The flight
module of the pyarrow
library provides a base implementation of a Flight server; all that needs to be done is to override the functions for the desired Flight RPC methods you want to implement on your server, and away you go. Let's give it a shot and...