Apache Arrow defines two formats for serializing data for interprocess communication (IPC): a "stream" format and a "file" format, known as Feather. write_ipc_stream() and write_feather() write those formats, respectively.

write_arrow(x, sink, ...)

write_ipc_stream(x, sink, ...)

Arguments

x

data.frame, RecordBatch, or Table

sink

A string file path, URI, or OutputStream, or path in a file system (SubTreeFileSystem)

...

extra parameters passed to write_feather().

Value

x, invisibly.

Details

write_arrow(), a wrapper around write_ipc_stream() and write_feather() with some nonstandard behavior, is deprecated. You should explicitly choose the function that will write the desired IPC format (stream or file) since either can be written to a file or OutputStream.

See also

write_feather() for writing IPC files. write_to_raw() to serialize data to a buffer. RecordBatchWriter for a lower-level interface.

Examples

tf <- tempfile()
on.exit(unlink(tf))
write_ipc_stream(mtcars, tf)