This is an automated email from the ASF dual-hosted git repository.
github-bot pushed a commit to branch asf-site
in repository https://gitbox.apache.org/repos/asf/datafusion.git
The following commit(s) were added to refs/heads/asf-site by this push:
new 9e659b126c Publish built docs triggered by
8756197cf2f1e5994710700129aaa547a6276815
9e659b126c is described below
commit 9e659b126cf05bc170fab0d109e749f3fdafc983
Author: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
AuthorDate: Fri Mar 21 19:06:40 2025 +0000
Publish built docs triggered by 8756197cf2f1e5994710700129aaa547a6276815
---
.../library-user-guide/working-with-exprs.md.txt | 19 ++++++++++
library-user-guide/working-with-exprs.html | 41 ++++++++++++++++++++++
searchindex.js | 2 +-
3 files changed, 61 insertions(+), 1 deletion(-)
diff --git a/_sources/library-user-guide/working-with-exprs.md.txt
b/_sources/library-user-guide/working-with-exprs.md.txt
index d9a6e28a1b..058f4132d4 100644
--- a/_sources/library-user-guide/working-with-exprs.md.txt
+++ b/_sources/library-user-guide/working-with-exprs.md.txt
@@ -50,6 +50,25 @@ As another example, the SQL expression `a + b * c` would be
represented as an `E
As the writer of a library, you can use `Expr`s to represent computations that
you want to perform. This guide will walk you through how to make your own
scalar UDF as an `Expr` and how to rewrite `Expr`s to inline the simple UDF.
+## Arrow Schema and DataFusion DFSchema
+
+Apache Arrow `Schema` provides a lightweight structure for defining data, and
Apache Datafusion`DFSchema` extends it with extra information such as column
qualifiers and functional dependencies. Column qualifiers are multi part path
to the table e.g table, schema, catalog. Functional Dependency is the
relationship between attributes(characteristics) of a table related to each
other.
+
+### Difference between Schema and DFSchema
+
+- Schema: A fundamental component of Apache Arrow, `Schema` defines a
dataset's structure, specifying column names and their data types.
+
+ > Please see [Struct
Schema](https://docs.rs/arrow-schema/54.2.1/arrow_schema/struct.Schema.html)
for a detailed document of Arrow Schema.
+
+- DFSchema: Extending `Schema`, `DFSchema` incorporates qualifiers such as
table names, enabling it to carry additional context when required. This is
particularly valuable for managing queries across multiple tables.
+ > Please see [Struct
DFSchema](https://docs.rs/datafusion/latest/datafusion/common/struct.DFSchema.html)
for a detailed document of DFSchema.
+
+### How to convert between Schema and DFSchema
+
+From Schema to DFSchema: Use `DFSchema::try_from_qualified_schema` with a
table name and original schema, for detailed code example please see
[creating-qualified-schemas](https://docs.rs/datafusion/latest/datafusion/common/struct.DFSchema.html#creating-qualified-schemas).
+
+From DFSchema to Schema: Since the `Into` trait has been implemented for
DFSchema to convert it into an Arrow Schema, for detailed code example please
see
[converting-back-to-arrow-schema](https://docs.rs/datafusion/latest/datafusion/common/struct.DFSchema.html#converting-back-to-arrow-schema).
+
## Creating and Evaluating `Expr`s
Please see
[expr_api.rs](https://github.com/apache/datafusion/blob/main/datafusion-examples/examples/expr_api.rs)
for well commented code for creating, evaluating, simplifying, and analyzing
`Expr`s.
diff --git a/library-user-guide/working-with-exprs.html
b/library-user-guide/working-with-exprs.html
index 44ae2dda07..6053e6e924 100644
--- a/library-user-guide/working-with-exprs.html
+++ b/library-user-guide/working-with-exprs.html
@@ -522,6 +522,23 @@
<nav id="bd-toc-nav">
<ul class="visible nav section-nav flex-column">
+ <li class="toc-h2 nav-item toc-entry">
+ <a class="reference internal nav-link"
href="#arrow-schema-and-datafusion-dfschema">
+ Arrow Schema and DataFusion DFSchema
+ </a>
+ <ul class="nav section-nav flex-column">
+ <li class="toc-h3 nav-item toc-entry">
+ <a class="reference internal nav-link"
href="#difference-between-schema-and-dfschema">
+ Difference between Schema and DFSchema
+ </a>
+ </li>
+ <li class="toc-h3 nav-item toc-entry">
+ <a class="reference internal nav-link"
href="#how-to-convert-between-schema-and-dfschema">
+ How to convert between Schema and DFSchema
+ </a>
+ </li>
+ </ul>
+ </li>
<li class="toc-h2 nav-item toc-entry">
<a class="reference internal nav-link" href="#creating-and-evaluating-exprs">
Creating and Evaluating
@@ -659,6 +676,30 @@
</pre></div>
</div>
<p>As the writer of a library, you can use <code class="docutils literal
notranslate"><span class="pre">Expr</span></code>s to represent computations
that you want to perform. This guide will walk you through how to make your own
scalar UDF as an <code class="docutils literal notranslate"><span
class="pre">Expr</span></code> and how to rewrite <code class="docutils literal
notranslate"><span class="pre">Expr</span></code>s to inline the simple UDF.</p>
+<section id="arrow-schema-and-datafusion-dfschema">
+<h2>Arrow Schema and DataFusion DFSchema<a class="headerlink"
href="#arrow-schema-and-datafusion-dfschema" title="Link to this
heading">¶</a></h2>
+<p>Apache Arrow <code class="docutils literal notranslate"><span
class="pre">Schema</span></code> provides a lightweight structure for defining
data, and Apache Datafusion<code class="docutils literal notranslate"><span
class="pre">DFSchema</span></code> extends it with extra information such as
column qualifiers and functional dependencies. Column qualifiers are multi part
path to the table e.g table, schema, catalog. Functional Dependency is the
relationship between attributes(characte [...]
+<section id="difference-between-schema-and-dfschema">
+<h3>Difference between Schema and DFSchema<a class="headerlink"
href="#difference-between-schema-and-dfschema" title="Link to this
heading">¶</a></h3>
+<ul>
+<li><p>Schema: A fundamental component of Apache Arrow, <code class="docutils
literal notranslate"><span class="pre">Schema</span></code> defines a dataset’s
structure, specifying column names and their data types.</p>
+<blockquote>
+<div><p>Please see <a class="reference external"
href="https://docs.rs/arrow-schema/54.2.1/arrow_schema/struct.Schema.html">Struct
Schema</a> for a detailed document of Arrow Schema.</p>
+</div></blockquote>
+</li>
+<li><p>DFSchema: Extending <code class="docutils literal notranslate"><span
class="pre">Schema</span></code>, <code class="docutils literal
notranslate"><span class="pre">DFSchema</span></code> incorporates qualifiers
such as table names, enabling it to carry additional context when required.
This is particularly valuable for managing queries across multiple tables.</p>
+<blockquote>
+<div><p>Please see <a class="reference external"
href="https://docs.rs/datafusion/latest/datafusion/common/struct.DFSchema.html">Struct
DFSchema</a> for a detailed document of DFSchema.</p>
+</div></blockquote>
+</li>
+</ul>
+</section>
+<section id="how-to-convert-between-schema-and-dfschema">
+<h3>How to convert between Schema and DFSchema<a class="headerlink"
href="#how-to-convert-between-schema-and-dfschema" title="Link to this
heading">¶</a></h3>
+<p>From Schema to DFSchema: Use <code class="docutils literal
notranslate"><span
class="pre">DFSchema::try_from_qualified_schema</span></code> with a table name
and original schema, for detailed code example please see <a class="reference
external"
href="https://docs.rs/datafusion/latest/datafusion/common/struct.DFSchema.html#creating-qualified-schemas">creating-qualified-schemas</a>.</p>
+<p>From DFSchema to Schema: Since the <code class="docutils literal
notranslate"><span class="pre">Into</span></code> trait has been implemented
for DFSchema to convert it into an Arrow Schema, for detailed code example
please see <a class="reference external"
href="https://docs.rs/datafusion/latest/datafusion/common/struct.DFSchema.html#converting-back-to-arrow-schema">converting-back-to-arrow-schema</a>.</p>
+</section>
+</section>
<section id="creating-and-evaluating-exprs">
<h2>Creating and Evaluating <code class="docutils literal notranslate"><span
class="pre">Expr</span></code>s<a class="headerlink"
href="#creating-and-evaluating-exprs" title="Link to this heading">¶</a></h2>
<p>Please see <a class="reference external"
href="https://github.com/apache/datafusion/blob/main/datafusion-examples/examples/expr_api.rs">expr_api.rs</a>
for well commented code for creating, evaluating, simplifying, and analyzing
<code class="docutils literal notranslate"><span
class="pre">Expr</span></code>s.</p>
diff --git a/searchindex.js b/searchindex.js
index 8c9aa8bf49..ef2eb49904 100644
--- a/searchindex.js
+++ b/searchindex.js
@@ -1 +1 @@
-Search.setIndex({"alltitles":{"!=":[[52,"op-neq"]],"!~":[[52,"op-re-not-match"]],"!~*":[[52,"op-re-not-match-i"]],"!~~":[[52,"id19"]],"!~~*":[[52,"id20"]],"#":[[52,"op-bit-xor"]],"%":[[52,"op-modulo"]],"&":[[52,"op-bit-and"]],"(relation,
name) tuples in logical fields and logical columns are
unique":[[12,"relation-name-tuples-in-logical-fields-and-logical-columns-are-unique"]],"*":[[52,"op-multiply"]],"+":[[52,"op-plus"]],"-":[[52,"op-minus"]],"/":[[52,"op-divide"]],"2022
Q2":[[10,"q2"]] [...]
\ No newline at end of file
+Search.setIndex({"alltitles":{"!=":[[52,"op-neq"]],"!~":[[52,"op-re-not-match"]],"!~*":[[52,"op-re-not-match-i"]],"!~~":[[52,"id19"]],"!~~*":[[52,"id20"]],"#":[[52,"op-bit-xor"]],"%":[[52,"op-modulo"]],"&":[[52,"op-bit-and"]],"(relation,
name) tuples in logical fields and logical columns are
unique":[[12,"relation-name-tuples-in-logical-fields-and-logical-columns-are-unique"]],"*":[[52,"op-multiply"]],"+":[[52,"op-plus"]],"-":[[52,"op-minus"]],"/":[[52,"op-divide"]],"2022
Q2":[[10,"q2"]] [...]
\ No newline at end of file
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]