Now that DuckDB supports the PyCapsule Interface, we have the ability to remove pyarrow as a required dependency and pass data directly to upstream duckdb. But we still run into the common issue that we don't know if the stream input is a view or a stream, so we don't know whether to make a copy of the input as a duckdb table