blob: 8f378cca5dd4b7c54391cdf27734e27ec3172a11 [file] [log] [blame]
<!DOCTYPE html>
<html lang="en" data-content_root="" >
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />
<title>Implementation Status &#8212; Apache Arrow v16.0.0</title>
<script data-cfasync="false">
document.documentElement.dataset.mode = localStorage.getItem("mode") || "";
document.documentElement.dataset.theme = localStorage.getItem("theme") || "light";
</script>
<!-- Loaded before other Sphinx assets -->
<link href="_static/styles/theme.css?digest=8d27b9dea8ad943066ae" rel="stylesheet" />
<link href="_static/styles/bootstrap.css?digest=8d27b9dea8ad943066ae" rel="stylesheet" />
<link href="_static/styles/pydata-sphinx-theme.css?digest=8d27b9dea8ad943066ae" rel="stylesheet" />
<link href="_static/vendor/fontawesome/6.5.1/css/all.min.css?digest=8d27b9dea8ad943066ae" rel="stylesheet" />
<link rel="preload" as="font" type="font/woff2" crossorigin href="_static/vendor/fontawesome/6.5.1/webfonts/fa-solid-900.woff2" />
<link rel="preload" as="font" type="font/woff2" crossorigin href="_static/vendor/fontawesome/6.5.1/webfonts/fa-brands-400.woff2" />
<link rel="preload" as="font" type="font/woff2" crossorigin href="_static/vendor/fontawesome/6.5.1/webfonts/fa-regular-400.woff2" />
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
<link rel="stylesheet" type="text/css" href="_static/copybutton.css" />
<link rel="stylesheet" type="text/css" href="_static/design-style.1e8bd061cd6da7fc9cf755528e8ffc24.min.css" />
<link rel="stylesheet" type="text/css" href="_static/theme_overrides.css" />
<!-- Pre-loaded scripts that we'll load fully later -->
<link rel="preload" as="script" href="_static/scripts/bootstrap.js?digest=8d27b9dea8ad943066ae" />
<link rel="preload" as="script" href="_static/scripts/pydata-sphinx-theme.js?digest=8d27b9dea8ad943066ae" />
<script src="_static/vendor/fontawesome/6.5.1/js/all.min.js?digest=8d27b9dea8ad943066ae"></script>
<script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
<script src="_static/doctools.js"></script>
<script src="_static/sphinx_highlight.js"></script>
<script src="_static/clipboard.min.js"></script>
<script src="_static/copybutton.js"></script>
<script src="_static/design-tabs.js"></script>
<script>DOCUMENTATION_OPTIONS.pagename = 'status';</script>
<script>
DOCUMENTATION_OPTIONS.theme_version = '0.15.2';
DOCUMENTATION_OPTIONS.theme_switcher_json_url = '/docs/_static/versions.json';
DOCUMENTATION_OPTIONS.theme_switcher_version_match = '';
DOCUMENTATION_OPTIONS.show_version_warning_banner = false;
</script>
<link rel="canonical" href="https://arrow.apache.org/docs/status.html" />
<link rel="icon" href="_static/favicon.ico"/>
<link rel="index" title="Index" href="genindex.html" />
<link rel="search" title="Search" href="search.html" />
<link rel="prev" title="R docs" href="r/index.html" />
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<meta name="docsearch:language" content="en"/>
<!-- Matomo -->
<script>
var _paq = window._paq = window._paq || [];
/* tracker methods like "setCustomDimension" should be called before "trackPageView" */
/* We explicitly disable cookie tracking to avoid privacy issues */
_paq.push(['disableCookies']);
_paq.push(['trackPageView']);
_paq.push(['enableLinkTracking']);
(function() {
var u="https://analytics.apache.org/";
_paq.push(['setTrackerUrl', u+'matomo.php']);
_paq.push(['setSiteId', '20']);
var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
g.async=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s);
})();
</script>
<!-- End Matomo Code -->
</head>
<body data-bs-spy="scroll" data-bs-target=".bd-toc-nav" data-offset="180" data-bs-root-margin="0px 0px -60%" data-default-mode="">
<a id="pst-skip-link" class="skip-link" href="#main-content">Skip to main content</a>
<div id="pst-scroll-pixel-helper"></div>
<button type="button" class="btn rounded-pill" id="pst-back-to-top">
<i class="fa-solid fa-arrow-up"></i>
Back to top
</button>
<input type="checkbox"
class="sidebar-toggle"
name="__primary"
id="__primary"/>
<label class="overlay overlay-primary" for="__primary"></label>
<input type="checkbox"
class="sidebar-toggle"
name="__secondary"
id="__secondary"/>
<label class="overlay overlay-secondary" for="__secondary"></label>
<div class="search-button__wrapper">
<div class="search-button__overlay"></div>
<div class="search-button__search-container">
<form class="bd-search d-flex align-items-center"
action="search.html"
method="get">
<i class="fa-solid fa-magnifying-glass"></i>
<input type="search"
class="form-control"
name="q"
id="search-input"
placeholder="Search the docs ..."
aria-label="Search the docs ..."
autocomplete="off"
autocorrect="off"
autocapitalize="off"
spellcheck="false"/>
<span class="search-button__kbd-shortcut"><kbd class="kbd-shortcut__modifier">Ctrl</kbd>+<kbd>K</kbd></span>
</form></div>
</div>
<header class="bd-header navbar navbar-expand-lg bd-navbar">
<div class="bd-header__inner bd-page-width">
<label class="sidebar-toggle primary-toggle" for="__primary">
<span class="fa-solid fa-bars"></span>
</label>
<div class="col-lg-3 navbar-header-items__start">
<div class="navbar-item">
<a class="navbar-brand logo" href="index.html">
<img src="_static/arrow.png" class="logo__image only-light" alt="Apache Arrow v16.0.0 - Home"/>
<script>document.write(`<img src="_static/arrow-dark.png" class="logo__image only-dark" alt="Apache Arrow v16.0.0 - Home"/>`);</script>
</a></div>
</div>
<div class="col-lg-9 navbar-header-items">
<div class="me-auto navbar-header-items__center">
<div class="navbar-item">
<nav class="navbar-nav">
<ul class="bd-navbar-elements navbar-nav">
<li class="nav-item">
<a class="nav-link nav-internal" href="format/index.html">
Specifications
</a>
</li>
<li class="nav-item">
<a class="nav-link nav-internal" href="developers/index.html">
Development
</a>
</li>
<li class="nav-item dropdown">
<button class="btn dropdown-toggle nav-item" type="button" data-bs-toggle="dropdown" aria-expanded="false" aria-controls="pst-nav-more-links">
Implementations
</button>
<ul id="pst-nav-more-links" class="dropdown-menu">
<li class="nav-item">
<a class="nav-link dropdown-item nav-internal" href="c_glib/index.html">
C/GLib
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-internal" href="cpp/index.html">
C++
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-external" href="https://github.com/apache/arrow/blob/main/csharp/README.md">
C#
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-external" href="https://pkg.go.dev/github.com/apache/arrow/go/v16">
Go
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-internal" href="java/index.html">
Java
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-internal" href="js/index.html">
JavaScript
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-external" href="https://arrow.apache.org/julia/">
Julia
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-external" href="https://github.com/apache/arrow/blob/main/matlab/README.md">
MATLAB
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-external" href="https://arrow.apache.org/nanoarrow/">
nanoarrow
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-internal" href="python/index.html">
Python
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-internal" href="r/index.html">
R
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-external" href="https://github.com/apache/arrow/blob/main/ruby/README.md">
Ruby
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-external" href="https://docs.rs/crate/arrow/">
Rust
</a>
</li>
<li class="nav-item current active">
<a class="nav-link dropdown-item nav-internal" href="#">
Implementation Status
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-external" href="https://arrow.apache.org/cookbook/cpp/">
C++ cookbook
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-external" href="https://arrow.apache.org/cookbook/java/">
Java cookbook
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-external" href="https://arrow.apache.org/cookbook/py/">
Python cookbook
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-external" href="https://arrow.apache.org/cookbook/r/">
R cookbook
</a>
</li>
</ul>
</li>
</ul>
</nav></div>
</div>
<div class="navbar-header-items__end">
<div class="navbar-item navbar-persistent--container">
<script>
document.write(`
<button class="btn navbar-btn search-button-field search-button__button" title="Search" aria-label="Search" data-bs-placement="bottom" data-bs-toggle="tooltip">
<i class="fa-solid fa-magnifying-glass"></i>
<span class="search-button__default-text">Search</span>
<span class="search-button__kbd-shortcut"><kbd class="kbd-shortcut__modifier">Ctrl</kbd>+<kbd class="kbd-shortcut__modifier">K</kbd></span>
</button>
`);
</script>
</div>
<div class="navbar-item">
<script>
document.write(`
<div class="version-switcher__container dropdown">
<button id="pst-version-switcher-button-2"
type="button"
class="version-switcher__button btn btn-sm navbar-btn dropdown-toggle"
data-bs-toggle="dropdown"
aria-haspopup="listbox"
aria-controls="pst-version-switcher-list-2"
aria-label="Version switcher list"
>
Choose version <!-- this text may get changed later by javascript -->
<span class="caret"></span>
</button>
<div id="pst-version-switcher-list-2"
class="version-switcher__menu dropdown-menu list-group-flush py-0"
role="listbox" aria-labelledby="pst-version-switcher-button-2">
<!-- dropdown will be populated by javascript on page load -->
</div>
</div>
`);
</script></div>
<div class="navbar-item">
<script>
document.write(`
<button class="btn btn-sm navbar-btn theme-switch-button" title="light/dark" aria-label="light/dark" data-bs-placement="bottom" data-bs-toggle="tooltip">
<span class="theme-switch nav-link" data-mode="light"><i class="fa-solid fa-sun fa-lg"></i></span>
<span class="theme-switch nav-link" data-mode="dark"><i class="fa-solid fa-moon fa-lg"></i></span>
<span class="theme-switch nav-link" data-mode="auto"><i class="fa-solid fa-circle-half-stroke fa-lg"></i></span>
</button>
`);
</script></div>
<div class="navbar-item"><ul class="navbar-icon-links navbar-nav"
aria-label="Icon Links">
<li class="nav-item">
<a href="https://github.com/apache/arrow" title="GitHub" class="nav-link" rel="noopener" target="_blank" data-bs-toggle="tooltip" data-bs-placement="bottom"><span><i class="fa-brands fa-square-github fa-lg" aria-hidden="true"></i></span>
<span class="sr-only">GitHub</span></a>
</li>
<li class="nav-item">
<a href="https://twitter.com/ApacheArrow" title="Twitter" class="nav-link" rel="noopener" target="_blank" data-bs-toggle="tooltip" data-bs-placement="bottom"><span><i class="fa-brands fa-square-twitter fa-lg" aria-hidden="true"></i></span>
<span class="sr-only">Twitter</span></a>
</li>
</ul></div>
</div>
</div>
<div class="navbar-persistent--mobile">
<script>
document.write(`
<button class="btn navbar-btn search-button-field search-button__button" title="Search" aria-label="Search" data-bs-placement="bottom" data-bs-toggle="tooltip">
<i class="fa-solid fa-magnifying-glass"></i>
<span class="search-button__default-text">Search</span>
<span class="search-button__kbd-shortcut"><kbd class="kbd-shortcut__modifier">Ctrl</kbd>+<kbd class="kbd-shortcut__modifier">K</kbd></span>
</button>
`);
</script>
</div>
<label class="sidebar-toggle secondary-toggle" for="__secondary" tabindex="0">
<span class="fa-solid fa-outdent"></span>
</label>
</div>
</header>
<div class="bd-container">
<div class="bd-container__inner bd-page-width">
<div class="bd-sidebar-primary bd-sidebar">
<div class="sidebar-header-items sidebar-primary__section">
<div class="sidebar-header-items__center">
<div class="navbar-item">
<nav class="navbar-nav">
<ul class="bd-navbar-elements navbar-nav">
<li class="nav-item">
<a class="nav-link nav-internal" href="format/index.html">
Specifications
</a>
</li>
<li class="nav-item">
<a class="nav-link nav-internal" href="developers/index.html">
Development
</a>
</li>
<li class="nav-item dropdown">
<button class="btn dropdown-toggle nav-item" type="button" data-bs-toggle="dropdown" aria-expanded="false" aria-controls="pst-nav-more-links-2">
Implementations
</button>
<ul id="pst-nav-more-links-2" class="dropdown-menu">
<li class="nav-item">
<a class="nav-link dropdown-item nav-internal" href="c_glib/index.html">
C/GLib
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-internal" href="cpp/index.html">
C++
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-external" href="https://github.com/apache/arrow/blob/main/csharp/README.md">
C#
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-external" href="https://pkg.go.dev/github.com/apache/arrow/go/v16">
Go
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-internal" href="java/index.html">
Java
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-internal" href="js/index.html">
JavaScript
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-external" href="https://arrow.apache.org/julia/">
Julia
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-external" href="https://github.com/apache/arrow/blob/main/matlab/README.md">
MATLAB
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-external" href="https://arrow.apache.org/nanoarrow/">
nanoarrow
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-internal" href="python/index.html">
Python
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-internal" href="r/index.html">
R
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-external" href="https://github.com/apache/arrow/blob/main/ruby/README.md">
Ruby
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-external" href="https://docs.rs/crate/arrow/">
Rust
</a>
</li>
<li class="nav-item current active">
<a class="nav-link dropdown-item nav-internal" href="#">
Implementation Status
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-external" href="https://arrow.apache.org/cookbook/cpp/">
C++ cookbook
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-external" href="https://arrow.apache.org/cookbook/java/">
Java cookbook
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-external" href="https://arrow.apache.org/cookbook/py/">
Python cookbook
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-external" href="https://arrow.apache.org/cookbook/r/">
R cookbook
</a>
</li>
</ul>
</li>
</ul>
</nav></div>
</div>
<div class="sidebar-header-items__end">
<div class="navbar-item">
<script>
document.write(`
<div class="version-switcher__container dropdown">
<button id="pst-version-switcher-button-3"
type="button"
class="version-switcher__button btn btn-sm navbar-btn dropdown-toggle"
data-bs-toggle="dropdown"
aria-haspopup="listbox"
aria-controls="pst-version-switcher-list-3"
aria-label="Version switcher list"
>
Choose version <!-- this text may get changed later by javascript -->
<span class="caret"></span>
</button>
<div id="pst-version-switcher-list-3"
class="version-switcher__menu dropdown-menu list-group-flush py-0"
role="listbox" aria-labelledby="pst-version-switcher-button-3">
<!-- dropdown will be populated by javascript on page load -->
</div>
</div>
`);
</script></div>
<div class="navbar-item">
<script>
document.write(`
<button class="btn btn-sm navbar-btn theme-switch-button" title="light/dark" aria-label="light/dark" data-bs-placement="bottom" data-bs-toggle="tooltip">
<span class="theme-switch nav-link" data-mode="light"><i class="fa-solid fa-sun fa-lg"></i></span>
<span class="theme-switch nav-link" data-mode="dark"><i class="fa-solid fa-moon fa-lg"></i></span>
<span class="theme-switch nav-link" data-mode="auto"><i class="fa-solid fa-circle-half-stroke fa-lg"></i></span>
</button>
`);
</script></div>
<div class="navbar-item"><ul class="navbar-icon-links navbar-nav"
aria-label="Icon Links">
<li class="nav-item">
<a href="https://github.com/apache/arrow" title="GitHub" class="nav-link" rel="noopener" target="_blank" data-bs-toggle="tooltip" data-bs-placement="bottom"><span><i class="fa-brands fa-square-github fa-lg" aria-hidden="true"></i></span>
<span class="sr-only">GitHub</span></a>
</li>
<li class="nav-item">
<a href="https://twitter.com/ApacheArrow" title="Twitter" class="nav-link" rel="noopener" target="_blank" data-bs-toggle="tooltip" data-bs-placement="bottom"><span><i class="fa-brands fa-square-twitter fa-lg" aria-hidden="true"></i></span>
<span class="sr-only">Twitter</span></a>
</li>
</ul></div>
</div>
</div>
<div class="sidebar-primary-items__start sidebar-primary__section">
<div class="sidebar-primary-item">
<nav class="bd-docs-nav bd-links"
aria-label="Section Navigation">
<p class="bd-links__title" role="heading" aria-level="1">Section Navigation</p>
<div class="bd-toc-item navbar-nav"></div>
</nav></div>
</div>
<div class="sidebar-primary-items__end sidebar-primary__section">
</div>
<div id="rtd-footer-container"></div>
</div>
<main id="main-content" class="bd-main">
<div class="bd-content">
<div class="bd-article-container">
<div class="bd-header-article">
<div class="header-article-items header-article__inner">
<div class="header-article-items__start">
<div class="header-article-item">
<nav aria-label="Breadcrumb">
<ul class="bd-breadcrumbs">
<li class="breadcrumb-item breadcrumb-home">
<a href="index.html" class="nav-link" aria-label="Home">
<i class="fa-solid fa-home"></i>
</a>
</li>
<li class="breadcrumb-item active" aria-current="page">Implementati...</li>
</ul>
</nav>
</div>
</div>
</div>
</div>
<div id="searchbox"></div>
<article class="bd-article">
<section id="implementation-status">
<h1>Implementation Status<a class="headerlink" href="#implementation-status" title="Permalink to this heading">#</a></h1>
<p>The following tables summarize the features available in the various official
Arrow libraries. All libraries currently follow version 1.0.0 of the Arrow
format, or later minor versions that are compatible with version 1.0.0. See
<a class="reference internal" href="format/Versioning.html"><span class="doc">Format Versioning and Stability</span></a> for details about versioning. Unless otherwise
stated, the Python, R, Ruby and C/GLib libraries follow the C++ Arrow library.</p>
<section id="data-types">
<h2>Data Types<a class="headerlink" href="#data-types" title="Permalink to this heading">#</a></h2>
<table class="table">
<thead>
<tr class="row-odd"><th class="head"><p>Data type
(primitive)</p></th>
<th class="head"><p>C++</p></th>
<th class="head"><p>Java</p></th>
<th class="head"><p>Go</p></th>
<th class="head"><p>JS</p></th>
<th class="head"><p>C#</p></th>
<th class="head"><p>Rust</p></th>
<th class="head"><p>Julia</p></th>
<th class="head"><p>Swift</p></th>
<th class="head"><p>nanoarrow</p></th>
</tr>
</thead>
<tbody>
<tr class="row-even"><td><p>Null</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
</tr>
<tr class="row-odd"><td><p>Boolean</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
</tr>
<tr class="row-even"><td><p>Int8/16/32/64</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
</tr>
<tr class="row-odd"><td><p>UInt8/16/32/64</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
</tr>
<tr class="row-even"><td><p>Float16</p></td>
<td><p></p></td>
<td><p>✓ (1)</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p>✓ (2)</p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
</tr>
<tr class="row-odd"><td><p>Float32/64</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
</tr>
<tr class="row-even"><td><p>Decimal128</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
</tr>
<tr class="row-odd"><td><p>Decimal256</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
</tr>
<tr class="row-even"><td><p>Date32/64</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
</tr>
<tr class="row-odd"><td><p>Time32/64</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
</tr>
<tr class="row-even"><td><p>Timestamp</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
</tr>
<tr class="row-odd"><td><p>Duration</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
</tr>
<tr class="row-even"><td><p>Interval</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
</tr>
<tr class="row-odd"><td><p>Fixed Size Binary</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
</tr>
<tr class="row-even"><td><p>Binary</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
</tr>
<tr class="row-odd"><td><p>Large Binary</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
</tr>
<tr class="row-even"><td><p>Utf8</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
</tr>
<tr class="row-odd"><td><p>Large Utf8</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
</tr>
<tr class="row-even"><td><p>Binary View</p></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr class="row-odd"><td><p>Large Binary View</p></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr class="row-even"><td><p>Utf8 View</p></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr class="row-odd"><td><p>Large Utf8 View</p></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
</tbody>
</table>
<table class="table">
<thead>
<tr class="row-odd"><th class="head"><p>Data type
(nested)</p></th>
<th class="head"><p>C++</p></th>
<th class="head"><p>Java</p></th>
<th class="head"><p>Go</p></th>
<th class="head"><p>JS</p></th>
<th class="head"><p>C#</p></th>
<th class="head"><p>Rust</p></th>
<th class="head"><p>Julia</p></th>
<th class="head"><p>Swift</p></th>
<th class="head"><p>nanoarrow</p></th>
</tr>
</thead>
<tbody>
<tr class="row-even"><td><p>Fixed Size List</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
</tr>
<tr class="row-odd"><td><p>List</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
</tr>
<tr class="row-even"><td><p>Large List</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
</tr>
<tr class="row-odd"><td><p>List View</p></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr class="row-even"><td><p>Large List View</p></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr class="row-odd"><td><p>Struct</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
</tr>
<tr class="row-even"><td><p>Map</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
</tr>
<tr class="row-odd"><td><p>Dense Union</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
</tr>
<tr class="row-even"><td><p>Sparse Union</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
</tr>
</tbody>
</table>
<table class="table">
<thead>
<tr class="row-odd"><th class="head"><p>Data type
(special)</p></th>
<th class="head"><p>C++</p></th>
<th class="head"><p>Java</p></th>
<th class="head"><p>Go</p></th>
<th class="head"><p>JS</p></th>
<th class="head"><p>C#</p></th>
<th class="head"><p>Rust</p></th>
<th class="head"><p>Julia</p></th>
<th class="head"><p>Swift</p></th>
<th class="head"><p>nanoarrow</p></th>
</tr>
</thead>
<tbody>
<tr class="row-even"><td><p>Dictionary</p></td>
<td><p></p></td>
<td><p>✓ (3)</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p>✓ (3)</p></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
</tr>
<tr class="row-odd"><td><p>Extension</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
</tr>
<tr class="row-even"><td><p>Run-End Encoded</p></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
</tbody>
</table>
<table class="table">
<thead>
<tr class="row-odd"><th class="head"><p>Canonical
Extension types</p></th>
<th class="head"><p>C++</p></th>
<th class="head"><p>Java</p></th>
<th class="head"><p>Go</p></th>
<th class="head"><p>JavaScript</p></th>
<th class="head"><p>C#</p></th>
<th class="head"><p>Rust</p></th>
<th class="head"><p>Julia</p></th>
<th class="head"><p>Swift</p></th>
</tr>
</thead>
<tbody>
<tr class="row-even"><td><p>Fixed shape tensor</p></td>
<td><p></p></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr class="row-odd"><td><p>Variable shape tensor</p></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
</tbody>
</table>
<p>Notes:</p>
<ul class="simple">
<li><p>(1) Casting to/from Float16 in Java is not supported.</p></li>
<li><p>(2) Float16 support in C# is only available when targeting .NET 6+.</p></li>
<li><p>(3) Nested dictionaries not supported</p></li>
</ul>
<div class="admonition seealso">
<p class="admonition-title">See also</p>
<p>The <a class="reference internal" href="format/Columnar.html#format-columnar"><span class="std std-ref">Arrow Columnar Format</span></a> and the
<a class="reference internal" href="format/CanonicalExtensions.html#format-canonical-extensions"><span class="std std-ref">Canonical Extension Types</span></a> specification.</p>
</div>
</section>
<section id="ipc-format">
<h2>IPC Format<a class="headerlink" href="#ipc-format" title="Permalink to this heading">#</a></h2>
<table class="table">
<thead>
<tr class="row-odd"><th class="head"><p>IPC Feature</p></th>
<th class="head"><p>C++</p></th>
<th class="head"><p>Java</p></th>
<th class="head"><p>Go</p></th>
<th class="head"><p>JS</p></th>
<th class="head"><p>C#</p></th>
<th class="head"><p>Rust</p></th>
<th class="head"><p>Julia</p></th>
<th class="head"><p>Swift</p></th>
<th class="head"><p>nanoarrow</p></th>
</tr>
</thead>
<tbody>
<tr class="row-even"><td><p>Arrow stream format</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p>✓ (4)</p></td>
</tr>
<tr class="row-odd"><td><p>Arrow file format</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
</tr>
<tr class="row-even"><td><p>Record batches</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
</tr>
<tr class="row-odd"><td><p>Dictionaries</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td></td>
</tr>
<tr class="row-even"><td><p>Replacement dictionaries</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td></td>
<td></td>
<td><p></p></td>
<td></td>
<td></td>
</tr>
<tr class="row-odd"><td><p>Delta dictionaries</p></td>
<td><p>✓ (1)</p></td>
<td></td>
<td><p>✓ (1)</p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
<td></td>
<td></td>
</tr>
<tr class="row-even"><td><p>Tensors</p></td>
<td><p></p></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr class="row-odd"><td><p>Sparse tensors</p></td>
<td><p></p></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr class="row-even"><td><p>Buffer compression</p></td>
<td><p></p></td>
<td><p>✓ (3)</p></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td></td>
</tr>
<tr class="row-odd"><td><p>Endianness conversion</p></td>
<td><p>✓ (2)</p></td>
<td></td>
<td><p>✓ (2)</p></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td><p>✓ (2)</p></td>
</tr>
<tr class="row-even"><td><p>Custom schema metadata</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
</tr>
</tbody>
</table>
<p>Notes:</p>
<ul class="simple">
<li><p>(1) Delta dictionaries not supported on nested dictionaries</p></li>
<li><p>(2) Data with non-native endianness can be byte-swapped automatically when reading.</p></li>
<li><p>(3) LZ4 Codec currently is quite inefficient. ARROW-11901 tracks improving performance.</p></li>
<li><p>(4) The nanoarrow IPC implementation is only implemented for reading IPC streams.</p></li>
</ul>
<div class="admonition seealso">
<p class="admonition-title">See also</p>
<p>The <a class="reference internal" href="format/Columnar.html#format-ipc"><span class="std std-ref">Serialization and Interprocess Communication (IPC)</span></a> specification.</p>
</div>
</section>
<section id="flight-rpc">
<span id="status-flight-rpc"></span><h2>Flight RPC<a class="headerlink" href="#flight-rpc" title="Permalink to this heading">#</a></h2>
<table class="table">
<thead>
<tr class="row-odd"><th class="head"><p>Flight RPC Transport</p></th>
<th class="head"><p>C++</p></th>
<th class="head"><p>Java</p></th>
<th class="head"><p>Go</p></th>
<th class="head"><p>JS</p></th>
<th class="head"><p>C#</p></th>
<th class="head"><p>Rust</p></th>
<th class="head"><p>Julia</p></th>
<th class="head"><p>Swift</p></th>
</tr>
</thead>
<tbody>
<tr class="row-even"><td><p><a class="reference external" href="https://grpc.io/">gRPC</a> transport (grpc:, grpc+tcp:)</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td></td>
</tr>
<tr class="row-odd"><td><p>gRPC domain socket transport (grpc+unix:)</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td></td>
</tr>
<tr class="row-even"><td><p>gRPC + TLS transport (grpc+tls:)</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td></td>
</tr>
<tr class="row-odd"><td><p><a class="reference external" href="https://openucx.org/">UCX</a> transport (ucx:)</p></td>
<td><p></p></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
</tbody>
</table>
<p>Supported features in the gRPC transport:</p>
<table class="table">
<thead>
<tr class="row-odd"><th class="head"><p>Flight RPC Feature</p></th>
<th class="head"><p>C++</p></th>
<th class="head"><p>Java</p></th>
<th class="head"><p>Go</p></th>
<th class="head"><p>JS</p></th>
<th class="head"><p>C#</p></th>
<th class="head"><p>Rust</p></th>
<th class="head"><p>Julia</p></th>
<th class="head"><p>Swift</p></th>
</tr>
</thead>
<tbody>
<tr class="row-even"><td><p>All RPC methods</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td><p>✓ (1)</p></td>
<td><p></p></td>
<td></td>
<td></td>
</tr>
<tr class="row-odd"><td><p>Authentication handlers</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td><p>✓ (2)</p></td>
<td><p></p></td>
<td></td>
<td></td>
</tr>
<tr class="row-even"><td><p>Call timeouts</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td></td>
<td><p></p></td>
<td></td>
<td></td>
</tr>
<tr class="row-odd"><td><p>Call cancellation</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td></td>
<td><p></p></td>
<td></td>
<td></td>
</tr>
<tr class="row-even"><td><p>Concurrent client calls (3)</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td></td>
</tr>
<tr class="row-odd"><td><p>Custom middleware</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td></td>
<td><p></p></td>
<td></td>
<td></td>
</tr>
<tr class="row-even"><td><p>RPC error codes</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td></td>
</tr>
</tbody>
</table>
<p>Supported features in the UCX transport:</p>
<table class="table">
<thead>
<tr class="row-odd"><th class="head"><p>Flight RPC Feature</p></th>
<th class="head"><p>C++</p></th>
<th class="head"><p>Java</p></th>
<th class="head"><p>Go</p></th>
<th class="head"><p>JS</p></th>
<th class="head"><p>C#</p></th>
<th class="head"><p>Rust</p></th>
<th class="head"><p>Julia</p></th>
<th class="head"><p>Swift</p></th>
</tr>
</thead>
<tbody>
<tr class="row-even"><td><p>All RPC methods</p></td>
<td><p>✓ (4)</p></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr class="row-odd"><td><p>Authentication handlers</p></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr class="row-even"><td><p>Call timeouts</p></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr class="row-odd"><td><p>Call cancellation</p></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr class="row-even"><td><p>Concurrent client calls</p></td>
<td><p>✓ (5)</p></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr class="row-odd"><td><p>Custom middleware</p></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr class="row-even"><td><p>RPC error codes</p></td>
<td><p></p></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
</tbody>
</table>
<p>Notes:</p>
<ul class="simple">
<li><p>(1) No support for Handshake or DoExchange.</p></li>
<li><p>(2) Support using AspNetCore authentication handlers.</p></li>
<li><p>(3) Whether a single client can support multiple concurrent calls.</p></li>
<li><p>(4) Only support for DoExchange, DoGet, DoPut, and GetFlightInfo.</p></li>
<li><p>(5) Each concurrent call is a separate connection to the server
(unlike gRPC where concurrent calls are multiplexed over a single
connection). This will generally provide better throughput but
consumes more resources both on the server and the client.</p></li>
</ul>
<div class="admonition seealso">
<p class="admonition-title">See also</p>
<p>The <a class="reference internal" href="format/Flight.html#flight-rpc"><span class="std std-ref">Arrow Flight RPC</span></a> specification.</p>
</div>
</section>
<section id="flight-sql">
<h2>Flight SQL<a class="headerlink" href="#flight-sql" title="Permalink to this heading">#</a></h2>
<div class="admonition note">
<p class="admonition-title">Note</p>
<p>Flight SQL is still experimental.</p>
</div>
<p>The feature support refers to the client/server libraries only;
databases which implement the Flight SQL protocol in turn will
support/not support individual features.</p>
<table class="table">
<thead>
<tr class="row-odd"><th class="head"><p>Feature</p></th>
<th class="head"><p>C++</p></th>
<th class="head"><p>Java</p></th>
<th class="head"><p>Go</p></th>
<th class="head"><p>JS</p></th>
<th class="head"><p>C#</p></th>
<th class="head"><p>Rust</p></th>
<th class="head"><p>Julia</p></th>
<th class="head"><p>Swift</p></th>
</tr>
</thead>
<tbody>
<tr class="row-even"><td><p>BeginSavepoint</p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr class="row-odd"><td><p>BeginTransaction</p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr class="row-even"><td><p>CancelQuery</p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr class="row-odd"><td><p>ClosePreparedStatement</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td></td>
</tr>
<tr class="row-even"><td><p>CreatePreparedStatement</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td></td>
</tr>
<tr class="row-odd"><td><p>CreatePreparedSubstraitPlan</p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr class="row-even"><td><p>EndSavepoint</p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr class="row-odd"><td><p>EndTransaction</p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr class="row-even"><td><p>GetCatalogs</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td></td>
</tr>
<tr class="row-odd"><td><p>GetCrossReference</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td></td>
</tr>
<tr class="row-even"><td><p>GetDbSchemas</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td></td>
</tr>
<tr class="row-odd"><td><p>GetExportedKeys</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td></td>
</tr>
<tr class="row-even"><td><p>GetImportedKeys</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td></td>
</tr>
<tr class="row-odd"><td><p>GetPrimaryKeys</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td></td>
</tr>
<tr class="row-even"><td><p>GetSqlInfo</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td></td>
</tr>
<tr class="row-odd"><td><p>GetTables</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td></td>
</tr>
<tr class="row-even"><td><p>GetTableTypes</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td></td>
</tr>
<tr class="row-odd"><td><p>GetXdbcTypeInfo</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td></td>
</tr>
<tr class="row-even"><td><p>PreparedStatementQuery</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td></td>
</tr>
<tr class="row-odd"><td><p>PreparedStatementUpdate</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td></td>
</tr>
<tr class="row-even"><td><p>StatementSubstraitPlan</p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr class="row-odd"><td><p>StatementQuery</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td></td>
</tr>
<tr class="row-even"><td><p>StatementUpdate</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td></td>
</tr>
</tbody>
</table>
<div class="admonition seealso">
<p class="admonition-title">See also</p>
<p>The <a class="reference internal" href="format/FlightSql.html"><span class="doc">Arrow Flight SQL</span></a> specification.</p>
</div>
</section>
<section id="c-data-interface">
<h2>C Data Interface<a class="headerlink" href="#c-data-interface" title="Permalink to this heading">#</a></h2>
<table class="table">
<thead>
<tr class="row-odd"><th class="head"><p>Feature</p></th>
<th class="head"><p>C++</p></th>
<th class="head"><p>Python</p></th>
<th class="head"><p>R</p></th>
<th class="head"><p>Rust</p></th>
<th class="head"><p>Go</p></th>
<th class="head"><p>Java</p></th>
<th class="head"><p>C/GLib</p></th>
<th class="head"><p>Ruby</p></th>
<th class="head"><p>Julia</p></th>
<th class="head"><p>C#</p></th>
<th class="head"><p>Swift</p></th>
<th class="head"><p>nanoarrow</p></th>
</tr>
</thead>
<tbody>
<tr class="row-even"><td><p>Schema export</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
</tr>
<tr class="row-odd"><td><p>Array export</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
</tr>
<tr class="row-even"><td><p>Schema import</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
</tr>
<tr class="row-odd"><td><p>Array import</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
</tr>
</tbody>
</table>
<div class="admonition seealso">
<p class="admonition-title">See also</p>
<p>The <a class="reference internal" href="format/CDataInterface.html#c-data-interface"><span class="std std-ref">C Data Interface</span></a> specification.</p>
</div>
</section>
<section id="c-stream-interface">
<h2>C Stream Interface<a class="headerlink" href="#c-stream-interface" title="Permalink to this heading">#</a></h2>
<table class="table">
<thead>
<tr class="row-odd"><th class="head"><p>Feature</p></th>
<th class="head"><p>C++</p></th>
<th class="head"><p>Python</p></th>
<th class="head"><p>R</p></th>
<th class="head"><p>Rust</p></th>
<th class="head"><p>Go</p></th>
<th class="head"><p>Java</p></th>
<th class="head"><p>C/GLib</p></th>
<th class="head"><p>Ruby</p></th>
<th class="head"><p>Julia</p></th>
<th class="head"><p>C#</p></th>
<th class="head"><p>Swift</p></th>
<th class="head"><p>nanoarrow</p></th>
</tr>
</thead>
<tbody>
<tr class="row-even"><td><p>Stream export</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
</tr>
<tr class="row-odd"><td><p>Stream import</p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
<td></td>
<td><p></p></td>
</tr>
</tbody>
</table>
<div class="admonition seealso">
<p class="admonition-title">See also</p>
<p>The <a class="reference internal" href="format/CStreamInterface.html#c-stream-interface"><span class="std std-ref">C Stream Interface</span></a> specification.</p>
</div>
</section>
<section id="third-party-data-formats">
<h2>Third-Party Data Formats<a class="headerlink" href="#third-party-data-formats" title="Permalink to this heading">#</a></h2>
<table class="table">
<thead>
<tr class="row-odd"><th class="head"><p>Format</p></th>
<th class="head"><p>C++</p></th>
<th class="head"><p>Java</p></th>
<th class="head"><p>Go</p></th>
<th class="head"><p>JS</p></th>
<th class="head"><p>C#</p></th>
<th class="head"><p>Rust</p></th>
<th class="head"><p>Julia</p></th>
<th class="head"><p>Swift</p></th>
</tr>
</thead>
<tbody>
<tr class="row-even"><td><p>Avro</p></td>
<td></td>
<td><p>R</p></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr class="row-odd"><td><p>CSV</p></td>
<td><p>R/W</p></td>
<td><p>R (2)</p></td>
<td><p>R/W</p></td>
<td></td>
<td></td>
<td><p>R/W</p></td>
<td><p>R/W</p></td>
<td></td>
</tr>
<tr class="row-even"><td><p>ORC</p></td>
<td><p>R/W</p></td>
<td><p>R (1)</p></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr class="row-odd"><td><p>Parquet</p></td>
<td><p>R/W</p></td>
<td><p>R (2)</p></td>
<td><p>R/W</p></td>
<td></td>
<td></td>
<td><p>R/W</p></td>
<td></td>
<td></td>
</tr>
</tbody>
</table>
<p>Notes:</p>
<ul class="simple">
<li><p><em>R</em> = Read supported</p></li>
<li><p><em>W</em> = Write supported</p></li>
<li><p>(1) Through JNI bindings. (Provided by <code class="docutils literal notranslate"><span class="pre">org.apache.arrow.orc:arrow-orc</span></code>)</p></li>
<li><p>(2) Through JNI bindings to Arrow C++ Datasets. (Provided by <code class="docutils literal notranslate"><span class="pre">org.apache.arrow:arrow-dataset</span></code>)</p></li>
</ul>
</section>
</section>
</article>
<footer class="prev-next-footer">
<div class="prev-next-area">
<a class="left-prev"
href="r/index.html"
title="previous page">
<i class="fa-solid fa-angle-left"></i>
<div class="prev-next-info">
<p class="prev-next-subtitle">previous</p>
<p class="prev-next-title">R docs</p>
</div>
</a>
</div>
</footer>
</div>
<div class="bd-sidebar-secondary bd-toc"><div class="sidebar-secondary-items sidebar-secondary__inner">
<div class="sidebar-secondary-item">
<div
id="pst-page-navigation-heading-2"
class="page-toc tocsection onthispage">
<i class="fa-solid fa-list"></i> On this page
</div>
<nav class="bd-toc-nav page-toc" aria-labelledby="pst-page-navigation-heading-2">
<ul class="visible nav section-nav flex-column">
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#data-types">Data Types</a></li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#ipc-format">IPC Format</a></li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#flight-rpc">Flight RPC</a></li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#flight-sql">Flight SQL</a></li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#c-data-interface">C Data Interface</a></li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#c-stream-interface">C Stream Interface</a></li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#third-party-data-formats">Third-Party Data Formats</a></li>
</ul>
</nav></div>
<div class="sidebar-secondary-item">
<div class="tocsection editthispage">
<a href="https://github.com/apache/arrow/edit/main/docs/source/status.rst">
<i class="fa-solid fa-pencil"></i>
Edit on GitHub
</a>
</div>
</div>
</div></div>
</div>
<footer class="bd-footer-content">
</footer>
</main>
</div>
</div>
<!-- Scripts loaded after <body> so the DOM is not blocked -->
<script src="_static/scripts/bootstrap.js?digest=8d27b9dea8ad943066ae"></script>
<script src="_static/scripts/pydata-sphinx-theme.js?digest=8d27b9dea8ad943066ae"></script>
<footer class="bd-footer">
<div class="bd-footer__inner bd-page-width">
<div class="footer-items__start">
<div class="footer-item">
<p class="copyright">
© Copyright 2016-2024 Apache Software Foundation.
Apache Arrow, Arrow, Apache, the Apache feather logo, and the Apache Arrow project logo are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries.
<br/>
</p>
</div>
<div class="footer-item">
<p class="sphinx-version">
Created using <a href="https://www.sphinx-doc.org/">Sphinx</a> 6.2.0.
<br/>
</p>
</div>
</div>
<div class="footer-items__end">
<div class="footer-item">
<p class="theme-version">
Built with the <a href="https://pydata-sphinx-theme.readthedocs.io/en/stable/index.html">PyData Sphinx Theme</a> 0.15.2.
</p></div>
</div>
</div>
</footer>
</body>
</html>