High-performance ingestion of Pandas dataframes into QuestDB via ILP.
We now support most Pandas column types. The logic is implemented in native code and is orders of magnitude faster than iterating the dataframe in Python and calling the Buffer.row() or Sender.row() methods: The Buffer can be written from Pandas at hundreds of MiB/s per CPU core. The new dataframe() method continues working with the auto_flush feature.
New TimestampNanos.now() and TimestampMicros.now() methods. These are the new recommended way of getting the current timestamp.
The Python GIL is now released during calls to Sender.flush() and when auto_flush is triggered. This should improve throughput when using the Sender from multiple threads.
Buffer.row()
orSender.row()
methods: TheBuffer
can be written from Pandas at hundreds of MiB/s per CPU core. The newdataframe()
method continues working with theauto_flush
feature.TimestampNanos.now()
andTimestampMicros.now()
methods. These are the new recommended way of getting the current timestamp.Sender.flush()
and whenauto_flush
is triggered. This should improve throughput when using theSender
from multiple threads.