One quick note to make on this. Kudu is a storage implementation, (similar to Parquet in some ways). Arrow isn't about persistence and is actually built to be complementary to both Kudu and Parquet.
Also note: Kudu is a distributed process. Arrow and Parquet are libraries that can be embedded into your existing applications.
Also note: Kudu is a distributed process. Arrow and Parquet are libraries that can be embedded into your existing applications.