raulcd commented on code in PR #46194: URL: https://github.com/apache/arrow/pull/46194#discussion_r2053841810
########## docs/source/format/Flight.rst: ########## @@ -369,6 +369,61 @@ string, so the obvious candidates are not compatible. The chosen representation can be parsed by both implementations, as well as Go's ``net/url`` and Python's ``urllib.parse``. +Extended Location URIs +---------------------- + +In addition to alternative transports, a server may also return +URIs that reference an external service or object storage location. +This can be useful in cases where intermediate data is cached as +Apache Parquet files on S3 or is accessible via an HTTP service. In +these scenarios, it is more efficient to be able to provide a URI +where the client may simply download the data directly, rather than +requiring a Flight service to read it back into memory and serve it +from a ``DoGet`` request. Servers should use the following URI +schemes for this situation: + ++--------------------+------------------------+ +| Location | URI Scheme | ++====================+========================+ +| Object storage (1) | s3:, gcs:, abfs:, etc. | ++--------------------+------------------------+ +| HTTP service (2) | http:, https: | ++--------------------+------------------------+ + +Notes: + +* \(1) Any auth required should be either negotiated externally to + Flight or should use a presigned URI. +* \(2) The client should make a GET request to the provided URI + to retrieve the data. + +When using an extended location URI, the client should ignore any +value in the ``Ticket`` field of the ``FlightEndpoint``. The +``Ticket`` is only used for identifying data in the context of a +Flight service, and is not needed when the client is directly +downloading data from an external service. + +Clients should assume that, unless otherwise specified, the data is +being returned as an Arrow IPC Stream just as it would via a ``DoGet`` Review Comment: This only for `http` service type requests, we should specify. I don't think object storage type connections expected to return IPC stream, right? -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: github-unsubscr...@arrow.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org