Hi Ian, Thanks for the detailed guidance. This is very helpful.
Apologies for missing the earlier note from David. I’ve now synced up, and I’m in the process of moving the Db2 ADBC driver work to the community repository under the adbc-drivers organization (https://github.com/adbc-drivers/db2), in line with the driver foundry approach. I agree with the approach of first building a driver without requiring backend changes, and I’ll proceed with that while evaluating capabilities and performance to identify any bottlenecks around Arrow support. The discussion around Arrow Flight SQL vs. extending the existing protocol is very helpful. I’ll review these options further and loop in the Db2 team for a more detailed discussion. I’ll also plan to join the Arrow community meeting and explore the Columnar Slack for further collaboration. Thanks again, and looking forward to working together on this. Best regards, Nishant Avasthi Software Engineer IBM Get Outlook for Mac <https://aka.ms/GetOutlookForMac> From: Ian Cook <[email protected]> Date: Monday, 4 May 2026 at 7:00 PM To: [email protected] <[email protected]> Cc: [email protected] <[email protected]>; Nishant Avasthi <[email protected]>; Nishant Avasthi <[email protected]> Subject: [EXTERNAL] Re: [DISCUSS][ADBC][DB2] Proposal: Adding Apache Arrow Support for IBM Db2 This Message Is From an External Sender This message came from outside your organization. Report Suspicious<https://us-phishalarm-ewt.proofpoint.com/EWT/v1/AdhS1Rd-!-XFVHHn4cyGXexowoecgPRm4v1G1LoBmS2sudSXzA5gSzaVYZ-J7Woky6OMDcqzqkBt71wByIg527wxd51nm4Rfajkv5d-cc4XyRAeKovjokmsvDfEHKE3UmXbiAaA$> Hi Nishant, Thanks for reaching out. We'd be very happy to work with you and the Db2 team on this. On the ADBC driver: we noticed that you opened a PR at [1] with an initial Db2 driver implementation in the apache/arrow-adbc repository. For the reasons described in [2] and [3], we are moving ADBC driver maintenance to community-maintained repositories under the adbc-drivers organization [4]. The main benefit of this approach is that it allows contributors and vendors to develop ADBC drivers with greater independence while still benefiting from shared resources and community coordination. I believe David Li emailed you about re-targeting your PR to a new Db2 driver repository under the adbc-drivers organization, but it looks like that message may have been missed. On the broader integration questions: in general, creating an ADBC driver that works without requiring backend or service-side changes is an excellent first step, so I think you are on the right track. From there, a useful next step would be to characterize the driver's capabilities and performance, then determine whether the lack of native Arrow support as an input/output format in the Db2 backend or service is actually a bottleneck. If it is, there are a few possible paths. Two common options are: (a) Implementing support for Arrow Flight SQL in the service. (b) Adding an Arrow format option to the existing client/server protocol and backend. Each option has pros and cons, and different vendors and projects have made different choices here. For example, BigQuery, Databricks, and Snowflake have chosen option (b), while Doris, Dremio, and StarRocks have chosen option (a). We'd be happy to talk through these options with you in more detail in a separate conversation. This decision is often affected by business and product considerations, so I would recommend including folks from your management team in that discussion as well. I'll send you a separate email about that. In the meantime, we're always happy to answer questions here on the developer list. You and the Db2 team are also welcome to join the biweekly Arrow community meeting, which will be held this Wednesday [5]. There is also a large group of ADBC developers and users in the Columnar community Slack [6] who would be happy to discuss this further. Thanks, Ian [1] https://github.com/apache/arrow-adbc/pull/4286<https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_apache_arrow-2Dadbc_pull_4286&d=DwMFaQ&c=BSDicqBQBDjDI9RkVyTcHQ&r=sngVdLcD3h1cwOyHVA6ikwJ3JbAR0okgTwakU_ssnuU&m=y-SbeBLZ1fjBlX3ejMEwUtBn8ndveaUpcsAmGhZ4nQ0QWoz89M304o0AxKTYanU6&s=aK1jR741BK01vfDy9KBld04euWyFbljWc6YFehOXEQU&e=> [2] https://lists.apache.org/thread/goy9hfl5t0nj8hqvggb2wxssvh5n5yl3<https://urldefense.proofpoint.com/v2/url?u=https-3A__lists.apache.org_thread_goy9hfl5t0nj8hqvggb2wxssvh5n5yl3&d=DwMFaQ&c=BSDicqBQBDjDI9RkVyTcHQ&r=sngVdLcD3h1cwOyHVA6ikwJ3JbAR0okgTwakU_ssnuU&m=y-SbeBLZ1fjBlX3ejMEwUtBn8ndveaUpcsAmGhZ4nQ0QWoz89M304o0AxKTYanU6&s=FmjFcvQs4dvYejNQN_Fm5Ae5wA8HbA3gfLvm4dnV6fI&e=> [3] https://adbc-drivers.org/2025/10/29/announcing-adbc-driver-foundry.html<https://urldefense.proofpoint.com/v2/url?u=https-3A__adbc-2Ddrivers.org_2025_10_29_announcing-2Dadbc-2Ddriver-2Dfoundry.html&d=DwMFaQ&c=BSDicqBQBDjDI9RkVyTcHQ&r=sngVdLcD3h1cwOyHVA6ikwJ3JbAR0okgTwakU_ssnuU&m=y-SbeBLZ1fjBlX3ejMEwUtBn8ndveaUpcsAmGhZ4nQ0QWoz89M304o0AxKTYanU6&s=kD3IYZ0decCtTzR_5SfcmFC0E7EUX6wDGs59FpPMqTU&e=> [4] https://github.com/adbc-drivers/<https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_adbc-2Ddrivers_&d=DwMFaQ&c=BSDicqBQBDjDI9RkVyTcHQ&r=sngVdLcD3h1cwOyHVA6ikwJ3JbAR0okgTwakU_ssnuU&m=y-SbeBLZ1fjBlX3ejMEwUtBn8ndveaUpcsAmGhZ4nQ0QWoz89M304o0AxKTYanU6&s=IeZflmTxhfqtXJDZjFOeTOsAadD_8ZbLi7QzaRoccpQ&e=> [5] https://arrow.apache.org/community/#meetings<https://urldefense.proofpoint.com/v2/url?u=https-3A__arrow.apache.org_community_-23meetings&d=DwMFaQ&c=BSDicqBQBDjDI9RkVyTcHQ&r=sngVdLcD3h1cwOyHVA6ikwJ3JbAR0okgTwakU_ssnuU&m=y-SbeBLZ1fjBlX3ejMEwUtBn8ndveaUpcsAmGhZ4nQ0QWoz89M304o0AxKTYanU6&s=q87uq-6gV3uAA78cfBE6Q5w2EI0pDElFOYPrjN6CcCA&e=> [6] https://join.slack.com/t/columnar-community/shared_invite/zt-3gt5cb69i-KRjJj~mjUZv5doVmpcVa4w<https://urldefense.proofpoint.com/v2/url?u=https-3A__join.slack.com_t_columnar-2Dcommunity_shared-5Finvite_zt-2D3gt5cb69i-2DKRjJj-7EmjUZv5doVmpcVa4w&d=DwMFaQ&c=BSDicqBQBDjDI9RkVyTcHQ&r=sngVdLcD3h1cwOyHVA6ikwJ3JbAR0okgTwakU_ssnuU&m=y-SbeBLZ1fjBlX3ejMEwUtBn8ndveaUpcsAmGhZ4nQ0QWoz89M304o0AxKTYanU6&s=YB8X6vaTnR5pxt-AIw-SfNDcITVsvzWexJkDCUbjm0g&e=> On Mon, May 4, 2026 at 5:27 AM Nishant Avasthi via dev <[email protected]<mailto:[email protected]>> wrote: Dear Apache Arrow Developers, I hope you are doing well. My name is Nishant Avasthi, and I am a Software Engineer at IBM. I am reaching out to initiate a discussion around adding Apache Arrow support for IBM Db2. At IBM, we are exploring ways to integrate Apache Arrow more deeply with Db2 to enable efficient, columnar in-memory data exchange and improved interoperability with modern data processing systems. We believe this integration can unlock significant performance benefits for analytical workloads, data transfer, and cross-system interoperability. Proposed Direction We are currently evaluating the following approaches for integration: * Implementing an Apache Arrow-compatible interface for Db2 query results * Exploring integration with Apache Arrow Database Connectivity (ADBC) for standardized access * Investigating support for Arrow Flight for high-performance data transport Our goal is to align with the existing Arrow ecosystem and contribute in a way that is consistent with the project’s architecture and standards. Motivation / Use Cases * Faster data movement between Db2 and Arrow-enabled systems (e.g., analytics engines, Python/R ecosystems) * Reduced serialization/deserialization overhead * Improved support for data science and real-time analytics workflows Request for Feedback Before proceeding further, we would like to: * Get guidance on the preferred approach (ADBC vs Flight vs other mechanisms) * Align with community expectations and design principles We are happy to contribute code, documentation, and ongoing maintenance, and will follow the standard contribution process (JIRA + GitHub PRs) once we align on the approach. Looking forward to your feedback and guidance. Best regards, Nishant Avasthi Software Engineer IBM Get Outlook for Mac <https://aka.ms/GetOutlookForMac<https://urldefense.proofpoint.com/v2/url?u=https-3A__aka.ms_GetOutlookForMac&d=DwMFaQ&c=BSDicqBQBDjDI9RkVyTcHQ&r=sngVdLcD3h1cwOyHVA6ikwJ3JbAR0okgTwakU_ssnuU&m=y-SbeBLZ1fjBlX3ejMEwUtBn8ndveaUpcsAmGhZ4nQ0QWoz89M304o0AxKTYanU6&s=M2KKzQEdmxb2HI3i4phYl9wfRo3iwwpe_q7fBNtHHP0&e=>>
