Inserting data into Iceberg table using Arrow Flight client


Is it possible to insert (or append) data to an Apache Iceberg table using an Arrow Flight client and Dremio?

For example, could an Arrow Flight client send a stream of record batches as part of a DoPut operation that ends up getting written to a Dremio data source?


yes if you are using iceberg tables you can make insert, update or merge sentences

I have just attempt to use the “DoPut” operation to write a RecordBatch, but it seems like its unsupported.
The server returns the following message:

‘Status(StatusCode=“Unimplemented”, Detail=“acceptPut is not implemented.”)’

@Nisden What are you exactly trying to do? Are you trying to insert into an Iceberg table?

Yes, we are trying to insert a large amount of records into an Iceberg table

@Nisden Just to narrow down the issue. Can you please try to run it as a pplain insert via the Dremio UI?

Yah, I got no issues using a regular “INSERT INTO” command. Its just the Arrow Flight Bulk insert endpoint that is throwing Unimplemented errors.