You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@streampipes.apache.org by gi...@apache.org on 2023/08/14 14:21:54 UTC
[streampipes-website] branch asf-site updated: Automated deployment: Mon Aug 14 14:21:49 UTC 2023 c6304eecac16df1ab864cd4bfd9e2063ffcda508
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/streampipes-website.git
The following commit(s) were added to refs/heads/asf-site by this push:
new 4188bcb9 Automated deployment: Mon Aug 14 14:21:49 UTC 2023 c6304eecac16df1ab864cd4bfd9e2063ffcda508
4188bcb9 is described below
commit 4188bcb96f7cad56bf83314724965876322af158
Author: dominikriemer <do...@users.noreply.github.com>
AuthorDate: Mon Aug 14 14:21:49 2023 +0000
Automated deployment: Mon Aug 14 14:21:49 UTC 2023 c6304eecac16df1ab864cd4bfd9e2063ffcda508
---
docs/docs/python/dev/404.html | 2 +-
.../dev/getting-started/developing/index.html | 2 +-
.../dev/getting-started/first-steps/index.html | 2 +-
.../dev/getting-started/quickstart/index.html | 2 +-
docs/docs/python/dev/index.html | 2 +-
docs/docs/python/dev/objects.inv | Bin 1927 -> 1920 bytes
.../python/dev/reference/client/client/index.html | 2 +-
.../python/dev/reference/client/config/index.html | 2 +-
.../client/credential_provider/index.html | 2 +-
.../endpoint/api/data_lake_measure/index.html | 2 +-
.../reference/endpoint/api/data_stream/index.html | 2 +-
.../dev/reference/endpoint/api/version/index.html | 2 +-
.../dev/reference/endpoint/endpoint/index.html | 2 +-
.../dev/reference/endpoint/exceptions/index.html | 2 +-
.../function_zoo/river_function/index.html | 80 +-
.../reference/functions/broker/broker/index.html | 2 +-
.../functions/broker/broker_handler/index.html | 2 +-
.../reference/functions/broker/consumer/index.html | 2 +-
.../broker/kafka/kafka_consumer/index.html | 2 +-
.../broker/kafka/kafka_message_fetcher/index.html | 2 +-
.../broker/kafka/kafka_publisher/index.html | 2 +-
.../functions/broker/nats/nats_consumer/index.html | 2 +-
.../broker/nats/nats_publisher/index.html | 2 +-
.../functions/broker/output_collector/index.html | 2 +-
.../functions/broker/publisher/index.html | 2 +-
.../functions/function_handler/index.html | 2 +-
.../reference/functions/registration/index.html | 2 +-
.../functions/streampipes_function/index.html | 6 +-
.../functions/utils/async_iter_handler/index.html | 2 +-
.../functions/utils/data_stream_context/index.html | 2 +-
.../utils/data_stream_generator/index.html | 2 +-
.../functions/utils/function_context/index.html | 2 +-
.../python/dev/reference/model/common/index.html | 2 +-
.../model/container/data_lake_measures/index.html | 2 +-
.../model/container/data_streams/index.html | 2 +-
.../model/container/resource_container/index.html | 2 +-
.../reference/model/container/versions/index.html | 2 +-
.../model/resource/data_lake_measure/index.html | 2 +-
.../model/resource/data_series/index.html | 2 +-
.../model/resource/data_stream/index.html | 2 +-
.../reference/model/resource/exceptions/index.html | 2 +-
.../model/resource/function_definition/index.html | 2 +-
.../model/resource/query_result/index.html | 2 +-
.../reference/model/resource/resource/index.html | 2 +-
.../reference/model/resource/version/index.html | 2 +-
.../python/dev/scripts/gen_ref_pages/index.html | 229 ++--
docs/docs/python/dev/search/search_index.json | 2 +-
docs/docs/python/dev/sitemap.xml | 96 +-
docs/docs/python/dev/sitemap.xml.gz | Bin 705 -> 704 bytes
.../index.html | 466 +++----
.../index.html | 1390 ++++++++------------
.../index.html | 992 ++++++--------
.../index.html | 918 ++++++-------
google9a5ae5e559ae1c8b.html | 1 +
54 files changed, 1794 insertions(+), 2470 deletions(-)
diff --git a/docs/docs/python/dev/404.html b/docs/docs/python/dev/404.html
index e45bb05f..3152604e 100644
--- a/docs/docs/python/dev/404.html
+++ b/docs/docs/python/dev/404.html
@@ -52,7 +52,7 @@
<link rel="icon" href="https://streampipes.apache.org/img/favicon/favicon.png">
- <meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.1.3">
+ <meta name="generator" content="mkdocs-1.5.1, mkdocs-material-9.1.3">
diff --git a/docs/docs/python/dev/getting-started/developing/index.html b/docs/docs/python/dev/getting-started/developing/index.html
index 2d1d8d8a..c0e0f740 100644
--- a/docs/docs/python/dev/getting-started/developing/index.html
+++ b/docs/docs/python/dev/getting-started/developing/index.html
@@ -40,7 +40,7 @@
<link rel="next" href="../quickstart/">
<link rel="icon" href="https://streampipes.apache.org/img/favicon/favicon.png">
- <meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.1.3">
+ <meta name="generator" content="mkdocs-1.5.1, mkdocs-material-9.1.3">
diff --git a/docs/docs/python/dev/getting-started/first-steps/index.html b/docs/docs/python/dev/getting-started/first-steps/index.html
index 642b0070..054e8b8a 100644
--- a/docs/docs/python/dev/getting-started/first-steps/index.html
+++ b/docs/docs/python/dev/getting-started/first-steps/index.html
@@ -40,7 +40,7 @@
<link rel="next" href="../developing/">
<link rel="icon" href="https://streampipes.apache.org/img/favicon/favicon.png">
- <meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.1.3">
+ <meta name="generator" content="mkdocs-1.5.1, mkdocs-material-9.1.3">
diff --git a/docs/docs/python/dev/getting-started/quickstart/index.html b/docs/docs/python/dev/getting-started/quickstart/index.html
index a0dd70b0..156d8634 100644
--- a/docs/docs/python/dev/getting-started/quickstart/index.html
+++ b/docs/docs/python/dev/getting-started/quickstart/index.html
@@ -40,7 +40,7 @@
<link rel="next" href="../../tutorials/1-introduction-to-streampipes-python-client/">
<link rel="icon" href="https://streampipes.apache.org/img/favicon/favicon.png">
- <meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.1.3">
+ <meta name="generator" content="mkdocs-1.5.1, mkdocs-material-9.1.3">
diff --git a/docs/docs/python/dev/index.html b/docs/docs/python/dev/index.html
index 881762fc..4ae2bdbe 100644
--- a/docs/docs/python/dev/index.html
+++ b/docs/docs/python/dev/index.html
@@ -38,7 +38,7 @@
<link rel="next" href="getting-started/first-steps/">
<link rel="icon" href="https://streampipes.apache.org/img/favicon/favicon.png">
- <meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.1.3">
+ <meta name="generator" content="mkdocs-1.5.1, mkdocs-material-9.1.3">
diff --git a/docs/docs/python/dev/objects.inv b/docs/docs/python/dev/objects.inv
index 70d7510b..34f54698 100644
Binary files a/docs/docs/python/dev/objects.inv and b/docs/docs/python/dev/objects.inv differ
diff --git a/docs/docs/python/dev/reference/client/client/index.html b/docs/docs/python/dev/reference/client/client/index.html
index 9dbf584e..87f18f7e 100644
--- a/docs/docs/python/dev/reference/client/client/index.html
+++ b/docs/docs/python/dev/reference/client/client/index.html
@@ -40,7 +40,7 @@
<link rel="next" href="../config/">
<link rel="icon" href="https://streampipes.apache.org/img/favicon/favicon.png">
- <meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.1.3">
+ <meta name="generator" content="mkdocs-1.5.1, mkdocs-material-9.1.3">
diff --git a/docs/docs/python/dev/reference/client/config/index.html b/docs/docs/python/dev/reference/client/config/index.html
index aa6816a3..5940f050 100644
--- a/docs/docs/python/dev/reference/client/config/index.html
+++ b/docs/docs/python/dev/reference/client/config/index.html
@@ -40,7 +40,7 @@
<link rel="next" href="../credential_provider/">
<link rel="icon" href="https://streampipes.apache.org/img/favicon/favicon.png">
- <meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.1.3">
+ <meta name="generator" content="mkdocs-1.5.1, mkdocs-material-9.1.3">
diff --git a/docs/docs/python/dev/reference/client/credential_provider/index.html b/docs/docs/python/dev/reference/client/credential_provider/index.html
index 7de34563..d0250ecb 100644
--- a/docs/docs/python/dev/reference/client/credential_provider/index.html
+++ b/docs/docs/python/dev/reference/client/credential_provider/index.html
@@ -40,7 +40,7 @@
<link rel="next" href="../../endpoint/endpoint/">
<link rel="icon" href="https://streampipes.apache.org/img/favicon/favicon.png">
- <meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.1.3">
+ <meta name="generator" content="mkdocs-1.5.1, mkdocs-material-9.1.3">
diff --git a/docs/docs/python/dev/reference/endpoint/api/data_lake_measure/index.html b/docs/docs/python/dev/reference/endpoint/api/data_lake_measure/index.html
index b4b5fd05..da6dcb55 100644
--- a/docs/docs/python/dev/reference/endpoint/api/data_lake_measure/index.html
+++ b/docs/docs/python/dev/reference/endpoint/api/data_lake_measure/index.html
@@ -40,7 +40,7 @@
<link rel="next" href="../data_stream/">
<link rel="icon" href="https://streampipes.apache.org/img/favicon/favicon.png">
- <meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.1.3">
+ <meta name="generator" content="mkdocs-1.5.1, mkdocs-material-9.1.3">
diff --git a/docs/docs/python/dev/reference/endpoint/api/data_stream/index.html b/docs/docs/python/dev/reference/endpoint/api/data_stream/index.html
index e5cbde36..503893f5 100644
--- a/docs/docs/python/dev/reference/endpoint/api/data_stream/index.html
+++ b/docs/docs/python/dev/reference/endpoint/api/data_stream/index.html
@@ -40,7 +40,7 @@
<link rel="next" href="../version/">
<link rel="icon" href="https://streampipes.apache.org/img/favicon/favicon.png">
- <meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.1.3">
+ <meta name="generator" content="mkdocs-1.5.1, mkdocs-material-9.1.3">
diff --git a/docs/docs/python/dev/reference/endpoint/api/version/index.html b/docs/docs/python/dev/reference/endpoint/api/version/index.html
index 176f0a7d..ef1ba222 100644
--- a/docs/docs/python/dev/reference/endpoint/api/version/index.html
+++ b/docs/docs/python/dev/reference/endpoint/api/version/index.html
@@ -40,7 +40,7 @@
<link rel="next" href="../../../function_zoo/river_function/">
<link rel="icon" href="https://streampipes.apache.org/img/favicon/favicon.png">
- <meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.1.3">
+ <meta name="generator" content="mkdocs-1.5.1, mkdocs-material-9.1.3">
diff --git a/docs/docs/python/dev/reference/endpoint/endpoint/index.html b/docs/docs/python/dev/reference/endpoint/endpoint/index.html
index f154dcae..45a7a1d4 100644
--- a/docs/docs/python/dev/reference/endpoint/endpoint/index.html
+++ b/docs/docs/python/dev/reference/endpoint/endpoint/index.html
@@ -40,7 +40,7 @@
<link rel="next" href="../exceptions/">
<link rel="icon" href="https://streampipes.apache.org/img/favicon/favicon.png">
- <meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.1.3">
+ <meta name="generator" content="mkdocs-1.5.1, mkdocs-material-9.1.3">
diff --git a/docs/docs/python/dev/reference/endpoint/exceptions/index.html b/docs/docs/python/dev/reference/endpoint/exceptions/index.html
index e871ebd2..acf25b43 100644
--- a/docs/docs/python/dev/reference/endpoint/exceptions/index.html
+++ b/docs/docs/python/dev/reference/endpoint/exceptions/index.html
@@ -40,7 +40,7 @@
<link rel="next" href="../api/data_lake_measure/">
<link rel="icon" href="https://streampipes.apache.org/img/favicon/favicon.png">
- <meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.1.3">
+ <meta name="generator" content="mkdocs-1.5.1, mkdocs-material-9.1.3">
diff --git a/docs/docs/python/dev/reference/function_zoo/river_function/index.html b/docs/docs/python/dev/reference/function_zoo/river_function/index.html
index 08b78cba..c9029a54 100644
--- a/docs/docs/python/dev/reference/function_zoo/river_function/index.html
+++ b/docs/docs/python/dev/reference/function_zoo/river_function/index.html
@@ -40,7 +40,7 @@
<link rel="next" href="../../functions/function_handler/">
<link rel="icon" href="https://streampipes.apache.org/img/favicon/favicon.png">
- <meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.1.3">
+ <meta name="generator" content="mkdocs-1.5.1, mkdocs-material-9.1.3">
@@ -993,13 +993,6 @@
onServiceStopped()
</a>
-</li>
-
- <li class="md-nav__item">
- <a href="#streampipes.function_zoo.river_function.RiverFunction.requiredStreamIds" class="md-nav__link">
- requiredStreamIds()
- </a>
-
</li>
</ul>
@@ -1901,13 +1894,6 @@
onServiceStopped()
</a>
-</li>
-
- <li class="md-nav__item">
- <a href="#streampipes.function_zoo.river_function.RiverFunction.requiredStreamIds" class="md-nav__link">
- requiredStreamIds()
- </a>
-
</li>
</ul>
@@ -2244,7 +2230,7 @@ Is only needed when you continue to work with the prediction in StreamPipes.</p>
<h2 id="streampipes.function_zoo.river_function.RiverFunction" class="doc doc-heading">
-<code class="highlight language-python"><span class="n">RiverFunction</span><span class="p">(</span><span class="n">function_definition</span><span class="p">,</span> <span class="n">stream_ids</span><span class="p">,</span> <span class="n">model</span><span class="p">,</span> <span class="n">supervised</span><span class="p">,</span> <span class="n">target_label</span><span class="p">,</span> <span class="n">on_start</span><span class="p">,</span> <span class="n">on_event</span><span cla [...]
+<code class="highlight language-python"><span class="n">RiverFunction</span><span class="p">(</span><span class="n">function_definition</span><span class="p">,</span> <span class="n">model</span><span class="p">,</span> <span class="n">supervised</span><span class="p">,</span> <span class="n">target_label</span><span class="p">,</span> <span class="n">on_start</span><span class="p">,</span> <span class="n">on_event</span><span class="p">,</span> <span class="n">on_stop</span><span class= [...]
<a href="#streampipes.function_zoo.river_function.RiverFunction" class="headerlink" title="Permanent link">¶</a></h2>
@@ -2282,20 +2268,6 @@ for Online Machine Learning models of the <a href="https://riverml.xyz/">River l
</p>
</td>
</tr>
- <tr>
- <td><code>stream_ids</code></td>
- <td class="doc-param-details">
- <div class="doc-md-description">
- <p>The ids of the data stream to train the model.</p>
- </div>
- <p>
- <span class="doc-param-annotation">
- <b>TYPE:</b>
- <code><span title="typing.List">List</span>[str]</code>
- </span>
- </p>
- </td>
- </tr>
<tr>
<td><code>model</code></td>
<td class="doc-param-details">
@@ -2573,54 +2545,6 @@ but can be every model with a 'learn_one' and 'predict_one' method.</p>
</div>
-<div class="doc doc-object doc-function">
-
-
-
-<h3 id="streampipes.function_zoo.river_function.RiverFunction.requiredStreamIds" class="doc doc-heading">
-<code class="highlight language-python"><span class="n">requiredStreamIds</span><span class="p">()</span></code>
-
-<a href="#streampipes.function_zoo.river_function.RiverFunction.requiredStreamIds" class="headerlink" title="Permanent link">¶</a></h3>
-
-
- <div class="doc doc-contents ">
-
- <p>Returns the stream ids required by this function.</p>
-
-
-
- <table>
- <thead>
- <tr>
- <th><b>RETURNS</b></th>
- <th><b>DESCRIPTION</b></th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>
- <code>stream_ids</code>
- </td>
- <td class="doc-returns-details">
- <div class="doc-md-description">
- <p>List of stream ids required by the function</p>
- </div>
- <p>
- <span class="doc-returns-annotation">
- <b>TYPE:</b>
- <code><span title="typing.List">List</span>[str]</code>
- </span>
- </p>
- </td>
- </tr>
- </tbody>
- </table>
-
- </div>
-
-</div>
-
-
</div>
diff --git a/docs/docs/python/dev/reference/functions/broker/broker/index.html b/docs/docs/python/dev/reference/functions/broker/broker/index.html
index 27edcdcf..38560e4f 100644
--- a/docs/docs/python/dev/reference/functions/broker/broker/index.html
+++ b/docs/docs/python/dev/reference/functions/broker/broker/index.html
@@ -40,7 +40,7 @@
<link rel="next" href="../broker_handler/">
<link rel="icon" href="https://streampipes.apache.org/img/favicon/favicon.png">
- <meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.1.3">
+ <meta name="generator" content="mkdocs-1.5.1, mkdocs-material-9.1.3">
diff --git a/docs/docs/python/dev/reference/functions/broker/broker_handler/index.html b/docs/docs/python/dev/reference/functions/broker/broker_handler/index.html
index 5b333db0..44784018 100644
--- a/docs/docs/python/dev/reference/functions/broker/broker_handler/index.html
+++ b/docs/docs/python/dev/reference/functions/broker/broker_handler/index.html
@@ -40,7 +40,7 @@
<link rel="next" href="../consumer/">
<link rel="icon" href="https://streampipes.apache.org/img/favicon/favicon.png">
- <meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.1.3">
+ <meta name="generator" content="mkdocs-1.5.1, mkdocs-material-9.1.3">
diff --git a/docs/docs/python/dev/reference/functions/broker/consumer/index.html b/docs/docs/python/dev/reference/functions/broker/consumer/index.html
index f98bae1f..7dfe368f 100644
--- a/docs/docs/python/dev/reference/functions/broker/consumer/index.html
+++ b/docs/docs/python/dev/reference/functions/broker/consumer/index.html
@@ -40,7 +40,7 @@
<link rel="next" href="../output_collector/">
<link rel="icon" href="https://streampipes.apache.org/img/favicon/favicon.png">
- <meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.1.3">
+ <meta name="generator" content="mkdocs-1.5.1, mkdocs-material-9.1.3">
diff --git a/docs/docs/python/dev/reference/functions/broker/kafka/kafka_consumer/index.html b/docs/docs/python/dev/reference/functions/broker/kafka/kafka_consumer/index.html
index bbd2794a..d2888f72 100644
--- a/docs/docs/python/dev/reference/functions/broker/kafka/kafka_consumer/index.html
+++ b/docs/docs/python/dev/reference/functions/broker/kafka/kafka_consumer/index.html
@@ -40,7 +40,7 @@
<link rel="next" href="../kafka_message_fetcher/">
<link rel="icon" href="https://streampipes.apache.org/img/favicon/favicon.png">
- <meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.1.3">
+ <meta name="generator" content="mkdocs-1.5.1, mkdocs-material-9.1.3">
diff --git a/docs/docs/python/dev/reference/functions/broker/kafka/kafka_message_fetcher/index.html b/docs/docs/python/dev/reference/functions/broker/kafka/kafka_message_fetcher/index.html
index cdf4a56b..cfc776f9 100644
--- a/docs/docs/python/dev/reference/functions/broker/kafka/kafka_message_fetcher/index.html
+++ b/docs/docs/python/dev/reference/functions/broker/kafka/kafka_message_fetcher/index.html
@@ -40,7 +40,7 @@
<link rel="next" href="../kafka_publisher/">
<link rel="icon" href="https://streampipes.apache.org/img/favicon/favicon.png">
- <meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.1.3">
+ <meta name="generator" content="mkdocs-1.5.1, mkdocs-material-9.1.3">
diff --git a/docs/docs/python/dev/reference/functions/broker/kafka/kafka_publisher/index.html b/docs/docs/python/dev/reference/functions/broker/kafka/kafka_publisher/index.html
index e6711ebf..855ad15f 100644
--- a/docs/docs/python/dev/reference/functions/broker/kafka/kafka_publisher/index.html
+++ b/docs/docs/python/dev/reference/functions/broker/kafka/kafka_publisher/index.html
@@ -40,7 +40,7 @@
<link rel="next" href="../../nats/nats_consumer/">
<link rel="icon" href="https://streampipes.apache.org/img/favicon/favicon.png">
- <meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.1.3">
+ <meta name="generator" content="mkdocs-1.5.1, mkdocs-material-9.1.3">
diff --git a/docs/docs/python/dev/reference/functions/broker/nats/nats_consumer/index.html b/docs/docs/python/dev/reference/functions/broker/nats/nats_consumer/index.html
index e1de4a80..a9613773 100644
--- a/docs/docs/python/dev/reference/functions/broker/nats/nats_consumer/index.html
+++ b/docs/docs/python/dev/reference/functions/broker/nats/nats_consumer/index.html
@@ -40,7 +40,7 @@
<link rel="next" href="../nats_publisher/">
<link rel="icon" href="https://streampipes.apache.org/img/favicon/favicon.png">
- <meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.1.3">
+ <meta name="generator" content="mkdocs-1.5.1, mkdocs-material-9.1.3">
diff --git a/docs/docs/python/dev/reference/functions/broker/nats/nats_publisher/index.html b/docs/docs/python/dev/reference/functions/broker/nats/nats_publisher/index.html
index 054a4e4c..7fe5a606 100644
--- a/docs/docs/python/dev/reference/functions/broker/nats/nats_publisher/index.html
+++ b/docs/docs/python/dev/reference/functions/broker/nats/nats_publisher/index.html
@@ -40,7 +40,7 @@
<link rel="next" href="../../../utils/async_iter_handler/">
<link rel="icon" href="https://streampipes.apache.org/img/favicon/favicon.png">
- <meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.1.3">
+ <meta name="generator" content="mkdocs-1.5.1, mkdocs-material-9.1.3">
diff --git a/docs/docs/python/dev/reference/functions/broker/output_collector/index.html b/docs/docs/python/dev/reference/functions/broker/output_collector/index.html
index 5bb92b90..9ee4e50a 100644
--- a/docs/docs/python/dev/reference/functions/broker/output_collector/index.html
+++ b/docs/docs/python/dev/reference/functions/broker/output_collector/index.html
@@ -40,7 +40,7 @@
<link rel="next" href="../publisher/">
<link rel="icon" href="https://streampipes.apache.org/img/favicon/favicon.png">
- <meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.1.3">
+ <meta name="generator" content="mkdocs-1.5.1, mkdocs-material-9.1.3">
diff --git a/docs/docs/python/dev/reference/functions/broker/publisher/index.html b/docs/docs/python/dev/reference/functions/broker/publisher/index.html
index 25bc0682..4c04e4ad 100644
--- a/docs/docs/python/dev/reference/functions/broker/publisher/index.html
+++ b/docs/docs/python/dev/reference/functions/broker/publisher/index.html
@@ -40,7 +40,7 @@
<link rel="next" href="../kafka/kafka_consumer/">
<link rel="icon" href="https://streampipes.apache.org/img/favicon/favicon.png">
- <meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.1.3">
+ <meta name="generator" content="mkdocs-1.5.1, mkdocs-material-9.1.3">
diff --git a/docs/docs/python/dev/reference/functions/function_handler/index.html b/docs/docs/python/dev/reference/functions/function_handler/index.html
index 459a09d1..e919c9c1 100644
--- a/docs/docs/python/dev/reference/functions/function_handler/index.html
+++ b/docs/docs/python/dev/reference/functions/function_handler/index.html
@@ -40,7 +40,7 @@
<link rel="next" href="../registration/">
<link rel="icon" href="https://streampipes.apache.org/img/favicon/favicon.png">
- <meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.1.3">
+ <meta name="generator" content="mkdocs-1.5.1, mkdocs-material-9.1.3">
diff --git a/docs/docs/python/dev/reference/functions/registration/index.html b/docs/docs/python/dev/reference/functions/registration/index.html
index 16168d81..cc5db6e6 100644
--- a/docs/docs/python/dev/reference/functions/registration/index.html
+++ b/docs/docs/python/dev/reference/functions/registration/index.html
@@ -40,7 +40,7 @@
<link rel="next" href="../streampipes_function/">
<link rel="icon" href="https://streampipes.apache.org/img/favicon/favicon.png">
- <meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.1.3">
+ <meta name="generator" content="mkdocs-1.5.1, mkdocs-material-9.1.3">
diff --git a/docs/docs/python/dev/reference/functions/streampipes_function/index.html b/docs/docs/python/dev/reference/functions/streampipes_function/index.html
index dbdeb60d..1134250a 100644
--- a/docs/docs/python/dev/reference/functions/streampipes_function/index.html
+++ b/docs/docs/python/dev/reference/functions/streampipes_function/index.html
@@ -40,7 +40,7 @@
<link rel="next" href="../broker/broker/">
<link rel="icon" href="https://streampipes.apache.org/img/favicon/favicon.png">
- <meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.1.3">
+ <meta name="generator" content="mkdocs-1.5.1, mkdocs-material-9.1.3">
@@ -2369,10 +2369,6 @@ data analytics libraries there.</p>
<h3 id="streampipes.functions.streampipes_function.StreamPipesFunction.requiredStreamIds" class="doc doc-heading">
<code class="highlight language-python"><span class="n">requiredStreamIds</span><span class="p">()</span></code>
-
- <span class="doc doc-labels">
- <small class="doc doc-label doc-label-abstractmethod"><code>abstractmethod</code></small>
- </span>
<a href="#streampipes.functions.streampipes_function.StreamPipesFunction.requiredStreamIds" class="headerlink" title="Permanent link">¶</a></h3>
diff --git a/docs/docs/python/dev/reference/functions/utils/async_iter_handler/index.html b/docs/docs/python/dev/reference/functions/utils/async_iter_handler/index.html
index 67502a90..6f223c51 100644
--- a/docs/docs/python/dev/reference/functions/utils/async_iter_handler/index.html
+++ b/docs/docs/python/dev/reference/functions/utils/async_iter_handler/index.html
@@ -40,7 +40,7 @@
<link rel="next" href="../data_stream_context/">
<link rel="icon" href="https://streampipes.apache.org/img/favicon/favicon.png">
- <meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.1.3">
+ <meta name="generator" content="mkdocs-1.5.1, mkdocs-material-9.1.3">
diff --git a/docs/docs/python/dev/reference/functions/utils/data_stream_context/index.html b/docs/docs/python/dev/reference/functions/utils/data_stream_context/index.html
index 9c5b3df4..d477a6db 100644
--- a/docs/docs/python/dev/reference/functions/utils/data_stream_context/index.html
+++ b/docs/docs/python/dev/reference/functions/utils/data_stream_context/index.html
@@ -40,7 +40,7 @@
<link rel="next" href="../data_stream_generator/">
<link rel="icon" href="https://streampipes.apache.org/img/favicon/favicon.png">
- <meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.1.3">
+ <meta name="generator" content="mkdocs-1.5.1, mkdocs-material-9.1.3">
diff --git a/docs/docs/python/dev/reference/functions/utils/data_stream_generator/index.html b/docs/docs/python/dev/reference/functions/utils/data_stream_generator/index.html
index 3f0dc5fd..0d2a95a3 100644
--- a/docs/docs/python/dev/reference/functions/utils/data_stream_generator/index.html
+++ b/docs/docs/python/dev/reference/functions/utils/data_stream_generator/index.html
@@ -40,7 +40,7 @@
<link rel="next" href="../function_context/">
<link rel="icon" href="https://streampipes.apache.org/img/favicon/favicon.png">
- <meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.1.3">
+ <meta name="generator" content="mkdocs-1.5.1, mkdocs-material-9.1.3">
diff --git a/docs/docs/python/dev/reference/functions/utils/function_context/index.html b/docs/docs/python/dev/reference/functions/utils/function_context/index.html
index 2de5bbde..618c0881 100644
--- a/docs/docs/python/dev/reference/functions/utils/function_context/index.html
+++ b/docs/docs/python/dev/reference/functions/utils/function_context/index.html
@@ -40,7 +40,7 @@
<link rel="next" href="../../../model/common/">
<link rel="icon" href="https://streampipes.apache.org/img/favicon/favicon.png">
- <meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.1.3">
+ <meta name="generator" content="mkdocs-1.5.1, mkdocs-material-9.1.3">
diff --git a/docs/docs/python/dev/reference/model/common/index.html b/docs/docs/python/dev/reference/model/common/index.html
index 5f8e01ba..d612a34c 100644
--- a/docs/docs/python/dev/reference/model/common/index.html
+++ b/docs/docs/python/dev/reference/model/common/index.html
@@ -40,7 +40,7 @@
<link rel="next" href="../container/data_lake_measures/">
<link rel="icon" href="https://streampipes.apache.org/img/favicon/favicon.png">
- <meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.1.3">
+ <meta name="generator" content="mkdocs-1.5.1, mkdocs-material-9.1.3">
diff --git a/docs/docs/python/dev/reference/model/container/data_lake_measures/index.html b/docs/docs/python/dev/reference/model/container/data_lake_measures/index.html
index 3a95729d..4aa9decd 100644
--- a/docs/docs/python/dev/reference/model/container/data_lake_measures/index.html
+++ b/docs/docs/python/dev/reference/model/container/data_lake_measures/index.html
@@ -40,7 +40,7 @@
<link rel="next" href="../data_streams/">
<link rel="icon" href="https://streampipes.apache.org/img/favicon/favicon.png">
- <meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.1.3">
+ <meta name="generator" content="mkdocs-1.5.1, mkdocs-material-9.1.3">
diff --git a/docs/docs/python/dev/reference/model/container/data_streams/index.html b/docs/docs/python/dev/reference/model/container/data_streams/index.html
index 8aba7ecd..26cdebad 100644
--- a/docs/docs/python/dev/reference/model/container/data_streams/index.html
+++ b/docs/docs/python/dev/reference/model/container/data_streams/index.html
@@ -40,7 +40,7 @@
<link rel="next" href="../resource_container/">
<link rel="icon" href="https://streampipes.apache.org/img/favicon/favicon.png">
- <meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.1.3">
+ <meta name="generator" content="mkdocs-1.5.1, mkdocs-material-9.1.3">
diff --git a/docs/docs/python/dev/reference/model/container/resource_container/index.html b/docs/docs/python/dev/reference/model/container/resource_container/index.html
index c3f869a9..21d882c9 100644
--- a/docs/docs/python/dev/reference/model/container/resource_container/index.html
+++ b/docs/docs/python/dev/reference/model/container/resource_container/index.html
@@ -40,7 +40,7 @@
<link rel="next" href="../versions/">
<link rel="icon" href="https://streampipes.apache.org/img/favicon/favicon.png">
- <meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.1.3">
+ <meta name="generator" content="mkdocs-1.5.1, mkdocs-material-9.1.3">
diff --git a/docs/docs/python/dev/reference/model/container/versions/index.html b/docs/docs/python/dev/reference/model/container/versions/index.html
index 708a1114..cd85b80d 100644
--- a/docs/docs/python/dev/reference/model/container/versions/index.html
+++ b/docs/docs/python/dev/reference/model/container/versions/index.html
@@ -40,7 +40,7 @@
<link rel="next" href="../../resource/data_lake_measure/">
<link rel="icon" href="https://streampipes.apache.org/img/favicon/favicon.png">
- <meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.1.3">
+ <meta name="generator" content="mkdocs-1.5.1, mkdocs-material-9.1.3">
diff --git a/docs/docs/python/dev/reference/model/resource/data_lake_measure/index.html b/docs/docs/python/dev/reference/model/resource/data_lake_measure/index.html
index 952246ef..ebe223af 100644
--- a/docs/docs/python/dev/reference/model/resource/data_lake_measure/index.html
+++ b/docs/docs/python/dev/reference/model/resource/data_lake_measure/index.html
@@ -40,7 +40,7 @@
<link rel="next" href="../data_series/">
<link rel="icon" href="https://streampipes.apache.org/img/favicon/favicon.png">
- <meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.1.3">
+ <meta name="generator" content="mkdocs-1.5.1, mkdocs-material-9.1.3">
diff --git a/docs/docs/python/dev/reference/model/resource/data_series/index.html b/docs/docs/python/dev/reference/model/resource/data_series/index.html
index c00d817a..25ec843b 100644
--- a/docs/docs/python/dev/reference/model/resource/data_series/index.html
+++ b/docs/docs/python/dev/reference/model/resource/data_series/index.html
@@ -40,7 +40,7 @@
<link rel="next" href="../data_stream/">
<link rel="icon" href="https://streampipes.apache.org/img/favicon/favicon.png">
- <meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.1.3">
+ <meta name="generator" content="mkdocs-1.5.1, mkdocs-material-9.1.3">
diff --git a/docs/docs/python/dev/reference/model/resource/data_stream/index.html b/docs/docs/python/dev/reference/model/resource/data_stream/index.html
index 05c6cd08..17342d6b 100644
--- a/docs/docs/python/dev/reference/model/resource/data_stream/index.html
+++ b/docs/docs/python/dev/reference/model/resource/data_stream/index.html
@@ -40,7 +40,7 @@
<link rel="next" href="../exceptions/">
<link rel="icon" href="https://streampipes.apache.org/img/favicon/favicon.png">
- <meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.1.3">
+ <meta name="generator" content="mkdocs-1.5.1, mkdocs-material-9.1.3">
diff --git a/docs/docs/python/dev/reference/model/resource/exceptions/index.html b/docs/docs/python/dev/reference/model/resource/exceptions/index.html
index e84113dd..bb6cee85 100644
--- a/docs/docs/python/dev/reference/model/resource/exceptions/index.html
+++ b/docs/docs/python/dev/reference/model/resource/exceptions/index.html
@@ -40,7 +40,7 @@
<link rel="next" href="../function_definition/">
<link rel="icon" href="https://streampipes.apache.org/img/favicon/favicon.png">
- <meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.1.3">
+ <meta name="generator" content="mkdocs-1.5.1, mkdocs-material-9.1.3">
diff --git a/docs/docs/python/dev/reference/model/resource/function_definition/index.html b/docs/docs/python/dev/reference/model/resource/function_definition/index.html
index 662e4225..6013893c 100644
--- a/docs/docs/python/dev/reference/model/resource/function_definition/index.html
+++ b/docs/docs/python/dev/reference/model/resource/function_definition/index.html
@@ -40,7 +40,7 @@
<link rel="next" href="../query_result/">
<link rel="icon" href="https://streampipes.apache.org/img/favicon/favicon.png">
- <meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.1.3">
+ <meta name="generator" content="mkdocs-1.5.1, mkdocs-material-9.1.3">
diff --git a/docs/docs/python/dev/reference/model/resource/query_result/index.html b/docs/docs/python/dev/reference/model/resource/query_result/index.html
index f71e5280..c3a30c14 100644
--- a/docs/docs/python/dev/reference/model/resource/query_result/index.html
+++ b/docs/docs/python/dev/reference/model/resource/query_result/index.html
@@ -40,7 +40,7 @@
<link rel="next" href="../resource/">
<link rel="icon" href="https://streampipes.apache.org/img/favicon/favicon.png">
- <meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.1.3">
+ <meta name="generator" content="mkdocs-1.5.1, mkdocs-material-9.1.3">
diff --git a/docs/docs/python/dev/reference/model/resource/resource/index.html b/docs/docs/python/dev/reference/model/resource/resource/index.html
index 22e7910c..3af5bf43 100644
--- a/docs/docs/python/dev/reference/model/resource/resource/index.html
+++ b/docs/docs/python/dev/reference/model/resource/resource/index.html
@@ -40,7 +40,7 @@
<link rel="next" href="../version/">
<link rel="icon" href="https://streampipes.apache.org/img/favicon/favicon.png">
- <meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.1.3">
+ <meta name="generator" content="mkdocs-1.5.1, mkdocs-material-9.1.3">
diff --git a/docs/docs/python/dev/reference/model/resource/version/index.html b/docs/docs/python/dev/reference/model/resource/version/index.html
index 43e2c0a9..01a3a9bc 100644
--- a/docs/docs/python/dev/reference/model/resource/version/index.html
+++ b/docs/docs/python/dev/reference/model/resource/version/index.html
@@ -38,7 +38,7 @@
<link rel="icon" href="https://streampipes.apache.org/img/favicon/favicon.png">
- <meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.1.3">
+ <meta name="generator" content="mkdocs-1.5.1, mkdocs-material-9.1.3">
diff --git a/docs/docs/python/dev/scripts/gen_ref_pages/index.html b/docs/docs/python/dev/scripts/gen_ref_pages/index.html
index be7b0dc3..593fa799 100644
--- a/docs/docs/python/dev/scripts/gen_ref_pages/index.html
+++ b/docs/docs/python/dev/scripts/gen_ref_pages/index.html
@@ -36,7 +36,7 @@
<link rel="icon" href="https://streampipes.apache.org/img/favicon/favicon.png">
- <meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.1.3">
+ <meta name="generator" content="mkdocs-1.5.1, mkdocs-material-9.1.3">
@@ -1879,10 +1879,6 @@
}, 1000)
})
</script>
-
-
-
-
<style type="text/css">
pre { line-height: 125%; }
@@ -1934,10 +1930,6 @@ span.linenos.special { color: #000000; background-color: #ffffc0; padding-left:
.highlight-ipynb .ss { color: var(--jp-mirror-editor-string-color) } /* Literal.String.Symbol */
.highlight-ipynb .il { color: var(--jp-mirror-editor-number-color) } /* Literal.Number.Integer.Long */
</style>
-
-
-
-
<style type="text/css">
/*
This file is taken from the built JupyterLab theme.css
@@ -2713,12 +2705,10 @@ Licensed under the Apache License, Version 2.0.
*/}.jupyter-wrapper [data-jp-theme-scrollbars=true]{scrollbar-color:rgb(var(--jp-scrollbar-thumb-color)) var(--jp-scrollbar-background-color)}.jupyter-wrapper [data-jp-theme-scrollbars=true] .CodeMirror-hscrollbar,.jupyter-wrapper [data-jp-theme-scrollbars=true] .CodeMirror-vscrollbar{scrollbar-color:rgba(var(--jp-scrollbar-thumb-color), 0.5) rgba(0,0,0,0)}.jupyter-wrapper [data-jp-theme-scrollbars=true] ::-webkit-scrollbar,.jupyter-wrapper [data-jp-theme-scrollbars=true] ::-webkit-scrol [...]
/*# sourceMappingURL=mkdocs-jupyter.css.map*/</style>
-
-
<!-- Load mathjax -->
- <script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/latest.js?config=TeX-AMS_CHTML-full,Safe"> </script>
- <!-- MathJax configuration -->
- <script type="text/x-mathjax-config">
+<script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/latest.js?config=TeX-AMS_CHTML-full,Safe"> </script>
+<!-- MathJax configuration -->
+<script type="text/x-mathjax-config">
init_mathjax = function() {
if (window.MathJax) {
// MathJax loaded
@@ -2748,172 +2738,154 @@ Licensed under the Apache License, Version 2.0.
}
init_mathjax();
</script>
- <!-- End of mathjax configuration --><div class="jupyter-wrapper">
-<div id="cell-id=e20ea9e9" class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
+<!-- End of mathjax configuration --><div class="jupyter-wrapper">
+<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell" id="cell-id=53a2aeca">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
-</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput " data-mime-type="text/markdown">
+</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput" data-mime-type="text/markdown">
<p>Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
-(the "License"); you may not use this file except in compliance with
+(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at</p>
<p><a href="http://www.apache.org/licenses/LICENSE-2.0">http://www.apache.org/licenses/LICENSE-2.0</a></p>
<p>Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
+distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.</p>
-
</div>
</div>
</div>
-</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
-<div id="cell-id=0f214410" class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
+</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs">
+<div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs" id="cell-id=984f1f30">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
-<div class="jp-InputPrompt jp-InputArea-prompt">In [ ]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
-
-
- <div class="CodeMirror cm-s-jupyter">
- <div class="zeroclipboard-container">
- <clipboard-copy for="cell-1">
- <div>
- <span class="notice" hidden>Copied!</span>
- <svg aria-hidden="true" width="20" height="20" viewBox="0 0 16 16" version="1.1" data-view-component="true" class="clipboard-copy-icon">
- <path fill="currentColor" fill-rule="evenodd" d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z"></path>
- <path fill="currentColor" fill-rule="evenodd" d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z"></path>
- </svg>
- </div>
- </clipboard-copy>
- </div>
- <div class="highlight-ipynb hl-python "><pre><span></span><span class="kn">from</span> <span class="nn">pathlib</span> <span class="kn">import</span> <span class="n">Path</span>
+<div class="jp-InputPrompt jp-InputArea-prompt">In [ ]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
+<div class="CodeMirror cm-s-jupyter">
+<div class="zeroclipboard-container">
+<clipboard-copy for="cell-1">
+<div>
+<span class="notice" hidden="">Copied!</span>
+<svg aria-hidden="true" class="clipboard-copy-icon" data-view-component="true" height="20" version="1.1" viewbox="0 0 16 16" width="20">
+<path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+<path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+</svg>
+</div>
+</clipboard-copy>
+</div>
+<div class="highlight-ipynb hl-python"><pre><span></span><span class="kn">from</span> <span class="nn">pathlib</span> <span class="kn">import</span> <span class="n">Path</span>
</pre></div>
-<div id="cell-1" class="clipboard-copy-txt">from pathlib import Path</div>
-
- </div>
- </div>
-
+<div class="clipboard-copy-txt" id="cell-1">from pathlib import Path</div>
+</div>
+</div>
</div>
</div>
-
</div>
-</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
-<div id="cell-id=4684e77d" class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
+</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs">
+<div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs" id="cell-id=25c10667">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
-<div class="jp-InputPrompt jp-InputArea-prompt">In [ ]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
-
-
- <div class="CodeMirror cm-s-jupyter">
- <div class="zeroclipboard-container">
- <clipboard-copy for="cell-2">
- <div>
- <span class="notice" hidden>Copied!</span>
- <svg aria-hidden="true" width="20" height="20" viewBox="0 0 16 16" version="1.1" data-view-component="true" class="clipboard-copy-icon">
- <path fill="currentColor" fill-rule="evenodd" d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z"></path>
- <path fill="currentColor" fill-rule="evenodd" d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z"></path>
- </svg>
- </div>
- </clipboard-copy>
- </div>
- <div class="highlight-ipynb hl-python "><pre><span></span><span class="kn">import</span> <span class="nn">mkdocs_gen_files</span>
+<div class="jp-InputPrompt jp-InputArea-prompt">In [ ]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
+<div class="CodeMirror cm-s-jupyter">
+<div class="zeroclipboard-container">
+<clipboard-copy for="cell-2">
+<div>
+<span class="notice" hidden="">Copied!</span>
+<svg aria-hidden="true" class="clipboard-copy-icon" data-view-component="true" height="20" version="1.1" viewbox="0 0 16 16" width="20">
+<path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+<path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+</svg>
+</div>
+</clipboard-copy>
+</div>
+<div class="highlight-ipynb hl-python"><pre><span></span><span class="kn">import</span> <span class="nn">mkdocs_gen_files</span>
</pre></div>
-<div id="cell-2" class="clipboard-copy-txt">import mkdocs_gen_files</div>
-
- </div>
- </div>
-
+<div class="clipboard-copy-txt" id="cell-2">import mkdocs_gen_files</div>
+</div>
+</div>
</div>
</div>
-
</div>
-</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
-<div id="cell-id=069104d1" class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
+</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs">
+<div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs" id="cell-id=eb56db3e">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
-<div class="jp-InputPrompt jp-InputArea-prompt">In [ ]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
-
-
- <div class="CodeMirror cm-s-jupyter">
- <div class="zeroclipboard-container">
- <clipboard-copy for="cell-3">
- <div>
- <span class="notice" hidden>Copied!</span>
- <svg aria-hidden="true" width="20" height="20" viewBox="0 0 16 16" version="1.1" data-view-component="true" class="clipboard-copy-icon">
- <path fill="currentColor" fill-rule="evenodd" d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z"></path>
- <path fill="currentColor" fill-rule="evenodd" d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z"></path>
- </svg>
- </div>
- </clipboard-copy>
- </div>
- <div class="highlight-ipynb hl-python "><pre><span></span><span class="n">nav</span> <span class="o">=</span> <span class="n">mkdocs_gen_files</span><span class="o">.</span><span class="n">Nav</span><span class="p">()</span>
+<div class="jp-InputPrompt jp-InputArea-prompt">In [ ]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
+<div class="CodeMirror cm-s-jupyter">
+<div class="zeroclipboard-container">
+<clipboard-copy for="cell-3">
+<div>
+<span class="notice" hidden="">Copied!</span>
+<svg aria-hidden="true" class="clipboard-copy-icon" data-view-component="true" height="20" version="1.1" viewbox="0 0 16 16" width="20">
+<path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+<path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+</svg>
+</div>
+</clipboard-copy>
+</div>
+<div class="highlight-ipynb hl-python"><pre><span></span><span class="n">nav</span> <span class="o">=</span> <span class="n">mkdocs_gen_files</span><span class="o">.</span><span class="n">Nav</span><span class="p">()</span>
</pre></div>
-<div id="cell-3" class="clipboard-copy-txt">nav = mkdocs_gen_files.Nav()</div>
-
- </div>
- </div>
-
+<div class="clipboard-copy-txt" id="cell-3">nav = mkdocs_gen_files.Nav()</div>
+</div>
</div>
</div>
-
</div>
-</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
-<div id="cell-id=09ba2873" class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
+</div>
+</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs">
+<div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs" id="cell-id=50479e86">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
-<div class="jp-InputPrompt jp-InputArea-prompt">In [ ]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
-
-
- <div class="CodeMirror cm-s-jupyter">
- <div class="zeroclipboard-container">
- <clipboard-copy for="cell-4">
- <div>
- <span class="notice" hidden>Copied!</span>
- <svg aria-hidden="true" width="20" height="20" viewBox="0 0 16 16" version="1.1" data-view-component="true" class="clipboard-copy-icon">
- <path fill="currentColor" fill-rule="evenodd" d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z"></path>
- <path fill="currentColor" fill-rule="evenodd" d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z"></path>
- </svg>
- </div>
- </clipboard-copy>
- </div>
- <div class="highlight-ipynb hl-python "><pre><span></span><span class="k">for</span> <span class="n">path</span> <span class="ow">in</span> <span class="nb">sorted</span><span class="p">(</span><span class="n">Path</span><span class="p">(</span><span class="s2">"streampipes"</span><span class="p">)</span><span class="o">.</span><span class="n">rglob</span><span class="p">(</span><span class="s2">"*.py"</span><span class="p">)):</span>
- <span class="n">module_path</span> <span class="o">=</span> <span class="n">path</span><span class="o">.</span><span class="n">relative_to</span><span class="p">(</span><span class="s2">"streampipes"</span><span class="p">)</span><span class="o">.</span><span class="n">with_suffix</span><span class="p">(</span><span class="s2">""</span><span class="p">)</span>
- <span class="n">doc_path</span> <span class="o">=</span> <span class="n">path</span><span class="o">.</span><span class="n">relative_to</span><span class="p">(</span><span class="s2">"streampipes"</span><span class="p">)</span><span class="o">.</span><span class="n">with_suffix</span><span class="p">(</span><span class="s2">".md"</span><span class="p">)</span>
- <span class="n">full_doc_path</span> <span class="o">=</span> <span class="n">Path</span><span class="p">(</span><span class="s2">"reference"</span><span class="p">,</span> <span class="n">doc_path</span><span class="p">)</span>
+<div class="jp-InputPrompt jp-InputArea-prompt">In [ ]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
+<div class="CodeMirror cm-s-jupyter">
+<div class="zeroclipboard-container">
+<clipboard-copy for="cell-4">
+<div>
+<span class="notice" hidden="">Copied!</span>
+<svg aria-hidden="true" class="clipboard-copy-icon" data-view-component="true" height="20" version="1.1" viewbox="0 0 16 16" width="20">
+<path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+<path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+</svg>
+</div>
+</clipboard-copy>
+</div>
+<div class="highlight-ipynb hl-python"><pre><span></span><span class="k">for</span> <span class="n">path</span> <span class="ow">in</span> <span class="nb">sorted</span><span class="p">(</span><span class="n">Path</span><span class="p">(</span><span class="s2">"streampipes"</span><span class="p">)</span><span class="o">.</span><span class="n">rglob</span><span class="p">(</span><span class="s2">"*.py"</span><span class="p">)):</span>
+ <span class="n">module_path</span> <span class="o">=</span> <span class="n">path</span><span class="o">.</span><span class="n">relative_to</span><span class="p">(</span><span class="s2">"streampipes"</span><span class="p">)</span><span class="o">.</span><span class="n">with_suffix</span><span class="p">(</span><span class="s2">""</span><span class="p">)</span>
+ <span class="n">doc_path</span> <span class="o">=</span> <span class="n">path</span><span class="o">.</span><span class="n">relative_to</span><span class="p">(</span><span class="s2">"streampipes"</span><span class="p">)</span><span class="o">.</span><span class="n">with_suffix</span><span class="p">(</span><span class="s2">".md"</span><span class="p">)</span>
+ <span class="n">full_doc_path</span> <span class="o">=</span> <span class="n">Path</span><span class="p">(</span><span class="s2">"reference"</span><span class="p">,</span> <span class="n">doc_path</span><span class="p">)</span>
<span class="n">parts</span> <span class="o">=</span> <span class="nb">list</span><span class="p">(</span><span class="n">module_path</span><span class="o">.</span><span class="n">parts</span><span class="p">)</span>
- <span class="k">if</span> <span class="n">parts</span><span class="p">[</span><span class="o">-</span><span class="mi">1</span><span class="p">]</span> <span class="o">==</span> <span class="s2">"__init__"</span><span class="p">:</span>
+ <span class="k">if</span> <span class="n">parts</span><span class="p">[</span><span class="o">-</span><span class="mi">1</span><span class="p">]</span> <span class="o">==</span> <span class="s2">"__init__"</span><span class="p">:</span>
<span class="c1"># parts = parts[:-1]</span>
<span class="k">continue</span>
- <span class="k">elif</span> <span class="n">parts</span><span class="p">[</span><span class="o">-</span><span class="mi">1</span><span class="p">]</span> <span class="o">==</span> <span class="s2">"__version__"</span><span class="p">:</span>
+ <span class="k">elif</span> <span class="n">parts</span><span class="p">[</span><span class="o">-</span><span class="mi">1</span><span class="p">]</span> <span class="o">==</span> <span class="s2">"__version__"</span><span class="p">:</span>
<span class="k">continue</span>
- <span class="k">elif</span> <span class="n">parts</span><span class="p">[</span><span class="o">-</span><span class="mi">1</span><span class="p">]</span> <span class="o">==</span> <span class="s2">"__main__"</span><span class="p">:</span>
+ <span class="k">elif</span> <span class="n">parts</span><span class="p">[</span><span class="o">-</span><span class="mi">1</span><span class="p">]</span> <span class="o">==</span> <span class="s2">"__main__"</span><span class="p">:</span>
<span class="k">continue</span>
- <span class="k">elif</span> <span class="n">parts</span><span class="p">[</span><span class="o">-</span><span class="mi">1</span><span class="p">]</span> <span class="o">==</span> <span class="s2">" "</span><span class="p">:</span>
+ <span class="k">elif</span> <span class="n">parts</span><span class="p">[</span><span class="o">-</span><span class="mi">1</span><span class="p">]</span> <span class="o">==</span> <span class="s2">" "</span><span class="p">:</span>
<span class="k">continue</span>
<span class="n">nav</span><span class="p">[</span><span class="n">parts</span><span class="p">]</span> <span class="o">=</span> <span class="n">doc_path</span><span class="o">.</span><span class="n">as_posix</span><span class="p">()</span>
- <span class="k">with</span> <span class="n">mkdocs_gen_files</span><span class="o">.</span><span class="n">open</span><span class="p">(</span><span class="n">full_doc_path</span><span class="p">,</span> <span class="s2">"w+"</span><span class="p">)</span> <span class="k">as</span> <span class="n">fd</span><span class="p">:</span>
- <span class="n">identifier</span> <span class="o">=</span> <span class="s2">"."</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="n">parts</span><span class="p">)</span>
- <span class="nb">print</span><span class="p">(</span><span class="sa">f</span><span class="s2">"::: streampipes.</span><span class="si">{</span><span class="n">identifier</span><span class="si">}</span><span class="s2">"</span><span class="p">,</span> <span class="n">file</span><span class="o">=</span><span class="n">fd</span><span class="p">)</span>
+ <span class="k">with</span> <span class="n">mkdocs_gen_files</span><span class="o">.</span><span class="n">open</span><span class="p">(</span><span class="n">full_doc_path</span><span class="p">,</span> <span class="s2">"w+"</span><span class="p">)</span> <span class="k">as</span> <span class="n">fd</span><span class="p">:</span>
+ <span class="n">identifier</span> <span class="o">=</span> <span class="s2">"."</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="n">parts</span><span class="p">)</span>
+ <span class="nb">print</span><span class="p">(</span><span class="sa">f</span><span class="s2">"::: streampipes.</span><span class="si">{</span><span class="n">identifier</span><span class="si">}</span><span class="s2">"</span><span class="p">,</span> <span class="n">file</span><span class="o">=</span><span class="n">fd</span><span class="p">)</span>
<span class="n">mkdocs_gen_files</span><span class="o">.</span><span class="n">set_edit_path</span><span class="p">(</span><span class="n">full_doc_path</span><span class="p">,</span> <span class="n">path</span><span class="p">)</span>
</pre></div>
-<div id="cell-4" class="clipboard-copy-txt">for path in sorted(Path("streampipes").rglob("*.py")):
+<div class="clipboard-copy-txt" id="cell-4">for path in sorted(Path("streampipes").rglob("*.py")):
module_path = path.relative_to("streampipes").with_suffix("")
doc_path = path.relative_to("streampipes").with_suffix(".md")
full_doc_path = Path("reference", doc_path)
@@ -2937,24 +2909,20 @@ limitations under the License.</p>
print(f"::: streampipes.{identifier}", file=fd)
mkdocs_gen_files.set_edit_path(full_doc_path, path)</div>
-
- </div>
- </div>
-
</div>
</div>
-
</div>
</div>
-<div id="cell-id=a46101f3" class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
+</div>
+</div>
+<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell" id="cell-id=e33a7e80">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
-</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput " data-mime-type="text/markdown">
-<p>with mkdocs_gen_files.open("reference/SUMMARY.md", "w+") as nav_file:
+</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput" data-mime-type="text/markdown">
+<p>with mkdocs_gen_files.open("reference/SUMMARY.md", "w+") as nav_file:
nav_file.writelines(nav.build_literate_nav())</p>
-
</div>
</div>
</div>
@@ -2963,7 +2931,6 @@ nav_file.writelines(nav.build_literate_nav())</p>
-
diff --git a/docs/docs/python/dev/search/search_index.json b/docs/docs/python/dev/search/search_index.json
index 76f9ed20..a460eb96 100644
--- a/docs/docs/python/dev/search/search_index.json
+++ b/docs/docs/python/dev/search/search_index.json
@@ -1 +1 @@
-{"config":{"lang":["en"],"separator":"[\\s\\-]+","pipeline":["stopWordFilter"]},"docs":[{"location":"","title":"\ud83c\udfe1 Home","text":"StreamPipes is a self-service (Industrial) IoT toolbox to enable non-technical users to connect, analyze and explore IoT data streams. <p>Dependency issue with StreamPipes Python 0.92.0</p> <p>In StreamPipes Python <code>0.92.0</code> there is a problem with the required dependencies. Pydantic has recently released the new version <code>2.0</code> wit [...]
\ No newline at end of file
+{"config":{"lang":["en"],"separator":"[\\s\\-]+","pipeline":["stopWordFilter"]},"docs":[{"location":"","title":"\ud83c\udfe1 Home","text":"StreamPipes is a self-service (Industrial) IoT toolbox to enable non-technical users to connect, analyze and explore IoT data streams. <p>Dependency issue with StreamPipes Python 0.92.0</p> <p>In StreamPipes Python <code>0.92.0</code> there is a problem with the required dependencies. Pydantic has recently released the new version <code>2.0</code> wit [...]
\ No newline at end of file
diff --git a/docs/docs/python/dev/sitemap.xml b/docs/docs/python/dev/sitemap.xml
index 099a7b38..e0fca784 100644
--- a/docs/docs/python/dev/sitemap.xml
+++ b/docs/docs/python/dev/sitemap.xml
@@ -2,242 +2,242 @@
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>https://streampipes.apache.org/docs/docs/python/latest/latest/</loc>
- <lastmod>2023-07-15</lastmod>
+ <lastmod>2023-08-12</lastmod>
<changefreq>daily</changefreq>
</url>
<url>
<loc>https://streampipes.apache.org/docs/docs/python/latest/latest/getting-started/developing/</loc>
- <lastmod>2023-07-15</lastmod>
+ <lastmod>2023-08-12</lastmod>
<changefreq>daily</changefreq>
</url>
<url>
<loc>https://streampipes.apache.org/docs/docs/python/latest/latest/getting-started/first-steps/</loc>
- <lastmod>2023-07-15</lastmod>
+ <lastmod>2023-08-12</lastmod>
<changefreq>daily</changefreq>
</url>
<url>
<loc>https://streampipes.apache.org/docs/docs/python/latest/latest/getting-started/quickstart/</loc>
- <lastmod>2023-07-15</lastmod>
+ <lastmod>2023-08-12</lastmod>
<changefreq>daily</changefreq>
</url>
<url>
<loc>https://streampipes.apache.org/docs/docs/python/latest/latest/reference/client/client/</loc>
- <lastmod>2023-07-15</lastmod>
+ <lastmod>2023-08-12</lastmod>
<changefreq>daily</changefreq>
</url>
<url>
<loc>https://streampipes.apache.org/docs/docs/python/latest/latest/reference/client/config/</loc>
- <lastmod>2023-07-15</lastmod>
+ <lastmod>2023-08-12</lastmod>
<changefreq>daily</changefreq>
</url>
<url>
<loc>https://streampipes.apache.org/docs/docs/python/latest/latest/reference/client/credential_provider/</loc>
- <lastmod>2023-07-15</lastmod>
+ <lastmod>2023-08-12</lastmod>
<changefreq>daily</changefreq>
</url>
<url>
<loc>https://streampipes.apache.org/docs/docs/python/latest/latest/reference/endpoint/endpoint/</loc>
- <lastmod>2023-07-15</lastmod>
+ <lastmod>2023-08-12</lastmod>
<changefreq>daily</changefreq>
</url>
<url>
<loc>https://streampipes.apache.org/docs/docs/python/latest/latest/reference/endpoint/exceptions/</loc>
- <lastmod>2023-07-15</lastmod>
+ <lastmod>2023-08-12</lastmod>
<changefreq>daily</changefreq>
</url>
<url>
<loc>https://streampipes.apache.org/docs/docs/python/latest/latest/reference/endpoint/api/data_lake_measure/</loc>
- <lastmod>2023-07-15</lastmod>
+ <lastmod>2023-08-12</lastmod>
<changefreq>daily</changefreq>
</url>
<url>
<loc>https://streampipes.apache.org/docs/docs/python/latest/latest/reference/endpoint/api/data_stream/</loc>
- <lastmod>2023-07-15</lastmod>
+ <lastmod>2023-08-12</lastmod>
<changefreq>daily</changefreq>
</url>
<url>
<loc>https://streampipes.apache.org/docs/docs/python/latest/latest/reference/endpoint/api/version/</loc>
- <lastmod>2023-07-15</lastmod>
+ <lastmod>2023-08-12</lastmod>
<changefreq>daily</changefreq>
</url>
<url>
<loc>https://streampipes.apache.org/docs/docs/python/latest/latest/reference/function_zoo/river_function/</loc>
- <lastmod>2023-07-15</lastmod>
+ <lastmod>2023-08-12</lastmod>
<changefreq>daily</changefreq>
</url>
<url>
<loc>https://streampipes.apache.org/docs/docs/python/latest/latest/reference/functions/function_handler/</loc>
- <lastmod>2023-07-15</lastmod>
+ <lastmod>2023-08-12</lastmod>
<changefreq>daily</changefreq>
</url>
<url>
<loc>https://streampipes.apache.org/docs/docs/python/latest/latest/reference/functions/registration/</loc>
- <lastmod>2023-07-15</lastmod>
+ <lastmod>2023-08-12</lastmod>
<changefreq>daily</changefreq>
</url>
<url>
<loc>https://streampipes.apache.org/docs/docs/python/latest/latest/reference/functions/streampipes_function/</loc>
- <lastmod>2023-07-15</lastmod>
+ <lastmod>2023-08-12</lastmod>
<changefreq>daily</changefreq>
</url>
<url>
<loc>https://streampipes.apache.org/docs/docs/python/latest/latest/reference/functions/broker/broker/</loc>
- <lastmod>2023-07-15</lastmod>
+ <lastmod>2023-08-12</lastmod>
<changefreq>daily</changefreq>
</url>
<url>
<loc>https://streampipes.apache.org/docs/docs/python/latest/latest/reference/functions/broker/broker_handler/</loc>
- <lastmod>2023-07-15</lastmod>
+ <lastmod>2023-08-12</lastmod>
<changefreq>daily</changefreq>
</url>
<url>
<loc>https://streampipes.apache.org/docs/docs/python/latest/latest/reference/functions/broker/consumer/</loc>
- <lastmod>2023-07-15</lastmod>
+ <lastmod>2023-08-12</lastmod>
<changefreq>daily</changefreq>
</url>
<url>
<loc>https://streampipes.apache.org/docs/docs/python/latest/latest/reference/functions/broker/output_collector/</loc>
- <lastmod>2023-07-15</lastmod>
+ <lastmod>2023-08-12</lastmod>
<changefreq>daily</changefreq>
</url>
<url>
<loc>https://streampipes.apache.org/docs/docs/python/latest/latest/reference/functions/broker/publisher/</loc>
- <lastmod>2023-07-15</lastmod>
+ <lastmod>2023-08-12</lastmod>
<changefreq>daily</changefreq>
</url>
<url>
<loc>https://streampipes.apache.org/docs/docs/python/latest/latest/reference/functions/broker/kafka/kafka_consumer/</loc>
- <lastmod>2023-07-15</lastmod>
+ <lastmod>2023-08-12</lastmod>
<changefreq>daily</changefreq>
</url>
<url>
<loc>https://streampipes.apache.org/docs/docs/python/latest/latest/reference/functions/broker/kafka/kafka_message_fetcher/</loc>
- <lastmod>2023-07-15</lastmod>
+ <lastmod>2023-08-12</lastmod>
<changefreq>daily</changefreq>
</url>
<url>
<loc>https://streampipes.apache.org/docs/docs/python/latest/latest/reference/functions/broker/kafka/kafka_publisher/</loc>
- <lastmod>2023-07-15</lastmod>
+ <lastmod>2023-08-12</lastmod>
<changefreq>daily</changefreq>
</url>
<url>
<loc>https://streampipes.apache.org/docs/docs/python/latest/latest/reference/functions/broker/nats/nats_consumer/</loc>
- <lastmod>2023-07-15</lastmod>
+ <lastmod>2023-08-12</lastmod>
<changefreq>daily</changefreq>
</url>
<url>
<loc>https://streampipes.apache.org/docs/docs/python/latest/latest/reference/functions/broker/nats/nats_publisher/</loc>
- <lastmod>2023-07-15</lastmod>
+ <lastmod>2023-08-12</lastmod>
<changefreq>daily</changefreq>
</url>
<url>
<loc>https://streampipes.apache.org/docs/docs/python/latest/latest/reference/functions/utils/async_iter_handler/</loc>
- <lastmod>2023-07-15</lastmod>
+ <lastmod>2023-08-12</lastmod>
<changefreq>daily</changefreq>
</url>
<url>
<loc>https://streampipes.apache.org/docs/docs/python/latest/latest/reference/functions/utils/data_stream_context/</loc>
- <lastmod>2023-07-15</lastmod>
+ <lastmod>2023-08-12</lastmod>
<changefreq>daily</changefreq>
</url>
<url>
<loc>https://streampipes.apache.org/docs/docs/python/latest/latest/reference/functions/utils/data_stream_generator/</loc>
- <lastmod>2023-07-15</lastmod>
+ <lastmod>2023-08-12</lastmod>
<changefreq>daily</changefreq>
</url>
<url>
<loc>https://streampipes.apache.org/docs/docs/python/latest/latest/reference/functions/utils/function_context/</loc>
- <lastmod>2023-07-15</lastmod>
+ <lastmod>2023-08-12</lastmod>
<changefreq>daily</changefreq>
</url>
<url>
<loc>https://streampipes.apache.org/docs/docs/python/latest/latest/reference/model/common/</loc>
- <lastmod>2023-07-15</lastmod>
+ <lastmod>2023-08-12</lastmod>
<changefreq>daily</changefreq>
</url>
<url>
<loc>https://streampipes.apache.org/docs/docs/python/latest/latest/reference/model/container/data_lake_measures/</loc>
- <lastmod>2023-07-15</lastmod>
+ <lastmod>2023-08-12</lastmod>
<changefreq>daily</changefreq>
</url>
<url>
<loc>https://streampipes.apache.org/docs/docs/python/latest/latest/reference/model/container/data_streams/</loc>
- <lastmod>2023-07-15</lastmod>
+ <lastmod>2023-08-12</lastmod>
<changefreq>daily</changefreq>
</url>
<url>
<loc>https://streampipes.apache.org/docs/docs/python/latest/latest/reference/model/container/resource_container/</loc>
- <lastmod>2023-07-15</lastmod>
+ <lastmod>2023-08-12</lastmod>
<changefreq>daily</changefreq>
</url>
<url>
<loc>https://streampipes.apache.org/docs/docs/python/latest/latest/reference/model/container/versions/</loc>
- <lastmod>2023-07-15</lastmod>
+ <lastmod>2023-08-12</lastmod>
<changefreq>daily</changefreq>
</url>
<url>
<loc>https://streampipes.apache.org/docs/docs/python/latest/latest/reference/model/resource/data_lake_measure/</loc>
- <lastmod>2023-07-15</lastmod>
+ <lastmod>2023-08-12</lastmod>
<changefreq>daily</changefreq>
</url>
<url>
<loc>https://streampipes.apache.org/docs/docs/python/latest/latest/reference/model/resource/data_series/</loc>
- <lastmod>2023-07-15</lastmod>
+ <lastmod>2023-08-12</lastmod>
<changefreq>daily</changefreq>
</url>
<url>
<loc>https://streampipes.apache.org/docs/docs/python/latest/latest/reference/model/resource/data_stream/</loc>
- <lastmod>2023-07-15</lastmod>
+ <lastmod>2023-08-12</lastmod>
<changefreq>daily</changefreq>
</url>
<url>
<loc>https://streampipes.apache.org/docs/docs/python/latest/latest/reference/model/resource/exceptions/</loc>
- <lastmod>2023-07-15</lastmod>
+ <lastmod>2023-08-12</lastmod>
<changefreq>daily</changefreq>
</url>
<url>
<loc>https://streampipes.apache.org/docs/docs/python/latest/latest/reference/model/resource/function_definition/</loc>
- <lastmod>2023-07-15</lastmod>
+ <lastmod>2023-08-12</lastmod>
<changefreq>daily</changefreq>
</url>
<url>
<loc>https://streampipes.apache.org/docs/docs/python/latest/latest/reference/model/resource/query_result/</loc>
- <lastmod>2023-07-15</lastmod>
+ <lastmod>2023-08-12</lastmod>
<changefreq>daily</changefreq>
</url>
<url>
<loc>https://streampipes.apache.org/docs/docs/python/latest/latest/reference/model/resource/resource/</loc>
- <lastmod>2023-07-15</lastmod>
+ <lastmod>2023-08-12</lastmod>
<changefreq>daily</changefreq>
</url>
<url>
<loc>https://streampipes.apache.org/docs/docs/python/latest/latest/reference/model/resource/version/</loc>
- <lastmod>2023-07-15</lastmod>
+ <lastmod>2023-08-12</lastmod>
<changefreq>daily</changefreq>
</url>
<url>
<loc>https://streampipes.apache.org/docs/docs/python/latest/latest/scripts/gen_ref_pages/</loc>
- <lastmod>2023-07-15</lastmod>
+ <lastmod>2023-08-12</lastmod>
<changefreq>daily</changefreq>
</url>
<url>
<loc>https://streampipes.apache.org/docs/docs/python/latest/latest/tutorials/1-introduction-to-streampipes-python-client/</loc>
- <lastmod>2023-07-15</lastmod>
+ <lastmod>2023-08-12</lastmod>
<changefreq>daily</changefreq>
</url>
<url>
<loc>https://streampipes.apache.org/docs/docs/python/latest/latest/tutorials/2-extracting-data-from-the-streampipes-data-lake/</loc>
- <lastmod>2023-07-15</lastmod>
+ <lastmod>2023-08-12</lastmod>
<changefreq>daily</changefreq>
</url>
<url>
<loc>https://streampipes.apache.org/docs/docs/python/latest/latest/tutorials/3-getting-live-data-from-the-streampipes-data-stream/</loc>
- <lastmod>2023-07-15</lastmod>
+ <lastmod>2023-08-12</lastmod>
<changefreq>daily</changefreq>
</url>
<url>
<loc>https://streampipes.apache.org/docs/docs/python/latest/latest/tutorials/4-using-online-machine-learning-on-a-streampipes-data-stream/</loc>
- <lastmod>2023-07-15</lastmod>
+ <lastmod>2023-08-12</lastmod>
<changefreq>daily</changefreq>
</url>
</urlset>
diff --git a/docs/docs/python/dev/sitemap.xml.gz b/docs/docs/python/dev/sitemap.xml.gz
index 80140ba3..944738ec 100644
Binary files a/docs/docs/python/dev/sitemap.xml.gz and b/docs/docs/python/dev/sitemap.xml.gz differ
diff --git a/docs/docs/python/dev/tutorials/1-introduction-to-streampipes-python-client/index.html b/docs/docs/python/dev/tutorials/1-introduction-to-streampipes-python-client/index.html
index b42b8291..dfc20bf2 100644
--- a/docs/docs/python/dev/tutorials/1-introduction-to-streampipes-python-client/index.html
+++ b/docs/docs/python/dev/tutorials/1-introduction-to-streampipes-python-client/index.html
@@ -40,7 +40,7 @@
<link rel="next" href="../2-extracting-data-from-the-streampipes-data-lake/">
<link rel="icon" href="https://streampipes.apache.org/img/favicon/favicon.png">
- <meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.1.3">
+ <meta name="generator" content="mkdocs-1.5.1, mkdocs-material-9.1.3">
@@ -1990,10 +1990,6 @@
}, 1000)
})
</script>
-
-
-
-
<style type="text/css">
pre { line-height: 125%; }
@@ -2045,10 +2041,6 @@ span.linenos.special { color: #000000; background-color: #ffffc0; padding-left:
.highlight-ipynb .ss { color: var(--jp-mirror-editor-string-color) } /* Literal.String.Symbol */
.highlight-ipynb .il { color: var(--jp-mirror-editor-number-color) } /* Literal.Number.Integer.Long */
</style>
-
-
-
-
<style type="text/css">
/*
This file is taken from the built JupyterLab theme.css
@@ -2824,12 +2816,10 @@ Licensed under the Apache License, Version 2.0.
*/}.jupyter-wrapper [data-jp-theme-scrollbars=true]{scrollbar-color:rgb(var(--jp-scrollbar-thumb-color)) var(--jp-scrollbar-background-color)}.jupyter-wrapper [data-jp-theme-scrollbars=true] .CodeMirror-hscrollbar,.jupyter-wrapper [data-jp-theme-scrollbars=true] .CodeMirror-vscrollbar{scrollbar-color:rgba(var(--jp-scrollbar-thumb-color), 0.5) rgba(0,0,0,0)}.jupyter-wrapper [data-jp-theme-scrollbars=true] ::-webkit-scrollbar,.jupyter-wrapper [data-jp-theme-scrollbars=true] ::-webkit-scrol [...]
/*# sourceMappingURL=mkdocs-jupyter.css.map*/</style>
-
-
<!-- Load mathjax -->
- <script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/latest.js?config=TeX-AMS_CHTML-full,Safe"> </script>
- <!-- MathJax configuration -->
- <script type="text/x-mathjax-config">
+<script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/latest.js?config=TeX-AMS_CHTML-full,Safe"> </script>
+<!-- MathJax configuration -->
+<script type="text/x-mathjax-config">
init_mathjax = function() {
if (window.MathJax) {
// MathJax loaded
@@ -2859,220 +2849,195 @@ Licensed under the Apache License, Version 2.0.
}
init_mathjax();
</script>
- <!-- End of mathjax configuration --><div class="jupyter-wrapper">
-<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
+<!-- End of mathjax configuration --><div class="jupyter-wrapper">
+<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
-</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput " data-mime-type="text/markdown">
-<h1 id="Introduction-to-StreamPipes-Python">Introduction to StreamPipes Python<a class="anchor-link" href="#Introduction-to-StreamPipes-Python">¶</a></h1><h3 id="Why-there-is-an-extra-Python-library-for-StreamPipes?">Why there is an extra Python library for StreamPipes?<a class="anchor-link" href="#Why-there-is-an-extra-Python-library-for-StreamPipes?">¶</a></h3><p><a href="https://streampipes.apache.org/">Apache StreamPipes</a> aims to enable non-technical users to connect and [...]
+</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput" data-mime-type="text/markdown">
+<h1 id="Introduction-to-StreamPipes-Python">Introduction to StreamPipes Python<a class="anchor-link" href="#Introduction-to-StreamPipes-Python">¶</a></h1><h3 id="Why-there-is-an-extra-Python-library-for-StreamPipes?">Why there is an extra Python library for StreamPipes?<a class="anchor-link" href="#Why-there-is-an-extra-Python-library-for-StreamPipes?">¶</a></h3><p><a href="https://streampipes.apache.org/">Apache StreamPipes</a> aims to enable non-technical users to connect and analyze I [...]
To this end, it provides an easy-to-use and convenient user interface that allows one to connect to an IoT data source and create some visual
-graphs within a few minutes. <br>
+graphs within a few minutes. <br/>
Although this is the main use case of Apache StreamPipes, it can also provide great value for people who are eager to work on data analysis or data science with IoT data, but don't we do get in touch with all the hassle associated with extracting data from devices in a suitable format.
In this scenario, StreamPipes helps you connect to your data source and extract the data for you.
You then can make the data available outside StreamPipes by writing it into an external source, such as a database, Kafka, etc.
While this requires another component, you can also extract your data directly from StreamPipes programmatically using the StreamPipes API.
For convenience, we also provide you with a StreamPipes client both available for Java and Python.
Specifically with StreamPipes Python, we want to address the amazing data analytics and data science community in Python and benefit from the great universe of Python libraries out there.</p>
-<br>
-
-<h3 id="How-to-install-StreamPipes-Python?">How to install StreamPipes Python?<a class="anchor-link" href="#How-to-install-StreamPipes-Python?">¶</a></h3><p>Simply use the following <code>pip</code> command:</p>
-
+<br/>
+<h3 id="How-to-install-StreamPipes-Python?">How to install StreamPipes Python?<a class="anchor-link" href="#How-to-install-StreamPipes-Python?">¶</a></h3><p>Simply use the following <code>pip</code> command:</p>
</div>
</div>
</div>
-</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
-<div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
+</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs">
+<div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
-<div class="jp-InputPrompt jp-InputArea-prompt">In [ ]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
-
-
- <div class="CodeMirror cm-s-jupyter">
- <div class="zeroclipboard-container">
- <clipboard-copy for="cell-1">
- <div>
- <span class="notice" hidden>Copied!</span>
- <svg aria-hidden="true" width="20" height="20" viewBox="0 0 16 16" version="1.1" data-view-component="true" class="clipboard-copy-icon">
- <path fill="currentColor" fill-rule="evenodd" d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z"></path>
- <path fill="currentColor" fill-rule="evenodd" d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z"></path>
- </svg>
- </div>
- </clipboard-copy>
- </div>
- <div class="highlight-ipynb hl-python "><pre><span></span><span class="o">%</span><span class="n">pip</span> <span class="n">install</span> <span class="n">streampipes</span>
+<div class="jp-InputPrompt jp-InputArea-prompt">In [ ]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
+<div class="CodeMirror cm-s-jupyter">
+<div class="zeroclipboard-container">
+<clipboard-copy for="cell-1">
+<div>
+<span class="notice" hidden="">Copied!</span>
+<svg aria-hidden="true" class="clipboard-copy-icon" data-view-component="true" height="20" version="1.1" viewbox="0 0 16 16" width="20">
+<path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+<path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+</svg>
+</div>
+</clipboard-copy>
+</div>
+<div class="highlight-ipynb hl-python"><pre><span></span><span class="o">%</span><span class="n">pip</span> <span class="n">install</span> <span class="n">streampipes</span>
</pre></div>
-<div id="cell-1" class="clipboard-copy-txt">%pip install streampipes
+<div class="clipboard-copy-txt" id="cell-1">%pip install streampipes
+</div>
</div>
-
- </div>
- </div>
-
</div>
</div>
-
</div>
</div>
-<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
+</div>
+<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
-</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput " data-mime-type="text/markdown">
+</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput" data-mime-type="text/markdown">
<p>If you want to have the current development state you can also execute:</p>
-
</div>
</div>
</div>
-</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
-<div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
+</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs">
+<div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
-<div class="jp-InputPrompt jp-InputArea-prompt">In [ ]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
-
-
- <div class="CodeMirror cm-s-jupyter">
- <div class="zeroclipboard-container">
- <clipboard-copy for="cell-2">
- <div>
- <span class="notice" hidden>Copied!</span>
- <svg aria-hidden="true" width="20" height="20" viewBox="0 0 16 16" version="1.1" data-view-component="true" class="clipboard-copy-icon">
- <path fill="currentColor" fill-rule="evenodd" d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z"></path>
- <path fill="currentColor" fill-rule="evenodd" d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z"></path>
- </svg>
- </div>
- </clipboard-copy>
- </div>
- <div class="highlight-ipynb hl-python "><pre><span></span><span class="o">%</span><span class="n">pip</span> <span class="n">install</span> <span class="n">git</span><span class="o">+</span><span class="n">https</span><span class="p">:</span><span class="o">//</span><span class="n">github</span><span class="o">.</span><span class="n">com</span><span class="o">/</span><span class="n">apache</span><span class="o">/</span><span class="n">streampipes</span><span class="o">.</span [...]
+<div class="jp-InputPrompt jp-InputArea-prompt">In [ ]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
+<div class="CodeMirror cm-s-jupyter">
+<div class="zeroclipboard-container">
+<clipboard-copy for="cell-2">
+<div>
+<span class="notice" hidden="">Copied!</span>
+<svg aria-hidden="true" class="clipboard-copy-icon" data-view-component="true" height="20" version="1.1" viewbox="0 0 16 16" width="20">
+<path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+<path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+</svg>
+</div>
+</clipboard-copy>
+</div>
+<div class="highlight-ipynb hl-python"><pre><span></span><span class="o">%</span><span class="n">pip</span> <span class="n">install</span> <span class="n">git</span><span class="o">+</span><span class="n">https</span><span class="p">:</span><span class="o">//</span><span class="n">github</span><span class="o">.</span><span class="n">com</span><span class="o">/</span><span class="n">apache</span><span class="o">/</span><span class="n">streampipes</span><span class="o">.</span><span class= [...]
</pre></div>
-<div id="cell-2" class="clipboard-copy-txt">
+<div class="clipboard-copy-txt" id="cell-2">
%pip install git+https://github.com/apache/streampipes.git#subdirectory=streampipes-client-python</div>
-
- </div>
- </div>
-
</div>
</div>
-
</div>
</div>
-<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
+</div>
+</div>
+<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
-</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput " data-mime-type="text/markdown">
+</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput" data-mime-type="text/markdown">
<p>The corresponding documentation can be found <a href="https://streampipes.apache.org/docs/docs/python/dev/">here</a>.
-<br></p>
-
+<br/></p>
</div>
</div>
</div>
</div>
-<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
+<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
-</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput " data-mime-type="text/markdown">
-<h3 id="How-to-prepare-the-tutorials">How to prepare the tutorials<a class="anchor-link" href="#How-to-prepare-the-tutorials">¶</a></h3><p>In case you want to reproduce the first two tutorials exactly on your end, you need to create a simple pipeline in StreamPipes like demonstrated below.</p>
-<p><img src="https://raw.githubusercontent.com/apache/streampipes/dev/streampipes-client-python/docs/img/tutorial-preparation.gif" alt="tutorial-preparation" /></p>
-<br>
-
-
+</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput" data-mime-type="text/markdown">
+<h3 id="How-to-prepare-the-tutorials">How to prepare the tutorials<a class="anchor-link" href="#How-to-prepare-the-tutorials">¶</a></h3><p>In case you want to reproduce the first two tutorials exactly on your end, you need to create a simple pipeline in StreamPipes like demonstrated below.</p>
+<p><img alt="tutorial-preparation" src="https://raw.githubusercontent.com/apache/streampipes/dev/streampipes-client-python/docs/img/tutorial-preparation.gif"/></p>
+<br/>
</div>
</div>
</div>
</div>
-<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
+<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
-</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput " data-mime-type="text/markdown">
-<h3 id="How-to-configure-the-Python-client">How to configure the Python client<a class="anchor-link" href="#How-to-configure-the-Python-client">¶</a></h3><p>In order to access the resources available in StreamPipes, one must be able to authenticate against the backend.
+</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput" data-mime-type="text/markdown">
+<h3 id="How-to-configure-the-Python-client">How to configure the Python client<a class="anchor-link" href="#How-to-configure-the-Python-client">¶</a></h3><p>In order to access the resources available in StreamPipes, one must be able to authenticate against the backend.
For this purpose, the client sofar only supports the authentication via an API token that can be generated via the StreamPipes UI, as you see below.</p>
-<p><img src="https://raw.githubusercontent.com/apache/streampipes/dev/streampipes-client-python/docs/img/how-to-get-api-key.gif" alt="how-to-get-api-key" /></p>
-<br>
-
+<p><img alt="how-to-get-api-key" src="https://raw.githubusercontent.com/apache/streampipes/dev/streampipes-client-python/docs/img/how-to-get-api-key.gif"/></p>
+<br/>
<p>Having generated the API token, one can directly start initializing a client instance as follows:</p>
-
</div>
</div>
</div>
-</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
-<div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
+</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs">
+<div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
-<div class="jp-InputPrompt jp-InputArea-prompt">In [ ]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
-
-
- <div class="CodeMirror cm-s-jupyter">
- <div class="zeroclipboard-container">
- <clipboard-copy for="cell-3">
- <div>
- <span class="notice" hidden>Copied!</span>
- <svg aria-hidden="true" width="20" height="20" viewBox="0 0 16 16" version="1.1" data-view-component="true" class="clipboard-copy-icon">
- <path fill="currentColor" fill-rule="evenodd" d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z"></path>
- <path fill="currentColor" fill-rule="evenodd" d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z"></path>
- </svg>
- </div>
- </clipboard-copy>
- </div>
- <div class="highlight-ipynb hl-python "><pre><span></span><span class="kn">from</span> <span class="nn">streampipes.client</span> <span class="kn">import</span> <span class="n">StreamPipesClient</span>
+<div class="jp-InputPrompt jp-InputArea-prompt">In [ ]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
+<div class="CodeMirror cm-s-jupyter">
+<div class="zeroclipboard-container">
+<clipboard-copy for="cell-3">
+<div>
+<span class="notice" hidden="">Copied!</span>
+<svg aria-hidden="true" class="clipboard-copy-icon" data-view-component="true" height="20" version="1.1" viewbox="0 0 16 16" width="20">
+<path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+<path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+</svg>
+</div>
+</clipboard-copy>
+</div>
+<div class="highlight-ipynb hl-python"><pre><span></span><span class="kn">from</span> <span class="nn">streampipes.client</span> <span class="kn">import</span> <span class="n">StreamPipesClient</span>
<span class="kn">from</span> <span class="nn">streampipes.client.config</span> <span class="kn">import</span> <span class="n">StreamPipesClientConfig</span>
<span class="kn">from</span> <span class="nn">streampipes.client.credential_provider</span> <span class="kn">import</span> <span class="n">StreamPipesApiKeyCredentials</span>
</pre></div>
-<div id="cell-3" class="clipboard-copy-txt">from streampipes.client import StreamPipesClient
+<div class="clipboard-copy-txt" id="cell-3">from streampipes.client import StreamPipesClient
from streampipes.client.config import StreamPipesClientConfig
from streampipes.client.credential_provider import StreamPipesApiKeyCredentials</div>
-
- </div>
- </div>
-
</div>
</div>
-
</div>
-</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
-<div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
+</div>
+</div>
+</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs">
+<div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
-<div class="jp-InputPrompt jp-InputArea-prompt">In [ ]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
-
-
- <div class="CodeMirror cm-s-jupyter">
- <div class="zeroclipboard-container">
- <clipboard-copy for="cell-4">
- <div>
- <span class="notice" hidden>Copied!</span>
- <svg aria-hidden="true" width="20" height="20" viewBox="0 0 16 16" version="1.1" data-view-component="true" class="clipboard-copy-icon">
- <path fill="currentColor" fill-rule="evenodd" d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z"></path>
- <path fill="currentColor" fill-rule="evenodd" d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z"></path>
- </svg>
- </div>
- </clipboard-copy>
- </div>
- <div class="highlight-ipynb hl-python "><pre><span></span><span class="n">config</span> <span class="o">=</span> <span class="n">StreamPipesClientConfig</span><span class="p">(</span>
+<div class="jp-InputPrompt jp-InputArea-prompt">In [ ]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
+<div class="CodeMirror cm-s-jupyter">
+<div class="zeroclipboard-container">
+<clipboard-copy for="cell-4">
+<div>
+<span class="notice" hidden="">Copied!</span>
+<svg aria-hidden="true" class="clipboard-copy-icon" data-view-component="true" height="20" version="1.1" viewbox="0 0 16 16" width="20">
+<path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+<path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+</svg>
+</div>
+</clipboard-copy>
+</div>
+<div class="highlight-ipynb hl-python"><pre><span></span><span class="n">config</span> <span class="o">=</span> <span class="n">StreamPipesClientConfig</span><span class="p">(</span>
<span class="n">credential_provider</span><span class="o">=</span><span class="n">StreamPipesApiKeyCredentials</span><span class="p">(</span>
- <span class="n">username</span><span class="o">=</span><span class="s2">"test@streampipes.apache.org"</span><span class="p">,</span>
- <span class="n">api_key</span><span class="o">=</span><span class="s2">"API-KEY"</span><span class="p">,</span>
+ <span class="n">username</span><span class="o">=</span><span class="s2">"test@streampipes.apache.org"</span><span class="p">,</span>
+ <span class="n">api_key</span><span class="o">=</span><span class="s2">"API-KEY"</span><span class="p">,</span>
<span class="p">),</span>
- <span class="n">host_address</span><span class="o">=</span><span class="s2">"localhost"</span><span class="p">,</span>
+ <span class="n">host_address</span><span class="o">=</span><span class="s2">"localhost"</span><span class="p">,</span>
<span class="n">https_disabled</span><span class="o">=</span><span class="kc">True</span><span class="p">,</span>
<span class="n">port</span><span class="o">=</span><span class="mi">80</span>
<span class="p">)</span>
</pre></div>
-<div id="cell-4" class="clipboard-copy-txt">config = StreamPipesClientConfig(
+<div class="clipboard-copy-txt" id="cell-4">config = StreamPipesClientConfig(
credential_provider=StreamPipesApiKeyCredentials(
username="test@streampipes.apache.org",
api_key="API-KEY",
@@ -3081,206 +3046,174 @@ from streampipes.client.credential_provider import StreamPipesApiKeyCredentials<
https_disabled=True,
port=80
)</div>
-
- </div>
- </div>
-
</div>
</div>
-
</div>
</div>
-<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
+</div>
+</div>
+<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
-</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput " data-mime-type="text/markdown">
+</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput" data-mime-type="text/markdown">
<p>Please be aware that connecting to StreamPipes via a <code>https</code> connection is currently not supported by the Python client.</p>
<p>Providing secrets like the <code>api_key</code> as plaintext in the source code is an anti-pattern.
This is why the StreamPipes client also supports passing the required secrets as environment variables.
To do so, you must initialize the credential provider like the following:</p>
-
</div>
</div>
</div>
-</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
-<div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
+</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs">
+<div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
-<div class="jp-InputPrompt jp-InputArea-prompt">In [ ]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
-
-
- <div class="CodeMirror cm-s-jupyter">
- <div class="zeroclipboard-container">
- <clipboard-copy for="cell-5">
- <div>
- <span class="notice" hidden>Copied!</span>
- <svg aria-hidden="true" width="20" height="20" viewBox="0 0 16 16" version="1.1" data-view-component="true" class="clipboard-copy-icon">
- <path fill="currentColor" fill-rule="evenodd" d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z"></path>
- <path fill="currentColor" fill-rule="evenodd" d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z"></path>
- </svg>
- </div>
- </clipboard-copy>
- </div>
- <div class="highlight-ipynb hl-python "><pre><span></span><span class="n">StreamPipesApiKeyCredentials</span><span class="p">()</span>
+<div class="jp-InputPrompt jp-InputArea-prompt">In [ ]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
+<div class="CodeMirror cm-s-jupyter">
+<div class="zeroclipboard-container">
+<clipboard-copy for="cell-5">
+<div>
+<span class="notice" hidden="">Copied!</span>
+<svg aria-hidden="true" class="clipboard-copy-icon" data-view-component="true" height="20" version="1.1" viewbox="0 0 16 16" width="20">
+<path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+<path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+</svg>
+</div>
+</clipboard-copy>
+</div>
+<div class="highlight-ipynb hl-python"><pre><span></span><span class="n">StreamPipesApiKeyCredentials</span><span class="p">()</span>
</pre></div>
-<div id="cell-5" class="clipboard-copy-txt">StreamPipesApiKeyCredentials()</div>
-
- </div>
- </div>
-
+<div class="clipboard-copy-txt" id="cell-5">StreamPipesApiKeyCredentials()</div>
+</div>
+</div>
</div>
</div>
-
</div>
</div>
-<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
+<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
-</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput " data-mime-type="text/markdown">
+</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput" data-mime-type="text/markdown">
<p>To ensure that the above code works, you must set the environment variables as expected.
This can be done like following:</p>
-
</div>
</div>
</div>
-</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
-<div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
+</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs">
+<div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
-<div class="jp-InputPrompt jp-InputArea-prompt">In [ ]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
-
-
- <div class="CodeMirror cm-s-jupyter">
- <div class="zeroclipboard-container">
- <clipboard-copy for="cell-6">
- <div>
- <span class="notice" hidden>Copied!</span>
- <svg aria-hidden="true" width="20" height="20" viewBox="0 0 16 16" version="1.1" data-view-component="true" class="clipboard-copy-icon">
- <path fill="currentColor" fill-rule="evenodd" d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z"></path>
- <path fill="currentColor" fill-rule="evenodd" d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z"></path>
- </svg>
- </div>
- </clipboard-copy>
- </div>
- <div class="highlight-ipynb hl-python "><pre><span></span><span class="o">%</span><span class="n">export</span> <span class="n">SP_USERNAME</span><span class="o">=</span><span class="s2">"<USERNAME>"</span>
-<span class="o">%</span><span class="n">export</span> <span class="n">SP_API_KEY</span><span class="o">=</span><span class="s2">"<API-KEY>"</span>
+<div class="jp-InputPrompt jp-InputArea-prompt">In [ ]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
+<div class="CodeMirror cm-s-jupyter">
+<div class="zeroclipboard-container">
+<clipboard-copy for="cell-6">
+<div>
+<span class="notice" hidden="">Copied!</span>
+<svg aria-hidden="true" class="clipboard-copy-icon" data-view-component="true" height="20" version="1.1" viewbox="0 0 16 16" width="20">
+<path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+<path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+</svg>
+</div>
+</clipboard-copy>
+</div>
+<div class="highlight-ipynb hl-python"><pre><span></span><span class="o">%</span><span class="n">export</span> <span class="n">SP_USERNAME</span><span class="o">=</span><span class="s2">"<USERNAME>"</span>
+<span class="o">%</span><span class="n">export</span> <span class="n">SP_API_KEY</span><span class="o">=</span><span class="s2">"<API-KEY>"</span>
</pre></div>
-<div id="cell-6" class="clipboard-copy-txt">%export SP_USERNAME="<USERNAME>"
-%export SP_API_KEY="<API-KEY>"</div>
-
- </div>
- </div>
-
+<div class="clipboard-copy-txt" id="cell-6">%export SP_USERNAME="<username>"
+%export SP_API_KEY="<api-key>"</api-key></username></div>
+</div>
+</div>
</div>
</div>
-
</div>
</div>
-<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
+<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
-</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput " data-mime-type="text/markdown">
+</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput" data-mime-type="text/markdown">
<p>Having the <code>config</code> ready, we can now initialize the actual client.</p>
-
</div>
</div>
</div>
-</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
-<div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
+</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs">
+<div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
-<div class="jp-InputPrompt jp-InputArea-prompt">In [ ]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
-
-
- <div class="CodeMirror cm-s-jupyter">
- <div class="zeroclipboard-container">
- <clipboard-copy for="cell-7">
- <div>
- <span class="notice" hidden>Copied!</span>
- <svg aria-hidden="true" width="20" height="20" viewBox="0 0 16 16" version="1.1" data-view-component="true" class="clipboard-copy-icon">
- <path fill="currentColor" fill-rule="evenodd" d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z"></path>
- <path fill="currentColor" fill-rule="evenodd" d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z"></path>
- </svg>
- </div>
- </clipboard-copy>
- </div>
- <div class="highlight-ipynb hl-python "><pre><span></span><span class="n">client</span> <span class="o">=</span> <span class="n">StreamPipesClient</span><span class="p">(</span><span class="n">client_config</span><span class="o">=</span><span class="n">config</span><span class="p">)</span>
+<div class="jp-InputPrompt jp-InputArea-prompt">In [ ]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
+<div class="CodeMirror cm-s-jupyter">
+<div class="zeroclipboard-container">
+<clipboard-copy for="cell-7">
+<div>
+<span class="notice" hidden="">Copied!</span>
+<svg aria-hidden="true" class="clipboard-copy-icon" data-view-component="true" height="20" version="1.1" viewbox="0 0 16 16" width="20">
+<path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+<path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+</svg>
+</div>
+</clipboard-copy>
+</div>
+<div class="highlight-ipynb hl-python"><pre><span></span><span class="n">client</span> <span class="o">=</span> <span class="n">StreamPipesClient</span><span class="p">(</span><span class="n">client_config</span><span class="o">=</span><span class="n">config</span><span class="p">)</span>
</pre></div>
-<div id="cell-7" class="clipboard-copy-txt">client = StreamPipesClient(client_config=config)</div>
-
- </div>
- </div>
-
+<div class="clipboard-copy-txt" id="cell-7">client = StreamPipesClient(client_config=config)</div>
+</div>
+</div>
</div>
</div>
-
</div>
</div>
-<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
+<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
-</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput " data-mime-type="text/markdown">
+</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput" data-mime-type="text/markdown">
<p>That's already it. You can check if everything works out by using the following command:</p>
-
</div>
</div>
</div>
-</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell ">
-<div class="jp-Cell jp-CodeCell jp-Notebook-cell ">
+</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell">
+<div class="jp-Cell jp-CodeCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
-<div class="jp-InputPrompt jp-InputArea-prompt">In [6]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
-
-
- <div class="CodeMirror cm-s-jupyter">
- <div class="zeroclipboard-container">
- <clipboard-copy for="cell-8">
- <div>
- <span class="notice" hidden>Copied!</span>
- <svg aria-hidden="true" width="20" height="20" viewBox="0 0 16 16" version="1.1" data-view-component="true" class="clipboard-copy-icon">
- <path fill="currentColor" fill-rule="evenodd" d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z"></path>
- <path fill="currentColor" fill-rule="evenodd" d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z"></path>
- </svg>
- </div>
- </clipboard-copy>
- </div>
- <div class="highlight-ipynb hl-python "><pre><span></span><span class="n">client</span><span class="o">.</span><span class="n">describe</span><span class="p">()</span>
+<div class="jp-InputPrompt jp-InputArea-prompt">In [6]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
+<div class="CodeMirror cm-s-jupyter">
+<div class="zeroclipboard-container">
+<clipboard-copy for="cell-8">
+<div>
+<span class="notice" hidden="">Copied!</span>
+<svg aria-hidden="true" class="clipboard-copy-icon" data-view-component="true" height="20" version="1.1" viewbox="0 0 16 16" width="20">
+<path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+<path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+</svg>
+</div>
+</clipboard-copy>
+</div>
+<div class="highlight-ipynb hl-python"><pre><span></span><span class="n">client</span><span class="o">.</span><span class="n">describe</span><span class="p">()</span>
</pre></div>
-<div id="cell-8" class="clipboard-copy-txt">client.describe()</div>
-
- </div>
- </div>
-
+<div class="clipboard-copy-txt" id="cell-8">client.describe()</div>
+</div>
+</div>
</div>
</div>
-
<div class="jp-Cell-outputWrapper">
<div class="jp-Collapser jp-OutputCollapser jp-Cell-outputCollapser">
</div>
-
-
<div class="jp-OutputArea jp-Cell-outputArea">
<div class="jp-OutputArea-child">
-
- <div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
-
-
+<div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
<div class="jp-RenderedText jp-OutputArea-output" data-mime-type="text/plain">
<pre>2023-02-24 17:05:49,398 - streampipes.endpoint.endpoint - [INFO] - [endpoint.py:167] [_make_request] - Successfully retrieved all resources.
2023-02-24 17:05:49,457 - streampipes.endpoint.endpoint - [INFO] - [endpoint.py:167] [_make_request] - Successfully retrieved all resources.
@@ -3293,33 +3226,27 @@ The following StreamPipes resources are available with this client:
</pre>
</div>
</div>
-
</div>
-
</div>
-
</div>
</div>
-<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
+<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
-</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput " data-mime-type="text/markdown">
+</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput" data-mime-type="text/markdown">
<p>This prints you a short textual description of the connected StreamPipes instance to the console.</p>
-<br>
-
+<br/>
<p>The created <code>client</code> instance serves as the central point of interaction with StreamPipes.
You can invoke a variety of commands directly on this object.</p>
<p>Are you curious now how you actually can get data out of StreamPipes and make use of it with Python?
Then check out the next tutorial on <a href="../2-extracting-data-from-the-streampipes-data-lake">extracting Data from the StreamPipes data lake</a>.</p>
-<br>
-
+<br/>
<p>Thanks for reading this introductory tutorial.
We hope you like it and would love to receive some feedback from you.
Just go to our <a href="https://github.com/apache/streampipes/discussions">GitHub discussion page</a> and let us know your impression.
We'll read and react to them all, we promise!</p>
-
</div>
</div>
</div>
@@ -3328,7 +3255,6 @@ We'll read and react to them all, we promise!</p>
-
diff --git a/docs/docs/python/dev/tutorials/2-extracting-data-from-the-streampipes-data-lake/index.html b/docs/docs/python/dev/tutorials/2-extracting-data-from-the-streampipes-data-lake/index.html
index 421701af..87f219be 100644
--- a/docs/docs/python/dev/tutorials/2-extracting-data-from-the-streampipes-data-lake/index.html
+++ b/docs/docs/python/dev/tutorials/2-extracting-data-from-the-streampipes-data-lake/index.html
@@ -40,7 +40,7 @@
<link rel="next" href="../3-getting-live-data-from-the-streampipes-data-stream/">
<link rel="icon" href="https://streampipes.apache.org/img/favicon/favicon.png">
- <meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.1.3">
+ <meta name="generator" content="mkdocs-1.5.1, mkdocs-material-9.1.3">
@@ -1902,10 +1902,6 @@
}, 1000)
})
</script>
-
-
-
-
<style type="text/css">
pre { line-height: 125%; }
@@ -1957,10 +1953,6 @@ span.linenos.special { color: #000000; background-color: #ffffc0; padding-left:
.highlight-ipynb .ss { color: var(--jp-mirror-editor-string-color) } /* Literal.String.Symbol */
.highlight-ipynb .il { color: var(--jp-mirror-editor-number-color) } /* Literal.Number.Integer.Long */
</style>
-
-
-
-
<style type="text/css">
/*
This file is taken from the built JupyterLab theme.css
@@ -2736,12 +2728,10 @@ Licensed under the Apache License, Version 2.0.
*/}.jupyter-wrapper [data-jp-theme-scrollbars=true]{scrollbar-color:rgb(var(--jp-scrollbar-thumb-color)) var(--jp-scrollbar-background-color)}.jupyter-wrapper [data-jp-theme-scrollbars=true] .CodeMirror-hscrollbar,.jupyter-wrapper [data-jp-theme-scrollbars=true] .CodeMirror-vscrollbar{scrollbar-color:rgba(var(--jp-scrollbar-thumb-color), 0.5) rgba(0,0,0,0)}.jupyter-wrapper [data-jp-theme-scrollbars=true] ::-webkit-scrollbar,.jupyter-wrapper [data-jp-theme-scrollbars=true] ::-webkit-scrol [...]
/*# sourceMappingURL=mkdocs-jupyter.css.map*/</style>
-
-
<!-- Load mathjax -->
- <script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/latest.js?config=TeX-AMS_CHTML-full,Safe"> </script>
- <!-- MathJax configuration -->
- <script type="text/x-mathjax-config">
+<script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/latest.js?config=TeX-AMS_CHTML-full,Safe"> </script>
+<!-- MathJax configuration -->
+<script type="text/x-mathjax-config">
init_mathjax = function() {
if (window.MathJax) {
// MathJax loaded
@@ -2771,484 +2761,390 @@ Licensed under the Apache License, Version 2.0.
}
init_mathjax();
</script>
- <!-- End of mathjax configuration --><div class="jupyter-wrapper">
-<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
+<!-- End of mathjax configuration --><div class="jupyter-wrapper">
+<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
-</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput " data-mime-type="text/markdown">
-<h1 id="Extracting-Data-from-the-StreamPipes-data-lake">Extracting Data from the StreamPipes data lake<a class="anchor-link" href="#Extracting-Data-from-the-StreamPipes-data-lake">¶</a></h1><p>In the first tutorial (<a href="../1-introduction-to-streampipes-python-client">Introduction to the StreamPipes Python client</a>) we took the first steps with the StreamPipes Python client and learned how to set everything up.
+</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput" data-mime-type="text/markdown">
+<h1 id="Extracting-Data-from-the-StreamPipes-data-lake">Extracting Data from the StreamPipes data lake<a class="anchor-link" href="#Extracting-Data-from-the-StreamPipes-data-lake">¶</a></h1><p>In the first tutorial (<a href="../1-introduction-to-streampipes-python-client">Introduction to the StreamPipes Python client</a>) we took the first steps with the StreamPipes Python client and learned how to set everything up.
Now we are ready to get started and want to retrieve some data out of StreamPipes.
In this tutorial, we'll focus on the StreamPipes Data Lake, the component where StreamPipes stores data internally.
To get started, we'll use the <code>client</code> instance created in the first tutorial.</p>
-
</div>
</div>
</div>
-</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
-<div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
+</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs">
+<div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
-<div class="jp-InputPrompt jp-InputArea-prompt">In [1]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
-
-
- <div class="CodeMirror cm-s-jupyter">
- <div class="zeroclipboard-container">
- <clipboard-copy for="cell-1">
- <div>
- <span class="notice" hidden>Copied!</span>
- <svg aria-hidden="true" width="20" height="20" viewBox="0 0 16 16" version="1.1" data-view-component="true" class="clipboard-copy-icon">
- <path fill="currentColor" fill-rule="evenodd" d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z"></path>
- <path fill="currentColor" fill-rule="evenodd" d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z"></path>
- </svg>
- </div>
- </clipboard-copy>
- </div>
- <div class="highlight-ipynb hl-python "><pre><span></span><span class="kn">from</span> <span class="nn">streampipes.client</span> <span class="kn">import</span> <span class="n">StreamPipesClient</span>
+<div class="jp-InputPrompt jp-InputArea-prompt">In [1]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
+<div class="CodeMirror cm-s-jupyter">
+<div class="zeroclipboard-container">
+<clipboard-copy for="cell-1">
+<div>
+<span class="notice" hidden="">Copied!</span>
+<svg aria-hidden="true" class="clipboard-copy-icon" data-view-component="true" height="20" version="1.1" viewbox="0 0 16 16" width="20">
+<path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+<path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+</svg>
+</div>
+</clipboard-copy>
+</div>
+<div class="highlight-ipynb hl-python"><pre><span></span><span class="kn">from</span> <span class="nn">streampipes.client</span> <span class="kn">import</span> <span class="n">StreamPipesClient</span>
<span class="kn">from</span> <span class="nn">streampipes.client.config</span> <span class="kn">import</span> <span class="n">StreamPipesClientConfig</span>
<span class="kn">from</span> <span class="nn">streampipes.client.credential_provider</span> <span class="kn">import</span> <span class="n">StreamPipesApiKeyCredentials</span>
</pre></div>
-<div id="cell-1" class="clipboard-copy-txt">from streampipes.client import StreamPipesClient
+<div class="clipboard-copy-txt" id="cell-1">from streampipes.client import StreamPipesClient
from streampipes.client.config import StreamPipesClientConfig
from streampipes.client.credential_provider import StreamPipesApiKeyCredentials</div>
-
- </div>
- </div>
-
</div>
</div>
-
</div>
-</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
-<div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
+</div>
+</div>
+</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs">
+<div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
-<div class="jp-InputPrompt jp-InputArea-prompt">In [ ]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
-
-
- <div class="CodeMirror cm-s-jupyter">
- <div class="zeroclipboard-container">
- <clipboard-copy for="cell-2">
- <div>
- <span class="notice" hidden>Copied!</span>
- <svg aria-hidden="true" width="20" height="20" viewBox="0 0 16 16" version="1.1" data-view-component="true" class="clipboard-copy-icon">
- <path fill="currentColor" fill-rule="evenodd" d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z"></path>
- <path fill="currentColor" fill-rule="evenodd" d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z"></path>
- </svg>
- </div>
- </clipboard-copy>
- </div>
- <div class="highlight-ipynb hl-python "><pre><span></span><span class="c1"># if you want all necessary dependencies required for this tutorial to be installed,</span>
+<div class="jp-InputPrompt jp-InputArea-prompt">In [ ]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
+<div class="CodeMirror cm-s-jupyter">
+<div class="zeroclipboard-container">
+<clipboard-copy for="cell-2">
+<div>
+<span class="notice" hidden="">Copied!</span>
+<svg aria-hidden="true" class="clipboard-copy-icon" data-view-component="true" height="20" version="1.1" viewbox="0 0 16 16" width="20">
+<path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+<path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+</svg>
+</div>
+</clipboard-copy>
+</div>
+<div class="highlight-ipynb hl-python"><pre><span></span><span class="c1"># if you want all necessary dependencies required for this tutorial to be installed,</span>
<span class="c1"># you can simply execute the following command</span>
<span class="o">%</span><span class="n">pip</span> <span class="n">install</span> <span class="n">matplotlib</span> <span class="n">streampipes</span>
</pre></div>
-<div id="cell-2" class="clipboard-copy-txt"># if you want all necessary dependencies required for this tutorial to be installed,
+<div class="clipboard-copy-txt" id="cell-2"># if you want all necessary dependencies required for this tutorial to be installed,
# you can simply execute the following command
%pip install matplotlib streampipes</div>
-
- </div>
- </div>
-
</div>
</div>
-
</div>
-</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
-<div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
+</div>
+</div>
+</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs">
+<div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
-<div class="jp-InputPrompt jp-InputArea-prompt">In [2]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
-
-
- <div class="CodeMirror cm-s-jupyter">
- <div class="zeroclipboard-container">
- <clipboard-copy for="cell-3">
- <div>
- <span class="notice" hidden>Copied!</span>
- <svg aria-hidden="true" width="20" height="20" viewBox="0 0 16 16" version="1.1" data-view-component="true" class="clipboard-copy-icon">
- <path fill="currentColor" fill-rule="evenodd" d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z"></path>
- <path fill="currentColor" fill-rule="evenodd" d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z"></path>
- </svg>
- </div>
- </clipboard-copy>
- </div>
- <div class="highlight-ipynb hl-python "><pre><span></span><span class="kn">import</span> <span class="nn">os</span>
-<span class="n">os</span><span class="o">.</span><span class="n">environ</span><span class="p">[</span><span class="s2">"SP_USERNAME"</span><span class="p">]</span> <span class="o">=</span> <span class="s2">"admin@streampipes.apache.org"</span>
-<span class="n">os</span><span class="o">.</span><span class="n">environ</span><span class="p">[</span><span class="s2">"SP_API_KEY"</span><span class="p">]</span> <span class="o">=</span> <span class="s2">"XXX"</span>
+<div class="jp-InputPrompt jp-InputArea-prompt">In [2]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
+<div class="CodeMirror cm-s-jupyter">
+<div class="zeroclipboard-container">
+<clipboard-copy for="cell-3">
+<div>
+<span class="notice" hidden="">Copied!</span>
+<svg aria-hidden="true" class="clipboard-copy-icon" data-view-component="true" height="20" version="1.1" viewbox="0 0 16 16" width="20">
+<path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+<path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+</svg>
+</div>
+</clipboard-copy>
+</div>
+<div class="highlight-ipynb hl-python"><pre><span></span><span class="kn">import</span> <span class="nn">os</span>
+<span class="n">os</span><span class="o">.</span><span class="n">environ</span><span class="p">[</span><span class="s2">"SP_USERNAME"</span><span class="p">]</span> <span class="o">=</span> <span class="s2">"admin@streampipes.apache.org"</span>
+<span class="n">os</span><span class="o">.</span><span class="n">environ</span><span class="p">[</span><span class="s2">"SP_API_KEY"</span><span class="p">]</span> <span class="o">=</span> <span class="s2">"XXX"</span>
</pre></div>
-<div id="cell-3" class="clipboard-copy-txt">import os
+<div class="clipboard-copy-txt" id="cell-3">import os
os.environ["SP_USERNAME"] = "admin@streampipes.apache.org"
os.environ["SP_API_KEY"] = "XXX"
</div>
-
- </div>
- </div>
-
</div>
</div>
-
</div>
-</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
-<div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
+</div>
+</div>
+</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs">
+<div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
-<div class="jp-InputPrompt jp-InputArea-prompt">In [3]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
-
-
- <div class="CodeMirror cm-s-jupyter">
- <div class="zeroclipboard-container">
- <clipboard-copy for="cell-4">
- <div>
- <span class="notice" hidden>Copied!</span>
- <svg aria-hidden="true" width="20" height="20" viewBox="0 0 16 16" version="1.1" data-view-component="true" class="clipboard-copy-icon">
- <path fill="currentColor" fill-rule="evenodd" d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z"></path>
- <path fill="currentColor" fill-rule="evenodd" d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z"></path>
- </svg>
- </div>
- </clipboard-copy>
- </div>
- <div class="highlight-ipynb hl-python "><pre><span></span><span class="n">config</span> <span class="o">=</span> <span class="n">StreamPipesClientConfig</span><span class="p">(</span>
+<div class="jp-InputPrompt jp-InputArea-prompt">In [3]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
+<div class="CodeMirror cm-s-jupyter">
+<div class="zeroclipboard-container">
+<clipboard-copy for="cell-4">
+<div>
+<span class="notice" hidden="">Copied!</span>
+<svg aria-hidden="true" class="clipboard-copy-icon" data-view-component="true" height="20" version="1.1" viewbox="0 0 16 16" width="20">
+<path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+<path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+</svg>
+</div>
+</clipboard-copy>
+</div>
+<div class="highlight-ipynb hl-python"><pre><span></span><span class="n">config</span> <span class="o">=</span> <span class="n">StreamPipesClientConfig</span><span class="p">(</span>
<span class="n">credential_provider</span><span class="o">=</span><span class="n">StreamPipesApiKeyCredentials</span><span class="p">(),</span>
- <span class="n">host_address</span><span class="o">=</span><span class="s2">"localhost"</span><span class="p">,</span>
+ <span class="n">host_address</span><span class="o">=</span><span class="s2">"localhost"</span><span class="p">,</span>
<span class="n">https_disabled</span><span class="o">=</span><span class="kc">True</span><span class="p">,</span>
<span class="n">port</span><span class="o">=</span><span class="mi">80</span>
<span class="p">)</span>
</pre></div>
-<div id="cell-4" class="clipboard-copy-txt">config = StreamPipesClientConfig(
+<div class="clipboard-copy-txt" id="cell-4">config = StreamPipesClientConfig(
credential_provider=StreamPipesApiKeyCredentials(),
host_address="localhost",
https_disabled=True,
port=80
)</div>
-
- </div>
- </div>
-
</div>
</div>
-
</div>
-</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell ">
-<div class="jp-Cell jp-CodeCell jp-Notebook-cell ">
+</div>
+</div>
+</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell">
+<div class="jp-Cell jp-CodeCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
-<div class="jp-InputPrompt jp-InputArea-prompt">In [4]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
-
-
- <div class="CodeMirror cm-s-jupyter">
- <div class="zeroclipboard-container">
- <clipboard-copy for="cell-5">
- <div>
- <span class="notice" hidden>Copied!</span>
- <svg aria-hidden="true" width="20" height="20" viewBox="0 0 16 16" version="1.1" data-view-component="true" class="clipboard-copy-icon">
- <path fill="currentColor" fill-rule="evenodd" d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z"></path>
- <path fill="currentColor" fill-rule="evenodd" d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z"></path>
- </svg>
- </div>
- </clipboard-copy>
- </div>
- <div class="highlight-ipynb hl-python "><pre><span></span><span class="n">client</span> <span class="o">=</span> <span class="n">StreamPipesClient</span><span class="p">(</span><span class="n">client_config</span><span class="o">=</span><span class="n">config</span><span class="p">)</span>
+<div class="jp-InputPrompt jp-InputArea-prompt">In [4]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
+<div class="CodeMirror cm-s-jupyter">
+<div class="zeroclipboard-container">
+<clipboard-copy for="cell-5">
+<div>
+<span class="notice" hidden="">Copied!</span>
+<svg aria-hidden="true" class="clipboard-copy-icon" data-view-component="true" height="20" version="1.1" viewbox="0 0 16 16" width="20">
+<path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+<path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+</svg>
+</div>
+</clipboard-copy>
+</div>
+<div class="highlight-ipynb hl-python"><pre><span></span><span class="n">client</span> <span class="o">=</span> <span class="n">StreamPipesClient</span><span class="p">(</span><span class="n">client_config</span><span class="o">=</span><span class="n">config</span><span class="p">)</span>
</pre></div>
-<div id="cell-5" class="clipboard-copy-txt">client = StreamPipesClient(client_config=config)</div>
-
- </div>
- </div>
-
+<div class="clipboard-copy-txt" id="cell-5">client = StreamPipesClient(client_config=config)</div>
+</div>
+</div>
</div>
</div>
-
<div class="jp-Cell-outputWrapper">
<div class="jp-Collapser jp-OutputCollapser jp-Cell-outputCollapser">
</div>
-
-
<div class="jp-OutputArea jp-Cell-outputArea">
<div class="jp-OutputArea-child">
-
- <div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
-
-
+<div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
<div class="jp-RenderedText jp-OutputArea-output" data-mime-type="text/plain">
<pre>2023-02-24 17:34:25,860 - streampipes.client.client - [INFO] - [client.py:128] [_set_up_logging] - Logging successfully initialized with logging level INFO.
</pre>
</div>
</div>
-
</div>
-
</div>
-
</div>
</div>
-<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
+<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
-</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput " data-mime-type="text/markdown">
+</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput" data-mime-type="text/markdown">
<p>As a first step, we want to get an overview about all data available in the data lake.
The data is stored as so-called <code>measures</code>, which refer to a data stream stored in the data lake.
For his purpose we use the <code>all()</code> method of the <code>dataLakeMeasure</code> endpoint.</p>
-
</div>
</div>
</div>
-</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell ">
-<div class="jp-Cell jp-CodeCell jp-Notebook-cell ">
+</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell">
+<div class="jp-Cell jp-CodeCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
-<div class="jp-InputPrompt jp-InputArea-prompt">In [5]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
-
-
- <div class="CodeMirror cm-s-jupyter">
- <div class="zeroclipboard-container">
- <clipboard-copy for="cell-6">
- <div>
- <span class="notice" hidden>Copied!</span>
- <svg aria-hidden="true" width="20" height="20" viewBox="0 0 16 16" version="1.1" data-view-component="true" class="clipboard-copy-icon">
- <path fill="currentColor" fill-rule="evenodd" d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z"></path>
- <path fill="currentColor" fill-rule="evenodd" d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z"></path>
- </svg>
- </div>
- </clipboard-copy>
- </div>
- <div class="highlight-ipynb hl-python "><pre><span></span><span class="n">data_lake_measures</span> <span class="o">=</span> <span class="n">client</span><span class="o">.</span><span class="n">dataLakeMeasureApi</span><span class="o">.</span><span class="n">all</span><span class="p">()</span>
+<div class="jp-InputPrompt jp-InputArea-prompt">In [5]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
+<div class="CodeMirror cm-s-jupyter">
+<div class="zeroclipboard-container">
+<clipboard-copy for="cell-6">
+<div>
+<span class="notice" hidden="">Copied!</span>
+<svg aria-hidden="true" class="clipboard-copy-icon" data-view-component="true" height="20" version="1.1" viewbox="0 0 16 16" width="20">
+<path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+<path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+</svg>
+</div>
+</clipboard-copy>
+</div>
+<div class="highlight-ipynb hl-python"><pre><span></span><span class="n">data_lake_measures</span> <span class="o">=</span> <span class="n">client</span><span class="o">.</span><span class="n">dataLakeMeasureApi</span><span class="o">.</span><span class="n">all</span><span class="p">()</span>
</pre></div>
-<div id="cell-6" class="clipboard-copy-txt">data_lake_measures = client.dataLakeMeasureApi.all()</div>
-
- </div>
- </div>
-
+<div class="clipboard-copy-txt" id="cell-6">data_lake_measures = client.dataLakeMeasureApi.all()</div>
+</div>
+</div>
</div>
</div>
-
<div class="jp-Cell-outputWrapper">
<div class="jp-Collapser jp-OutputCollapser jp-Cell-outputCollapser">
</div>
-
-
<div class="jp-OutputArea jp-Cell-outputArea">
<div class="jp-OutputArea-child">
-
- <div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
-
-
+<div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
<div class="jp-RenderedText jp-OutputArea-output" data-mime-type="text/plain">
<pre>2023-02-24 17:34:25,929 - streampipes.endpoint.endpoint - [INFO] - [endpoint.py:167] [_make_request] - Successfully retrieved all resources.
</pre>
</div>
</div>
-
</div>
-
</div>
-
</div>
</div>
-<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
+<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
-</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput " data-mime-type="text/markdown">
+</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput" data-mime-type="text/markdown">
<p>So let's see how many measures are available</p>
-
</div>
</div>
</div>
-</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell ">
-<div class="jp-Cell jp-CodeCell jp-Notebook-cell ">
+</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell">
+<div class="jp-Cell jp-CodeCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
-<div class="jp-InputPrompt jp-InputArea-prompt">In [6]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
-
-
- <div class="CodeMirror cm-s-jupyter">
- <div class="zeroclipboard-container">
- <clipboard-copy for="cell-7">
- <div>
- <span class="notice" hidden>Copied!</span>
- <svg aria-hidden="true" width="20" height="20" viewBox="0 0 16 16" version="1.1" data-view-component="true" class="clipboard-copy-icon">
- <path fill="currentColor" fill-rule="evenodd" d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z"></path>
- <path fill="currentColor" fill-rule="evenodd" d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z"></path>
- </svg>
- </div>
- </clipboard-copy>
- </div>
- <div class="highlight-ipynb hl-python "><pre><span></span><span class="nb">len</span><span class="p">(</span><span class="n">data_lake_measures</span><span class="p">)</span>
+<div class="jp-InputPrompt jp-InputArea-prompt">In [6]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
+<div class="CodeMirror cm-s-jupyter">
+<div class="zeroclipboard-container">
+<clipboard-copy for="cell-7">
+<div>
+<span class="notice" hidden="">Copied!</span>
+<svg aria-hidden="true" class="clipboard-copy-icon" data-view-component="true" height="20" version="1.1" viewbox="0 0 16 16" width="20">
+<path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+<path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+</svg>
+</div>
+</clipboard-copy>
+</div>
+<div class="highlight-ipynb hl-python"><pre><span></span><span class="nb">len</span><span class="p">(</span><span class="n">data_lake_measures</span><span class="p">)</span>
</pre></div>
-<div id="cell-7" class="clipboard-copy-txt">len(data_lake_measures)</div>
-
- </div>
- </div>
-
+<div class="clipboard-copy-txt" id="cell-7">len(data_lake_measures)</div>
+</div>
+</div>
</div>
</div>
-
<div class="jp-Cell-outputWrapper">
<div class="jp-Collapser jp-OutputCollapser jp-Cell-outputCollapser">
</div>
-
-
<div class="jp-OutputArea jp-Cell-outputArea">
<div class="jp-OutputArea-child jp-OutputArea-executeResult">
-
- <div class="jp-OutputPrompt jp-OutputArea-prompt">Out[6]:</div>
-
-
-
-
+<div class="jp-OutputPrompt jp-OutputArea-prompt">Out[6]:</div>
<div class="jp-RenderedText jp-OutputArea-output jp-OutputArea-executeResult" data-mime-type="text/plain">
<pre>2</pre>
</div>
-
</div>
-
</div>
-
</div>
-
</div>
</div>
-<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
+<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
-</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput " data-mime-type="text/markdown">
+</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput" data-mime-type="text/markdown">
<p>All resources of the StreamPipes Python client support the standard Python expressions. If not, <a href="https://github.com/apache/streampipes/issues/new/choose">please let us know</a>.</p>
-
</div>
</div>
</div>
-</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell ">
-<div class="jp-Cell jp-CodeCell jp-Notebook-cell ">
+</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell">
+<div class="jp-Cell jp-CodeCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
-<div class="jp-InputPrompt jp-InputArea-prompt">In [7]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
-
-
- <div class="CodeMirror cm-s-jupyter">
- <div class="zeroclipboard-container">
- <clipboard-copy for="cell-8">
- <div>
- <span class="notice" hidden>Copied!</span>
- <svg aria-hidden="true" width="20" height="20" viewBox="0 0 16 16" version="1.1" data-view-component="true" class="clipboard-copy-icon">
- <path fill="currentColor" fill-rule="evenodd" d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z"></path>
- <path fill="currentColor" fill-rule="evenodd" d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z"></path>
- </svg>
- </div>
- </clipboard-copy>
- </div>
- <div class="highlight-ipynb hl-python "><pre><span></span><span class="n">data_lake_measures</span><span class="p">[</span><span class="o">-</span><span class="mi">1</span><span class="p">]</span>
+<div class="jp-InputPrompt jp-InputArea-prompt">In [7]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
+<div class="CodeMirror cm-s-jupyter">
+<div class="zeroclipboard-container">
+<clipboard-copy for="cell-8">
+<div>
+<span class="notice" hidden="">Copied!</span>
+<svg aria-hidden="true" class="clipboard-copy-icon" data-view-component="true" height="20" version="1.1" viewbox="0 0 16 16" width="20">
+<path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+<path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+</svg>
+</div>
+</clipboard-copy>
+</div>
+<div class="highlight-ipynb hl-python"><pre><span></span><span class="n">data_lake_measures</span><span class="p">[</span><span class="o">-</span><span class="mi">1</span><span class="p">]</span>
</pre></div>
-<div id="cell-8" class="clipboard-copy-txt">data_lake_measures[-1]</div>
-
- </div>
- </div>
-
+<div class="clipboard-copy-txt" id="cell-8">data_lake_measures[-1]</div>
+</div>
+</div>
</div>
</div>
-
<div class="jp-Cell-outputWrapper">
<div class="jp-Collapser jp-OutputCollapser jp-Cell-outputCollapser">
</div>
-
-
<div class="jp-OutputArea jp-Cell-outputArea">
<div class="jp-OutputArea-child jp-OutputArea-executeResult">
-
- <div class="jp-OutputPrompt jp-OutputArea-prompt">Out[7]:</div>
-
-
-
-
+<div class="jp-OutputPrompt jp-OutputArea-prompt">Out[7]:</div>
<div class="jp-RenderedText jp-OutputArea-output jp-OutputArea-executeResult" data-mime-type="text/plain">
-<pre>DataLakeMeasure(element_id='3cb6b5e6f107452483d1fd2ccf4bf9f9', measure_name='test', timestamp_field='s0::timestamp', event_schema=EventSchema(event_properties=[EventProperty(class_name='org.apache.streampipes.model.schema.EventPropertyPrimitive', element_id='sp:eventproperty:EiFnkL', label='Density', description='Denotes the current density of the fluid', runtime_name='density', required=False, domain_properties=['h [...]
+<pre>DataLakeMeasure(element_id='3cb6b5e6f107452483d1fd2ccf4bf9f9', measure_name='test', timestamp_field='s0::timestamp', event_schema=EventSchema(event_properties=[EventProperty(class_name='org.apache.streampipes.model.schema.EventPropertyPrimitive', element_id='sp:eventproperty:EiFnkL', label='Density', description='Denotes the current density of the fluid', runtime_name='density', required=False, domain_properties=['http://schema.org/Number'], property_scope='MEASUREMENT_PROPERTY', in [...]
</div>
-
</div>
-
</div>
-
</div>
-
</div>
</div>
-<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
+<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
-</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput " data-mime-type="text/markdown">
+</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput" data-mime-type="text/markdown">
<p>To get a more comprehensive overview, you can take a look at the <a href="https://pandas.pydata.org/"><code>pandas</code></a> representation</p>
-
</div>
</div>
</div>
-</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell ">
-<div class="jp-Cell jp-CodeCell jp-Notebook-cell ">
+</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell">
+<div class="jp-Cell jp-CodeCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
-<div class="jp-InputPrompt jp-InputArea-prompt">In [8]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
-
-
- <div class="CodeMirror cm-s-jupyter">
- <div class="zeroclipboard-container">
- <clipboard-copy for="cell-9">
- <div>
- <span class="notice" hidden>Copied!</span>
- <svg aria-hidden="true" width="20" height="20" viewBox="0 0 16 16" version="1.1" data-view-component="true" class="clipboard-copy-icon">
- <path fill="currentColor" fill-rule="evenodd" d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z"></path>
- <path fill="currentColor" fill-rule="evenodd" d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z"></path>
- </svg>
- </div>
- </clipboard-copy>
- </div>
- <div class="highlight-ipynb hl-python "><pre><span></span><span class="n">display</span><span class="p">(</span><span class="n">data_lake_measures</span><span class="o">.</span><span class="n">to_pandas</span><span class="p">())</span>
+<div class="jp-InputPrompt jp-InputArea-prompt">In [8]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
+<div class="CodeMirror cm-s-jupyter">
+<div class="zeroclipboard-container">
+<clipboard-copy for="cell-9">
+<div>
+<span class="notice" hidden="">Copied!</span>
+<svg aria-hidden="true" class="clipboard-copy-icon" data-view-component="true" height="20" version="1.1" viewbox="0 0 16 16" width="20">
+<path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+<path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+</svg>
+</div>
+</clipboard-copy>
+</div>
+<div class="highlight-ipynb hl-python"><pre><span></span><span class="n">display</span><span class="p">(</span><span class="n">data_lake_measures</span><span class="o">.</span><span class="n">to_pandas</span><span class="p">())</span>
</pre></div>
-<div id="cell-9" class="clipboard-copy-txt">display(data_lake_measures.to_pandas())</div>
-
- </div>
- </div>
-
+<div class="clipboard-copy-txt" id="cell-9">display(data_lake_measures.to_pandas())</div>
+</div>
+</div>
</div>
</div>
-
<div class="jp-Cell-outputWrapper">
<div class="jp-Collapser jp-OutputCollapser jp-Cell-outputCollapser">
</div>
-
-
<div class="jp-OutputArea jp-Cell-outputArea">
<div class="jp-OutputArea-child">
-
- <div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
-
-
-
-<div class="jp-RenderedHTMLCommon jp-RenderedHTML jp-OutputArea-output " data-mime-type="text/html">
+<div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
+<div class="jp-RenderedHTMLCommon jp-RenderedHTML jp-OutputArea-output" data-mime-type="text/html">
<div>
-<style scoped>
+<style scoped="">
.dataframe tbody tr th:only-of-type {
vertical-align: middle;
}
@@ -3262,284 +3158,231 @@ For his purpose we use the <code>all()</code> method of the <code>dataLakeMeasur
}
</style>
<table border="1" class="dataframe">
- <thead>
- <tr style="text-align: right;">
- <th></th>
- <th>measure_name</th>
- <th>timestamp_field</th>
- <th>pipeline_id</th>
- <th>pipeline_name</th>
- <th>pipeline_is_running</th>
- <th>num_event_properties</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <th>0</th>
- <td>flow-rate</td>
- <td>s0::timestamp</td>
- <td>None</td>
- <td>None</td>
- <td>False</td>
- <td>6</td>
- </tr>
- <tr>
- <th>1</th>
- <td>test</td>
- <td>s0::timestamp</td>
- <td>None</td>
- <td>None</td>
- <td>False</td>
- <td>6</td>
- </tr>
- </tbody>
+<thead>
+<tr style="text-align: right;">
+<th></th>
+<th>measure_name</th>
+<th>timestamp_field</th>
+<th>pipeline_id</th>
+<th>pipeline_name</th>
+<th>pipeline_is_running</th>
+<th>num_event_properties</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<th>0</th>
+<td>flow-rate</td>
+<td>s0::timestamp</td>
+<td>None</td>
+<td>None</td>
+<td>False</td>
+<td>6</td>
+</tr>
+<tr>
+<th>1</th>
+<td>test</td>
+<td>s0::timestamp</td>
+<td>None</td>
+<td>None</td>
+<td>False</td>
+<td>6</td>
+</tr>
+</tbody>
</table>
</div>
</div>
-
</div>
-
</div>
-
</div>
-
</div>
</div>
-<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
+<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
-</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput " data-mime-type="text/markdown">
+</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput" data-mime-type="text/markdown">
<p>So far, we have only retrieved metadata about the available data lake measure.
In the following, we will access the actual data of the measure <code>flow-rate</code>.</p>
<p>For this purpose, we will use the <code>get()</code> method of the <code>dataLakeMeasure</code> endpoint.</p>
-
</div>
</div>
</div>
-</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell ">
-<div class="jp-Cell jp-CodeCell jp-Notebook-cell ">
+</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell">
+<div class="jp-Cell jp-CodeCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
-<div class="jp-InputPrompt jp-InputArea-prompt">In [9]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
-
-
- <div class="CodeMirror cm-s-jupyter">
- <div class="zeroclipboard-container">
- <clipboard-copy for="cell-10">
- <div>
- <span class="notice" hidden>Copied!</span>
- <svg aria-hidden="true" width="20" height="20" viewBox="0 0 16 16" version="1.1" data-view-component="true" class="clipboard-copy-icon">
- <path fill="currentColor" fill-rule="evenodd" d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z"></path>
- <path fill="currentColor" fill-rule="evenodd" d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z"></path>
- </svg>
- </div>
- </clipboard-copy>
- </div>
- <div class="highlight-ipynb hl-python "><pre><span></span><span class="n">flow_rate_measure</span> <span class="o">=</span> <span class="n">client</span><span class="o">.</span><span class="n">dataLakeMeasureApi</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="n">identifier</span><span class="o">=</span><span class="s2">"flow-rate"</span><span class="p">)</span>
+<div class="jp-InputPrompt jp-InputArea-prompt">In [9]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
+<div class="CodeMirror cm-s-jupyter">
+<div class="zeroclipboard-container">
+<clipboard-copy for="cell-10">
+<div>
+<span class="notice" hidden="">Copied!</span>
+<svg aria-hidden="true" class="clipboard-copy-icon" data-view-component="true" height="20" version="1.1" viewbox="0 0 16 16" width="20">
+<path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+<path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+</svg>
+</div>
+</clipboard-copy>
+</div>
+<div class="highlight-ipynb hl-python"><pre><span></span><span class="n">flow_rate_measure</span> <span class="o">=</span> <span class="n">client</span><span class="o">.</span><span class="n">dataLakeMeasureApi</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="n">identifier</span><span class="o">=</span><span class="s2">"flow-rate"</span><span class="p">)</span>
</pre></div>
-<div id="cell-10" class="clipboard-copy-txt">flow_rate_measure = client.dataLakeMeasureApi.get(identifier="flow-rate")</div>
-
- </div>
- </div>
-
+<div class="clipboard-copy-txt" id="cell-10">flow_rate_measure = client.dataLakeMeasureApi.get(identifier="flow-rate")</div>
+</div>
+</div>
</div>
</div>
-
<div class="jp-Cell-outputWrapper">
<div class="jp-Collapser jp-OutputCollapser jp-Cell-outputCollapser">
</div>
-
-
<div class="jp-OutputArea jp-Cell-outputArea">
<div class="jp-OutputArea-child">
-
- <div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
-
-
+<div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
<div class="jp-RenderedText jp-OutputArea-output" data-mime-type="text/plain">
<pre>2023-02-24 17:34:26,020 - streampipes.endpoint.endpoint - [INFO] - [endpoint.py:167] [_make_request] - Successfully retrieved all resources.
</pre>
</div>
</div>
-
</div>
-
</div>
-
</div>
</div>
-<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
+<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
-</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput " data-mime-type="text/markdown">
+</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput" data-mime-type="text/markdown">
<p>For further processing, the easiest way is to turn the data measure into a <code>pandas DataFrame</code>.</p>
-
</div>
</div>
</div>
-</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
-<div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
+</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs">
+<div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
-<div class="jp-InputPrompt jp-InputArea-prompt">In [10]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
-
-
- <div class="CodeMirror cm-s-jupyter">
- <div class="zeroclipboard-container">
- <clipboard-copy for="cell-11">
- <div>
- <span class="notice" hidden>Copied!</span>
- <svg aria-hidden="true" width="20" height="20" viewBox="0 0 16 16" version="1.1" data-view-component="true" class="clipboard-copy-icon">
- <path fill="currentColor" fill-rule="evenodd" d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z"></path>
- <path fill="currentColor" fill-rule="evenodd" d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z"></path>
- </svg>
- </div>
- </clipboard-copy>
- </div>
- <div class="highlight-ipynb hl-python "><pre><span></span><span class="n">flow_rate_pd</span> <span class="o">=</span> <span class="n">flow_rate_measure</span><span class="o">.</span><span class="n">to_pandas</span><span class="p">()</span>
+<div class="jp-InputPrompt jp-InputArea-prompt">In [10]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
+<div class="CodeMirror cm-s-jupyter">
+<div class="zeroclipboard-container">
+<clipboard-copy for="cell-11">
+<div>
+<span class="notice" hidden="">Copied!</span>
+<svg aria-hidden="true" class="clipboard-copy-icon" data-view-component="true" height="20" version="1.1" viewbox="0 0 16 16" width="20">
+<path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+<path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+</svg>
+</div>
+</clipboard-copy>
+</div>
+<div class="highlight-ipynb hl-python"><pre><span></span><span class="n">flow_rate_pd</span> <span class="o">=</span> <span class="n">flow_rate_measure</span><span class="o">.</span><span class="n">to_pandas</span><span class="p">()</span>
</pre></div>
-<div id="cell-11" class="clipboard-copy-txt">flow_rate_pd = flow_rate_measure.to_pandas()</div>
-
- </div>
- </div>
-
+<div class="clipboard-copy-txt" id="cell-11">flow_rate_pd = flow_rate_measure.to_pandas()</div>
+</div>
+</div>
</div>
</div>
-
</div>
</div>
-<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
+<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
-</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput " data-mime-type="text/markdown">
+</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput" data-mime-type="text/markdown">
<p>Let's see how many data points we got...</p>
-
</div>
</div>
</div>
-</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell ">
-<div class="jp-Cell jp-CodeCell jp-Notebook-cell ">
+</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell">
+<div class="jp-Cell jp-CodeCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
-<div class="jp-InputPrompt jp-InputArea-prompt">In [11]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
-
-
- <div class="CodeMirror cm-s-jupyter">
- <div class="zeroclipboard-container">
- <clipboard-copy for="cell-12">
- <div>
- <span class="notice" hidden>Copied!</span>
- <svg aria-hidden="true" width="20" height="20" viewBox="0 0 16 16" version="1.1" data-view-component="true" class="clipboard-copy-icon">
- <path fill="currentColor" fill-rule="evenodd" d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z"></path>
- <path fill="currentColor" fill-rule="evenodd" d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z"></path>
- </svg>
- </div>
- </clipboard-copy>
- </div>
- <div class="highlight-ipynb hl-python "><pre><span></span><span class="nb">len</span><span class="p">(</span><span class="n">flow_rate_pd</span><span class="p">)</span>
+<div class="jp-InputPrompt jp-InputArea-prompt">In [11]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
+<div class="CodeMirror cm-s-jupyter">
+<div class="zeroclipboard-container">
+<clipboard-copy for="cell-12">
+<div>
+<span class="notice" hidden="">Copied!</span>
+<svg aria-hidden="true" class="clipboard-copy-icon" data-view-component="true" height="20" version="1.1" viewbox="0 0 16 16" width="20">
+<path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+<path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+</svg>
+</div>
+</clipboard-copy>
+</div>
+<div class="highlight-ipynb hl-python"><pre><span></span><span class="nb">len</span><span class="p">(</span><span class="n">flow_rate_pd</span><span class="p">)</span>
</pre></div>
-<div id="cell-12" class="clipboard-copy-txt">len(flow_rate_pd)</div>
-
- </div>
- </div>
-
+<div class="clipboard-copy-txt" id="cell-12">len(flow_rate_pd)</div>
+</div>
+</div>
</div>
</div>
-
<div class="jp-Cell-outputWrapper">
<div class="jp-Collapser jp-OutputCollapser jp-Cell-outputCollapser">
</div>
-
-
<div class="jp-OutputArea jp-Cell-outputArea">
<div class="jp-OutputArea-child jp-OutputArea-executeResult">
-
- <div class="jp-OutputPrompt jp-OutputArea-prompt">Out[11]:</div>
-
-
-
-
+<div class="jp-OutputPrompt jp-OutputArea-prompt">Out[11]:</div>
<div class="jp-RenderedText jp-OutputArea-output jp-OutputArea-executeResult" data-mime-type="text/plain">
<pre>1000</pre>
</div>
-
</div>
-
</div>
-
</div>
-
</div>
</div>
-<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
+<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
-</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput " data-mime-type="text/markdown">
+</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput" data-mime-type="text/markdown">
<p>... and get a first overview</p>
-
</div>
</div>
</div>
-</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell ">
-<div class="jp-Cell jp-CodeCell jp-Notebook-cell ">
+</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell">
+<div class="jp-Cell jp-CodeCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
-<div class="jp-InputPrompt jp-InputArea-prompt">In [12]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
-
-
- <div class="CodeMirror cm-s-jupyter">
- <div class="zeroclipboard-container">
- <clipboard-copy for="cell-13">
- <div>
- <span class="notice" hidden>Copied!</span>
- <svg aria-hidden="true" width="20" height="20" viewBox="0 0 16 16" version="1.1" data-view-component="true" class="clipboard-copy-icon">
- <path fill="currentColor" fill-rule="evenodd" d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z"></path>
- <path fill="currentColor" fill-rule="evenodd" d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z"></path>
- </svg>
- </div>
- </clipboard-copy>
- </div>
- <div class="highlight-ipynb hl-python "><pre><span></span><span class="n">flow_rate_pd</span><span class="o">.</span><span class="n">describe</span><span class="p">()</span>
+<div class="jp-InputPrompt jp-InputArea-prompt">In [12]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
+<div class="CodeMirror cm-s-jupyter">
+<div class="zeroclipboard-container">
+<clipboard-copy for="cell-13">
+<div>
+<span class="notice" hidden="">Copied!</span>
+<svg aria-hidden="true" class="clipboard-copy-icon" data-view-component="true" height="20" version="1.1" viewbox="0 0 16 16" width="20">
+<path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+<path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+</svg>
+</div>
+</clipboard-copy>
+</div>
+<div class="highlight-ipynb hl-python"><pre><span></span><span class="n">flow_rate_pd</span><span class="o">.</span><span class="n">describe</span><span class="p">()</span>
</pre></div>
-<div id="cell-13" class="clipboard-copy-txt">flow_rate_pd.describe()</div>
-
- </div>
- </div>
-
+<div class="clipboard-copy-txt" id="cell-13">flow_rate_pd.describe()</div>
+</div>
+</div>
</div>
</div>
-
<div class="jp-Cell-outputWrapper">
<div class="jp-Collapser jp-OutputCollapser jp-Cell-outputCollapser">
</div>
-
-
<div class="jp-OutputArea jp-Cell-outputArea">
<div class="jp-OutputArea-child jp-OutputArea-executeResult">
-
- <div class="jp-OutputPrompt jp-OutputArea-prompt">Out[12]:</div>
-
-
-
+<div class="jp-OutputPrompt jp-OutputArea-prompt">Out[12]:</div>
<div class="jp-RenderedHTMLCommon jp-RenderedHTML jp-OutputArea-output jp-OutputArea-executeResult" data-mime-type="text/html">
<div>
-<style scoped>
+<style scoped="">
.dataframe tbody tr th:only-of-type {
vertical-align: middle;
}
@@ -3553,231 +3396,192 @@ In the following, we will access the actual data of the measure <code>flow-rate<
}
</style>
<table border="1" class="dataframe">
- <thead>
- <tr style="text-align: right;">
- <th></th>
- <th>density</th>
- <th>mass_flow</th>
- <th>temperature</th>
- <th>volume_flow</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <th>count</th>
- <td>1000.000000</td>
- <td>1000.000000</td>
- <td>1000.000000</td>
- <td>1000.000000</td>
- </tr>
- <tr>
- <th>mean</th>
- <td>45.560337</td>
- <td>5.457014</td>
- <td>45.480231</td>
- <td>5.659558</td>
- </tr>
- <tr>
- <th>std</th>
- <td>3.201544</td>
- <td>3.184959</td>
- <td>3.132878</td>
- <td>3.122437</td>
- </tr>
- <tr>
- <th>min</th>
- <td>40.007698</td>
- <td>0.004867</td>
- <td>40.000992</td>
- <td>0.039422</td>
- </tr>
- <tr>
- <th>25%</th>
- <td>42.819497</td>
- <td>2.654101</td>
- <td>42.754623</td>
- <td>3.021625</td>
- </tr>
- <tr>
- <th>50%</th>
- <td>45.679264</td>
- <td>5.382355</td>
- <td>45.435944</td>
- <td>5.572553</td>
- </tr>
- <tr>
- <th>75%</th>
- <td>48.206881</td>
- <td>8.183144</td>
- <td>48.248473</td>
- <td>8.338209</td>
- </tr>
- <tr>
- <th>max</th>
- <td>50.998310</td>
- <td>10.986015</td>
- <td>50.964909</td>
- <td>10.998676</td>
- </tr>
- </tbody>
+<thead>
+<tr style="text-align: right;">
+<th></th>
+<th>density</th>
+<th>mass_flow</th>
+<th>temperature</th>
+<th>volume_flow</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<th>count</th>
+<td>1000.000000</td>
+<td>1000.000000</td>
+<td>1000.000000</td>
+<td>1000.000000</td>
+</tr>
+<tr>
+<th>mean</th>
+<td>45.560337</td>
+<td>5.457014</td>
+<td>45.480231</td>
+<td>5.659558</td>
+</tr>
+<tr>
+<th>std</th>
+<td>3.201544</td>
+<td>3.184959</td>
+<td>3.132878</td>
+<td>3.122437</td>
+</tr>
+<tr>
+<th>min</th>
+<td>40.007698</td>
+<td>0.004867</td>
+<td>40.000992</td>
+<td>0.039422</td>
+</tr>
+<tr>
+<th>25%</th>
+<td>42.819497</td>
+<td>2.654101</td>
+<td>42.754623</td>
+<td>3.021625</td>
+</tr>
+<tr>
+<th>50%</th>
+<td>45.679264</td>
+<td>5.382355</td>
+<td>45.435944</td>
+<td>5.572553</td>
+</tr>
+<tr>
+<th>75%</th>
+<td>48.206881</td>
+<td>8.183144</td>
+<td>48.248473</td>
+<td>8.338209</td>
+</tr>
+<tr>
+<th>max</th>
+<td>50.998310</td>
+<td>10.986015</td>
+<td>50.964909</td>
+<td>10.998676</td>
+</tr>
+</tbody>
</table>
</div>
</div>
-
</div>
-
</div>
-
</div>
-
</div>
</div>
-<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
+<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
-</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput " data-mime-type="text/markdown">
+</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput" data-mime-type="text/markdown">
<p>As a final step, we want to create a plot of both attributes</p>
-
</div>
</div>
</div>
-</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell ">
-<div class="jp-Cell jp-CodeCell jp-Notebook-cell ">
+</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell">
+<div class="jp-Cell jp-CodeCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
-<div class="jp-InputPrompt jp-InputArea-prompt">In [13]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
-
-
- <div class="CodeMirror cm-s-jupyter">
- <div class="zeroclipboard-container">
- <clipboard-copy for="cell-14">
- <div>
- <span class="notice" hidden>Copied!</span>
- <svg aria-hidden="true" width="20" height="20" viewBox="0 0 16 16" version="1.1" data-view-component="true" class="clipboard-copy-icon">
- <path fill="currentColor" fill-rule="evenodd" d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z"></path>
- <path fill="currentColor" fill-rule="evenodd" d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z"></path>
- </svg>
- </div>
- </clipboard-copy>
- </div>
- <div class="highlight-ipynb hl-python "><pre><span></span><span class="kn">import</span> <span class="nn">matplotlib.pyplot</span> <span class="k">as</span> <span class="nn">plt</span>
-<span class="n">flow_rate_pd</span><span class="o">.</span><span class="n">plot</span><span class="p">(</span><span class="n">y</span><span class="o">=</span><span class="p">[</span><span class="s2">"mass_flow"</span><span class="p">,</span> <span class="s2">"temperature"</span><span class="p">])</span>
+<div class="jp-InputPrompt jp-InputArea-prompt">In [13]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
+<div class="CodeMirror cm-s-jupyter">
+<div class="zeroclipboard-container">
+<clipboard-copy for="cell-14">
+<div>
+<span class="notice" hidden="">Copied!</span>
+<svg aria-hidden="true" class="clipboard-copy-icon" data-view-component="true" height="20" version="1.1" viewbox="0 0 16 16" width="20">
+<path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+<path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+</svg>
+</div>
+</clipboard-copy>
+</div>
+<div class="highlight-ipynb hl-python"><pre><span></span><span class="kn">import</span> <span class="nn">matplotlib.pyplot</span> <span class="k">as</span> <span class="nn">plt</span>
+<span class="n">flow_rate_pd</span><span class="o">.</span><span class="n">plot</span><span class="p">(</span><span class="n">y</span><span class="o">=</span><span class="p">[</span><span class="s2">"mass_flow"</span><span class="p">,</span> <span class="s2">"temperature"</span><span class="p">])</span>
<span class="n">plt</span><span class="o">.</span><span class="n">show</span><span class="p">()</span>
</pre></div>
-<div id="cell-14" class="clipboard-copy-txt">import matplotlib.pyplot as plt
+<div class="clipboard-copy-txt" id="cell-14">import matplotlib.pyplot as plt
flow_rate_pd.plot(y=["mass_flow", "temperature"])
plt.show()</div>
-
- </div>
- </div>
-
</div>
</div>
-
+</div>
+</div>
<div class="jp-Cell-outputWrapper">
<div class="jp-Collapser jp-OutputCollapser jp-Cell-outputCollapser">
</div>
-
-
<div class="jp-OutputArea jp-Cell-outputArea">
<div class="jp-OutputArea-child">
-
- <div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
-
-
-
-
-<div class="jp-RenderedImage jp-OutputArea-output ">
-<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAh8AAAGdCAYAAACyzRGfAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy88F64QAAAACXBIWXMAAA9hAAAPYQGoP6dpAACouklEQVR4nO2dd5jVxNfHv/duX9hCXdrSuxQpAgsqqCj62hDsqIBdAQWs/OwV7L2iggVEUUQRAREBKUvvvXd2qdth2837Rzb3TnInySQ3N7vA+TwPD3tTJpPJlDPnnDnjkSRJAkEQBEEQhEt4yzsDBEEQBEGcW5DwQRAEQRCEq5DwQRAEQRCEq5DwQRAEQRCEq5DwQRAEQRCEq5DwQRAEQRCEq5DwQRAEQRCEq5DwQRAEQRCEq0SWdwa0+Hw+HDp0CAkJCfB4POWdHYIgCIIgBJAkCbm5uahTpw68 [...]
-"
-class="
-"
->
+<div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
+<div class="jp-RenderedImage jp-OutputArea-output">
+<img alt="No description has been provided for this image" class="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAh8AAAGdCAYAAACyzRGfAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy88F64QAAAACXBIWXMAAA9hAAAPYQGoP6dpAACouklEQVR4nO2dd5jVxNfHv/duX9hCXdrSuxQpAgsqqCj62hDsqIBdAQWs/OwV7L2iggVEUUQRAREBKUvvvXd2qdth2837Rzb3TnInySQ3N7vA+TwPD3tTJpPJlDPnnDnjkSRJAkEQBEEQhEt4yzsDBEEQBEGcW5DwQRAEQRCEq5DwQRAEQRCEq5DwQRAEQRCEq5DwQRAEQRCEq5DwQRAEQRCEq5DwQRAEQRCEq [...]
+"/>
</div>
-
</div>
-
</div>
-
</div>
-
</div>
</div>
-<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
+<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
-</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput " data-mime-type="text/markdown">
-<p>For data lake measurements, the <code>get()</code> method is even more powerful than simply returning all the data for a given data lake measurement. We will look at a selection of these below. The full list of supported parameters can be found in the <a href="../../reference/endpoint/api/data_lake_measure/#streampipes.endpoint.api.data_lake_measure.MeasurementGetQueryConfig">docs</a>. <br>
-Let's start by referring to the graph we created above, where we use only two columns of our data lake measurement. If we already know this, we can directly restrict the queried data to a subset of columns by using the <code>columns</code> parameter. <br>
+</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput" data-mime-type="text/markdown">
+<p>For data lake measurements, the <code>get()</code> method is even more powerful than simply returning all the data for a given data lake measurement. We will look at a selection of these below. The full list of supported parameters can be found in the <a href="../../reference/endpoint/api/data_lake_measure/#streampipes.endpoint.api.data_lake_measure.MeasurementGetQueryConfig">docs</a>. <br/>
+Let's start by referring to the graph we created above, where we use only two columns of our data lake measurement. If we already know this, we can directly restrict the queried data to a subset of columns by using the <code>columns</code> parameter. <br/>
<code>columns</code> takes a list of column names as a comma-separated string:</p>
-
</div>
</div>
</div>
-</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell ">
-<div class="jp-Cell jp-CodeCell jp-Notebook-cell ">
+</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell">
+<div class="jp-Cell jp-CodeCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
-<div class="jp-InputPrompt jp-InputArea-prompt">In [14]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
-
-
- <div class="CodeMirror cm-s-jupyter">
- <div class="zeroclipboard-container">
- <clipboard-copy for="cell-15">
- <div>
- <span class="notice" hidden>Copied!</span>
- <svg aria-hidden="true" width="20" height="20" viewBox="0 0 16 16" version="1.1" data-view-component="true" class="clipboard-copy-icon">
- <path fill="currentColor" fill-rule="evenodd" d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z"></path>
- <path fill="currentColor" fill-rule="evenodd" d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z"></path>
- </svg>
- </div>
- </clipboard-copy>
- </div>
- <div class="highlight-ipynb hl-python "><pre><span></span><span class="n">flow_rate_pd</span> <span class="o">=</span> <span class="n">client</span><span class="o">.</span><span class="n">dataLakeMeasureApi</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="n">identifier</span><span class="o">=</span><span class="s2">"flow-rate"</span><span class="p">,</span> <span class="n">columns</span><span class="o">=</span><span class= [...]
+<div class="jp-InputPrompt jp-InputArea-prompt">In [14]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
+<div class="CodeMirror cm-s-jupyter">
+<div class="zeroclipboard-container">
+<clipboard-copy for="cell-15">
+<div>
+<span class="notice" hidden="">Copied!</span>
+<svg aria-hidden="true" class="clipboard-copy-icon" data-view-component="true" height="20" version="1.1" viewbox="0 0 16 16" width="20">
+<path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+<path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+</svg>
+</div>
+</clipboard-copy>
+</div>
+<div class="highlight-ipynb hl-python"><pre><span></span><span class="n">flow_rate_pd</span> <span class="o">=</span> <span class="n">client</span><span class="o">.</span><span class="n">dataLakeMeasureApi</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="n">identifier</span><span class="o">=</span><span class="s2">"flow-rate"</span><span class="p">,</span> <span class="n">columns</span><span class="o">=</span><span class="s2">"mass_flow,tempera [...]
<span class="n">flow_rate_pd</span>
</pre></div>
-<div id="cell-15" class="clipboard-copy-txt">flow_rate_pd = client.dataLakeMeasureApi.get(identifier="flow-rate", columns="mass_flow,temperature").to_pandas()
+<div class="clipboard-copy-txt" id="cell-15">flow_rate_pd = client.dataLakeMeasureApi.get(identifier="flow-rate", columns="mass_flow,temperature").to_pandas()
flow_rate_pd</div>
-
- </div>
- </div>
-
</div>
</div>
-
+</div>
+</div>
<div class="jp-Cell-outputWrapper">
<div class="jp-Collapser jp-OutputCollapser jp-Cell-outputCollapser">
</div>
-
-
<div class="jp-OutputArea jp-Cell-outputArea">
<div class="jp-OutputArea-child">
-
- <div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
-
-
+<div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
<div class="jp-RenderedText jp-OutputArea-output" data-mime-type="text/plain">
<pre>2023-02-24 17:34:26,492 - streampipes.endpoint.endpoint - [INFO] - [endpoint.py:167] [_make_request] - Successfully retrieved all resources.
</pre>
</div>
</div>
<div class="jp-OutputArea-child jp-OutputArea-executeResult">
-
- <div class="jp-OutputPrompt jp-OutputArea-prompt">Out[14]:</div>
-
-
-
+<div class="jp-OutputPrompt jp-OutputArea-prompt">Out[14]:</div>
<div class="jp-RenderedHTMLCommon jp-RenderedHTML jp-OutputArea-output jp-OutputArea-executeResult" data-mime-type="text/html">
<div>
-<style scoped>
+<style scoped="">
.dataframe tbody tr th:only-of-type {
vertical-align: middle;
}
@@ -3791,216 +3595,189 @@ flow_rate_pd</div>
}
</style>
<table border="1" class="dataframe">
- <thead>
- <tr style="text-align: right;">
- <th></th>
- <th>timestamp</th>
- <th>mass_flow</th>
- <th>temperature</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <th>0</th>
- <td>2023-02-24T16:19:41.472Z</td>
- <td>3.309556</td>
- <td>44.448483</td>
- </tr>
- <tr>
- <th>1</th>
- <td>2023-02-24T16:19:41.482Z</td>
- <td>5.608580</td>
- <td>40.322033</td>
- </tr>
- <tr>
- <th>2</th>
- <td>2023-02-24T16:19:41.493Z</td>
- <td>7.692881</td>
- <td>49.239639</td>
- </tr>
- <tr>
- <th>3</th>
- <td>2023-02-24T16:19:41.503Z</td>
- <td>3.632898</td>
- <td>49.933754</td>
- </tr>
- <tr>
- <th>4</th>
- <td>2023-02-24T16:19:41.513Z</td>
- <td>0.711260</td>
- <td>50.106617</td>
- </tr>
- <tr>
- <th>...</th>
- <td>...</td>
- <td>...</td>
- <td>...</td>
- </tr>
- <tr>
- <th>995</th>
- <td>2023-02-24T16:19:52.927Z</td>
- <td>1.740114</td>
- <td>46.558231</td>
- </tr>
- <tr>
- <th>996</th>
- <td>2023-02-24T16:19:52.94Z</td>
- <td>7.211723</td>
- <td>48.048622</td>
- </tr>
- <tr>
- <th>997</th>
- <td>2023-02-24T16:19:52.952Z</td>
- <td>7.770180</td>
- <td>48.188026</td>
- </tr>
- <tr>
- <th>998</th>
- <td>2023-02-24T16:19:52.965Z</td>
- <td>4.458602</td>
- <td>48.280899</td>
- </tr>
- <tr>
- <th>999</th>
- <td>2023-02-24T16:19:52.977Z</td>
- <td>2.592060</td>
- <td>47.505951</td>
- </tr>
- </tbody>
+<thead>
+<tr style="text-align: right;">
+<th></th>
+<th>timestamp</th>
+<th>mass_flow</th>
+<th>temperature</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<th>0</th>
+<td>2023-02-24T16:19:41.472Z</td>
+<td>3.309556</td>
+<td>44.448483</td>
+</tr>
+<tr>
+<th>1</th>
+<td>2023-02-24T16:19:41.482Z</td>
+<td>5.608580</td>
+<td>40.322033</td>
+</tr>
+<tr>
+<th>2</th>
+<td>2023-02-24T16:19:41.493Z</td>
+<td>7.692881</td>
+<td>49.239639</td>
+</tr>
+<tr>
+<th>3</th>
+<td>2023-02-24T16:19:41.503Z</td>
+<td>3.632898</td>
+<td>49.933754</td>
+</tr>
+<tr>
+<th>4</th>
+<td>2023-02-24T16:19:41.513Z</td>
+<td>0.711260</td>
+<td>50.106617</td>
+</tr>
+<tr>
+<th>...</th>
+<td>...</td>
+<td>...</td>
+<td>...</td>
+</tr>
+<tr>
+<th>995</th>
+<td>2023-02-24T16:19:52.927Z</td>
+<td>1.740114</td>
+<td>46.558231</td>
+</tr>
+<tr>
+<th>996</th>
+<td>2023-02-24T16:19:52.94Z</td>
+<td>7.211723</td>
+<td>48.048622</td>
+</tr>
+<tr>
+<th>997</th>
+<td>2023-02-24T16:19:52.952Z</td>
+<td>7.770180</td>
+<td>48.188026</td>
+</tr>
+<tr>
+<th>998</th>
+<td>2023-02-24T16:19:52.965Z</td>
+<td>4.458602</td>
+<td>48.280899</td>
+</tr>
+<tr>
+<th>999</th>
+<td>2023-02-24T16:19:52.977Z</td>
+<td>2.592060</td>
+<td>47.505951</td>
+</tr>
+</tbody>
</table>
<p>1000 rows × 3 columns</p>
</div>
</div>
-
</div>
-
</div>
-
</div>
-
</div>
</div>
-<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
+<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
-</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput " data-mime-type="text/markdown">
+</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput" data-mime-type="text/markdown">
<p>By default, the client returns only the first one thousand records of a Data Lake measurement. This can be changed by passing a concrete value for the <code>limit</code> parameter:</p>
-
</div>
</div>
</div>
-</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell ">
-<div class="jp-Cell jp-CodeCell jp-Notebook-cell ">
+</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell">
+<div class="jp-Cell jp-CodeCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
-<div class="jp-InputPrompt jp-InputArea-prompt">In [15]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
-
-
- <div class="CodeMirror cm-s-jupyter">
- <div class="zeroclipboard-container">
- <clipboard-copy for="cell-16">
- <div>
- <span class="notice" hidden>Copied!</span>
- <svg aria-hidden="true" width="20" height="20" viewBox="0 0 16 16" version="1.1" data-view-component="true" class="clipboard-copy-icon">
- <path fill="currentColor" fill-rule="evenodd" d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z"></path>
- <path fill="currentColor" fill-rule="evenodd" d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z"></path>
- </svg>
- </div>
- </clipboard-copy>
- </div>
- <div class="highlight-ipynb hl-python "><pre><span></span><span class="n">flow_rate_pd</span> <span class="o">=</span> <span class="n">client</span><span class="o">.</span><span class="n">dataLakeMeasureApi</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="n">identifier</span><span class="o">=</span><span class="s2">"flow-rate"</span><span class="p">,</span> <span class="n">limit</span><span class="o">=</span><span class="m [...]
+<div class="jp-InputPrompt jp-InputArea-prompt">In [15]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
+<div class="CodeMirror cm-s-jupyter">
+<div class="zeroclipboard-container">
+<clipboard-copy for="cell-16">
+<div>
+<span class="notice" hidden="">Copied!</span>
+<svg aria-hidden="true" class="clipboard-copy-icon" data-view-component="true" height="20" version="1.1" viewbox="0 0 16 16" width="20">
+<path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+<path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+</svg>
+</div>
+</clipboard-copy>
+</div>
+<div class="highlight-ipynb hl-python"><pre><span></span><span class="n">flow_rate_pd</span> <span class="o">=</span> <span class="n">client</span><span class="o">.</span><span class="n">dataLakeMeasureApi</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="n">identifier</span><span class="o">=</span><span class="s2">"flow-rate"</span><span class="p">,</span> <span class="n">limit</span><span class="o">=</span><span class="mi">10000</span><span cl [...]
<span class="nb">len</span><span class="p">(</span><span class="n">flow_rate_pd</span><span class="p">)</span>
</pre></div>
-<div id="cell-16" class="clipboard-copy-txt">flow_rate_pd = client.dataLakeMeasureApi.get(identifier="flow-rate", limit=10000).to_pandas()
+<div class="clipboard-copy-txt" id="cell-16">flow_rate_pd = client.dataLakeMeasureApi.get(identifier="flow-rate", limit=10000).to_pandas()
len(flow_rate_pd)</div>
-
- </div>
- </div>
-
</div>
</div>
-
+</div>
+</div>
<div class="jp-Cell-outputWrapper">
<div class="jp-Collapser jp-OutputCollapser jp-Cell-outputCollapser">
</div>
-
-
<div class="jp-OutputArea jp-Cell-outputArea">
<div class="jp-OutputArea-child">
-
- <div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
-
-
+<div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
<div class="jp-RenderedText jp-OutputArea-output" data-mime-type="text/plain">
<pre>2023-02-24 17:34:26,736 - streampipes.endpoint.endpoint - [INFO] - [endpoint.py:167] [_make_request] - Successfully retrieved all resources.
</pre>
</div>
</div>
<div class="jp-OutputArea-child jp-OutputArea-executeResult">
-
- <div class="jp-OutputPrompt jp-OutputArea-prompt">Out[15]:</div>
-
-
-
-
+<div class="jp-OutputPrompt jp-OutputArea-prompt">Out[15]:</div>
<div class="jp-RenderedText jp-OutputArea-output jp-OutputArea-executeResult" data-mime-type="text/plain">
<pre>9528</pre>
</div>
-
</div>
-
</div>
-
</div>
-
</div>
</div>
-<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
+<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
-</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput " data-mime-type="text/markdown">
+</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput" data-mime-type="text/markdown">
<p>If you want your data to be selected by time of occurrence rather than quantity, you can specify your time window by passing the <code>start_date</code> and <code>end_date</code> parameters:</p>
-
</div>
</div>
</div>
-</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell ">
-<div class="jp-Cell jp-CodeCell jp-Notebook-cell ">
+</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell">
+<div class="jp-Cell jp-CodeCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
-<div class="jp-InputPrompt jp-InputArea-prompt">In [16]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
-
-
- <div class="CodeMirror cm-s-jupyter">
- <div class="zeroclipboard-container">
- <clipboard-copy for="cell-17">
- <div>
- <span class="notice" hidden>Copied!</span>
- <svg aria-hidden="true" width="20" height="20" viewBox="0 0 16 16" version="1.1" data-view-component="true" class="clipboard-copy-icon">
- <path fill="currentColor" fill-rule="evenodd" d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z"></path>
- <path fill="currentColor" fill-rule="evenodd" d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z"></path>
- </svg>
- </div>
- </clipboard-copy>
- </div>
- <div class="highlight-ipynb hl-python "><pre><span></span><span class="kn">from</span> <span class="nn">datetime</span> <span class="kn">import</span> <span class="n">datetime</span>
+<div class="jp-InputPrompt jp-InputArea-prompt">In [16]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
+<div class="CodeMirror cm-s-jupyter">
+<div class="zeroclipboard-container">
+<clipboard-copy for="cell-17">
+<div>
+<span class="notice" hidden="">Copied!</span>
+<svg aria-hidden="true" class="clipboard-copy-icon" data-view-component="true" height="20" version="1.1" viewbox="0 0 16 16" width="20">
+<path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+<path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+</svg>
+</div>
+</clipboard-copy>
+</div>
+<div class="highlight-ipynb hl-python"><pre><span></span><span class="kn">from</span> <span class="nn">datetime</span> <span class="kn">import</span> <span class="n">datetime</span>
<span class="n">flow_rate_pd</span> <span class="o">=</span> <span class="n">client</span><span class="o">.</span><span class="n">dataLakeMeasureApi</span><span class="o">.</span><span class="n">get</span><span class="p">(</span>
- <span class="n">identifier</span><span class="o">=</span><span class="s2">"flow-rate"</span><span class="p">,</span>
+ <span class="n">identifier</span><span class="o">=</span><span class="s2">"flow-rate"</span><span class="p">,</span>
<span class="n">start_date</span><span class="o">=</span><span class="n">datetime</span><span class="p">(</span><span class="n">year</span><span class="o">=</span><span class="mi">2023</span><span class="p">,</span> <span class="n">month</span><span class="o">=</span><span class="mi">2</span><span class="p">,</span> <span class="n">day</span><span class="o">=</span><span class="mi">24</span><span class="p">,</span> <span class="n">hour</span><span class="o">=</span><span class="mi">1 [...]
<span class="n">end_date</span><span class="o">=</span><span class="n">datetime</span><span class="p">(</span><span class="n">year</span><span class="o">=</span><span class="mi">2023</span><span class="p">,</span> <span class="n">month</span><span class="o">=</span><span class="mi">2</span><span class="p">,</span> <span class="n">day</span><span class="o">=</span><span class="mi">24</span><span class="p">,</span> <span class="n">hour</span><span class="o">=</span><span class="mi">17< [...]
<span class="p">)</span><span class="o">.</span><span class="n">to_pandas</span><span class="p">()</span>
-<span class="n">flow_rate_pd</span><span class="o">.</span><span class="n">plot</span><span class="p">(</span><span class="n">y</span><span class="o">=</span><span class="p">[</span><span class="s2">"mass_flow"</span><span class="p">,</span> <span class="s2">"temperature"</span><span class="p">])</span>
+<span class="n">flow_rate_pd</span><span class="o">.</span><span class="n">plot</span><span class="p">(</span><span class="n">y</span><span class="o">=</span><span class="p">[</span><span class="s2">"mass_flow"</span><span class="p">,</span> <span class="s2">"temperature"</span><span class="p">])</span>
<span class="n">plt</span><span class="o">.</span><span class="n">show</span><span class="p">()</span>
</pre></div>
-<div id="cell-17" class="clipboard-copy-txt">from datetime import datetime
+<div class="clipboard-copy-txt" id="cell-17">from datetime import datetime
flow_rate_pd = client.dataLakeMeasureApi.get(
identifier="flow-rate",
start_date=datetime(year=2023, month=2, day=24, hour=17, minute=21, second=0),
@@ -4008,102 +3785,78 @@ flow_rate_pd = client.dataLakeMeasureApi.get(
).to_pandas()
flow_rate_pd.plot(y=["mass_flow", "temperature"])
plt.show()</div>
-
- </div>
- </div>
-
</div>
</div>
-
+</div>
+</div>
<div class="jp-Cell-outputWrapper">
<div class="jp-Collapser jp-OutputCollapser jp-Cell-outputCollapser">
</div>
-
-
<div class="jp-OutputArea jp-Cell-outputArea">
<div class="jp-OutputArea-child">
-
- <div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
-
-
+<div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
<div class="jp-RenderedText jp-OutputArea-output" data-mime-type="text/plain">
<pre>2023-02-24 17:34:26,899 - streampipes.endpoint.endpoint - [INFO] - [endpoint.py:167] [_make_request] - Successfully retrieved all resources.
</pre>
</div>
</div>
<div class="jp-OutputArea-child">
-
- <div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
-
-
-
-
-<div class="jp-RenderedImage jp-OutputArea-output ">
-<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAh8AAAGdCAYAAACyzRGfAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy88F64QAAAACXBIWXMAAA9hAAAPYQGoP6dpAACdPUlEQVR4nO2dd3hb5fXHv1eSJe89k9ixs/dySOKEkACBEEaBhL1TKBTCCBRa8ivQRRvasltGSwuBFhr23oQkkL134kzHTrzteNuyLd3fH6/ee6/kK+lebcfn8zx+bEuy9Frj3u97zvecI4iiKIIgCIIgCCJEGMK9AIIgCIIg+hYkPgiCIAiCCCkkPgiCIAiCCCkkPgiCIAiCCCkkPgiCIAiCCCkkPgiCIAiCCCkkPgiCIAiCCCkkPgiCIAiCCCmmcC/AFbvdjvLyciQkJEAQhHAvhyAIgiAIDYii [...]
-"
-class="
-"
->
+<div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
+<div class="jp-RenderedImage jp-OutputArea-output">
+<img alt="No description has been provided for this image" class="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAh8AAAGdCAYAAACyzRGfAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy88F64QAAAACXBIWXMAAA9hAAAPYQGoP6dpAACdPUlEQVR4nO2dd3hb5fXHv1eSJe89k9ixs/dySOKEkACBEEaBhL1TKBTCCBRa8ivQRRvasltGSwuBFhr23oQkkL134kzHTrzteNuyLd3fH6/ee6/kK+lebcfn8zx+bEuy9Frj3u97zvecI4iiKIIgCIIgCCJEGMK9AIIgCIIg+hYkPgiCIAiCCCkkPgiCIAiCCCkkPgiCIAiCCCkkPgiCIAiCCCkkPgiCIAiCC [...]
+"/>
</div>
-
</div>
-
</div>
-
</div>
-
</div>
</div>
-<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
+<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
-</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput " data-mime-type="text/markdown">
+</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput" data-mime-type="text/markdown">
<p>... from this point on we leave all future processing of the data up to your creativity.
Keep in mind: the general syntax used in this tutorial (<code>all()</code>, <code>to_pandas()</code>, <code>get()</code>) applies to all endpoints and associated resources of the StreamPipes Python client.</p>
<p>If you get further and create exiting stuff with data extracted from StreamPipes please <a href="https://github.com/apache/streampipes/discussions/categories/show-and-tell">let us know</a>.
We are thrilled to see what you as a community will build with the provided client.
Furthermore, don't hesitate to discuss <a href="https://github.com/apache/streampipes/discussions/812">feature requests</a> to extend the current functionality with us.</p>
-
</div>
</div>
</div>
</div>
-<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
+<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
-</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput " data-mime-type="text/markdown">
+</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput" data-mime-type="text/markdown">
<p>For now, that's all about the StreamPipes client. Read the next tutorial (<a href="../3-getting-live-data-from-the-streampipes-data-stream">Getting live data from the StreamPipes data stream</a>) if you are interested in making use of the powerful <a href="https://streampipes.apache.org/docs/docs/extend-sdk-functions.html">StreamPipes functions</a> to interact with StreamPipes event-based.</p>
-
</div>
</div>
</div>
</div>
-<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
+<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
-</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput " data-mime-type="text/markdown">
+</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput" data-mime-type="text/markdown">
<p>How do you like this tutorial?
We hope you like it and would love to receive some feedback from you.
Just go to our <a href="https://github.com/apache/streampipes/discussions">GitHub discussion page</a> and let us know your impression.
We'll read and react to them all, we promise!</p>
-
</div>
</div>
</div>
</div>
-<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
+<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
-</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput " data-mime-type="text/markdown">
-
+</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput" data-mime-type="text/markdown">
</div>
</div>
</div>
@@ -4112,7 +3865,6 @@ We'll read and react to them all, we promise!</p>
-
diff --git a/docs/docs/python/dev/tutorials/3-getting-live-data-from-the-streampipes-data-stream/index.html b/docs/docs/python/dev/tutorials/3-getting-live-data-from-the-streampipes-data-stream/index.html
index 81cae5cc..ed8a2133 100644
--- a/docs/docs/python/dev/tutorials/3-getting-live-data-from-the-streampipes-data-stream/index.html
+++ b/docs/docs/python/dev/tutorials/3-getting-live-data-from-the-streampipes-data-stream/index.html
@@ -40,7 +40,7 @@
<link rel="next" href="../4-using-online-machine-learning-on-a-streampipes-data-stream/">
<link rel="icon" href="https://streampipes.apache.org/img/favicon/favicon.png">
- <meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.1.3">
+ <meta name="generator" content="mkdocs-1.5.1, mkdocs-material-9.1.3">
@@ -1902,10 +1902,6 @@
}, 1000)
})
</script>
-
-
-
-
<style type="text/css">
pre { line-height: 125%; }
@@ -1957,10 +1953,6 @@ span.linenos.special { color: #000000; background-color: #ffffc0; padding-left:
.highlight-ipynb .ss { color: var(--jp-mirror-editor-string-color) } /* Literal.String.Symbol */
.highlight-ipynb .il { color: var(--jp-mirror-editor-number-color) } /* Literal.Number.Integer.Long */
</style>
-
-
-
-
<style type="text/css">
/*
This file is taken from the built JupyterLab theme.css
@@ -2736,12 +2728,10 @@ Licensed under the Apache License, Version 2.0.
*/}.jupyter-wrapper [data-jp-theme-scrollbars=true]{scrollbar-color:rgb(var(--jp-scrollbar-thumb-color)) var(--jp-scrollbar-background-color)}.jupyter-wrapper [data-jp-theme-scrollbars=true] .CodeMirror-hscrollbar,.jupyter-wrapper [data-jp-theme-scrollbars=true] .CodeMirror-vscrollbar{scrollbar-color:rgba(var(--jp-scrollbar-thumb-color), 0.5) rgba(0,0,0,0)}.jupyter-wrapper [data-jp-theme-scrollbars=true] ::-webkit-scrollbar,.jupyter-wrapper [data-jp-theme-scrollbars=true] ::-webkit-scrol [...]
/*# sourceMappingURL=mkdocs-jupyter.css.map*/</style>
-
-
<!-- Load mathjax -->
- <script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/latest.js?config=TeX-AMS_CHTML-full,Safe"> </script>
- <!-- MathJax configuration -->
- <script type="text/x-mathjax-config">
+<script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/latest.js?config=TeX-AMS_CHTML-full,Safe"> </script>
+<!-- MathJax configuration -->
+<script type="text/x-mathjax-config">
init_mathjax = function() {
if (window.MathJax) {
// MathJax loaded
@@ -2771,134 +2761,120 @@ Licensed under the Apache License, Version 2.0.
}
init_mathjax();
</script>
- <!-- End of mathjax configuration --><div class="jupyter-wrapper">
-<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
+<!-- End of mathjax configuration --><div class="jupyter-wrapper">
+<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
-</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput " data-mime-type="text/markdown">
-<h1 id="Getting-live-data-from-the-StreamPipes-data-stream">Getting live data from the StreamPipes data stream<a class="anchor-link" href="#Getting-live-data-from-the-StreamPipes-data-stream">¶</a></h1><p>In the last tutorial (<a href="../2-extracting-data-from-the-streampipes-data-lake">Extracting Data from the StreamPipes data lake</a>) we learned how to extract the stored data from a StreamPipes data lake. This tutorial is about the StreamPipes data stream and shows how to get th [...]
-
+</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput" data-mime-type="text/markdown">
+<h1 id="Getting-live-data-from-the-StreamPipes-data-stream">Getting live data from the StreamPipes data stream<a class="anchor-link" href="#Getting-live-data-from-the-StreamPipes-data-stream">¶</a></h1><p>In the last tutorial (<a href="../2-extracting-data-from-the-streampipes-data-lake">Extracting Data from the StreamPipes data lake</a>) we learned how to extract the stored data from a StreamPipes data lake. This tutorial is about the StreamPipes data stream and shows how to get the liv [...]
</div>
</div>
</div>
</div>
-<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
+<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
-</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput " data-mime-type="text/markdown">
-<p><strong>Note</strong><br />
+</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput" data-mime-type="text/markdown">
+<p><strong>Note</strong><br/>
As of now we mainly developed the support for StreamPipes functions using NATS as messaging protocol. Consequently, this setup is tested most and should work flawlessly. Visit our <a href="../../getting-started/first-steps">first-steps</a> page to see how to start StreamPipes accordingly.
Anyhow, you can also use the other <a href="../../reference/functions/broker/broker">brokers</a> that are currently supported in StreamPipes Python.
In case you observe any problems, please reach out to us and file us an <a href="https://github.com/apache/streampipes/issues">issue</a> on GitHub.</p>
-
</div>
</div>
</div>
-</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
-<div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
+</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs">
+<div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
-<div class="jp-InputPrompt jp-InputArea-prompt">In [1]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
-
-
- <div class="CodeMirror cm-s-jupyter">
- <div class="zeroclipboard-container">
- <clipboard-copy for="cell-1">
- <div>
- <span class="notice" hidden>Copied!</span>
- <svg aria-hidden="true" width="20" height="20" viewBox="0 0 16 16" version="1.1" data-view-component="true" class="clipboard-copy-icon">
- <path fill="currentColor" fill-rule="evenodd" d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z"></path>
- <path fill="currentColor" fill-rule="evenodd" d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z"></path>
- </svg>
- </div>
- </clipboard-copy>
- </div>
- <div class="highlight-ipynb hl-python "><pre><span></span><span class="kn">from</span> <span class="nn">streampipes.client</span> <span class="kn">import</span> <span class="n">StreamPipesClient</span>
+<div class="jp-InputPrompt jp-InputArea-prompt">In [1]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
+<div class="CodeMirror cm-s-jupyter">
+<div class="zeroclipboard-container">
+<clipboard-copy for="cell-1">
+<div>
+<span class="notice" hidden="">Copied!</span>
+<svg aria-hidden="true" class="clipboard-copy-icon" data-view-component="true" height="20" version="1.1" viewbox="0 0 16 16" width="20">
+<path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+<path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+</svg>
+</div>
+</clipboard-copy>
+</div>
+<div class="highlight-ipynb hl-python"><pre><span></span><span class="kn">from</span> <span class="nn">streampipes.client</span> <span class="kn">import</span> <span class="n">StreamPipesClient</span>
<span class="kn">from</span> <span class="nn">streampipes.client.config</span> <span class="kn">import</span> <span class="n">StreamPipesClientConfig</span>
<span class="kn">from</span> <span class="nn">streampipes.client.credential_provider</span> <span class="kn">import</span> <span class="n">StreamPipesApiKeyCredentials</span>
</pre></div>
-<div id="cell-1" class="clipboard-copy-txt">from streampipes.client import StreamPipesClient
+<div class="clipboard-copy-txt" id="cell-1">from streampipes.client import StreamPipesClient
from streampipes.client.config import StreamPipesClientConfig
from streampipes.client.credential_provider import StreamPipesApiKeyCredentials</div>
-
- </div>
- </div>
-
</div>
</div>
-
</div>
-</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
-<div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
+</div>
+</div>
+</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs">
+<div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
-<div class="jp-InputPrompt jp-InputArea-prompt">In [ ]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
-
-
- <div class="CodeMirror cm-s-jupyter">
- <div class="zeroclipboard-container">
- <clipboard-copy for="cell-2">
- <div>
- <span class="notice" hidden>Copied!</span>
- <svg aria-hidden="true" width="20" height="20" viewBox="0 0 16 16" version="1.1" data-view-component="true" class="clipboard-copy-icon">
- <path fill="currentColor" fill-rule="evenodd" d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z"></path>
- <path fill="currentColor" fill-rule="evenodd" d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z"></path>
- </svg>
- </div>
- </clipboard-copy>
- </div>
- <div class="highlight-ipynb hl-python "><pre><span></span><span class="c1"># You can install all required libraries for this tutorial with the following command</span>
+<div class="jp-InputPrompt jp-InputArea-prompt">In [ ]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
+<div class="CodeMirror cm-s-jupyter">
+<div class="zeroclipboard-container">
+<clipboard-copy for="cell-2">
+<div>
+<span class="notice" hidden="">Copied!</span>
+<svg aria-hidden="true" class="clipboard-copy-icon" data-view-component="true" height="20" version="1.1" viewbox="0 0 16 16" width="20">
+<path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+<path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+</svg>
+</div>
+</clipboard-copy>
+</div>
+<div class="highlight-ipynb hl-python"><pre><span></span><span class="c1"># You can install all required libraries for this tutorial with the following command</span>
<span class="o">%</span><span class="n">pip</span> <span class="n">install</span> <span class="n">matplotlib</span> <span class="n">ipython</span> <span class="n">streampipes</span>
</pre></div>
-<div id="cell-2" class="clipboard-copy-txt"># You can install all required libraries for this tutorial with the following command
+<div class="clipboard-copy-txt" id="cell-2"># You can install all required libraries for this tutorial with the following command
%pip install matplotlib ipython streampipes</div>
-
- </div>
- </div>
-
</div>
</div>
-
</div>
-</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
-<div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
+</div>
+</div>
+</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs">
+<div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
-<div class="jp-InputPrompt jp-InputArea-prompt">In [2]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
-
-
- <div class="CodeMirror cm-s-jupyter">
- <div class="zeroclipboard-container">
- <clipboard-copy for="cell-3">
- <div>
- <span class="notice" hidden>Copied!</span>
- <svg aria-hidden="true" width="20" height="20" viewBox="0 0 16 16" version="1.1" data-view-component="true" class="clipboard-copy-icon">
- <path fill="currentColor" fill-rule="evenodd" d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z"></path>
- <path fill="currentColor" fill-rule="evenodd" d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z"></path>
- </svg>
- </div>
- </clipboard-copy>
- </div>
- <div class="highlight-ipynb hl-python "><pre><span></span><span class="kn">import</span> <span class="nn">os</span>
+<div class="jp-InputPrompt jp-InputArea-prompt">In [2]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
+<div class="CodeMirror cm-s-jupyter">
+<div class="zeroclipboard-container">
+<clipboard-copy for="cell-3">
+<div>
+<span class="notice" hidden="">Copied!</span>
+<svg aria-hidden="true" class="clipboard-copy-icon" data-view-component="true" height="20" version="1.1" viewbox="0 0 16 16" width="20">
+<path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+<path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+</svg>
+</div>
+</clipboard-copy>
+</div>
+<div class="highlight-ipynb hl-python"><pre><span></span><span class="kn">import</span> <span class="nn">os</span>
-<span class="n">os</span><span class="o">.</span><span class="n">environ</span><span class="p">[</span><span class="s2">"SP_USERNAME"</span><span class="p">]</span> <span class="o">=</span> <span class="s2">"admin@streampipes.apache.org"</span>
-<span class="n">os</span><span class="o">.</span><span class="n">environ</span><span class="p">[</span><span class="s2">"SP_API_KEY"</span><span class="p">]</span> <span class="o">=</span> <span class="s2">"XXX"</span>
+<span class="n">os</span><span class="o">.</span><span class="n">environ</span><span class="p">[</span><span class="s2">"SP_USERNAME"</span><span class="p">]</span> <span class="o">=</span> <span class="s2">"admin@streampipes.apache.org"</span>
+<span class="n">os</span><span class="o">.</span><span class="n">environ</span><span class="p">[</span><span class="s2">"SP_API_KEY"</span><span class="p">]</span> <span class="o">=</span> <span class="s2">"XXX"</span>
<span class="c1"># Use this if you work locally:</span>
-<span class="n">os</span><span class="o">.</span><span class="n">environ</span><span class="p">[</span><span class="s2">"BROKER-HOST"</span><span class="p">]</span> <span class="o">=</span> <span class="s2">"localhost"</span>
-<span class="n">os</span><span class="o">.</span><span class="n">environ</span><span class="p">[</span><span class="s2">"KAFKA-PORT"</span><span class="p">]</span> <span class="o">=</span> <span class="s2">"9094"</span> <span class="c1"># When using Kafka as message broker</span>
+<span class="n">os</span><span class="o">.</span><span class="n">environ</span><span class="p">[</span><span class="s2">"BROKER-HOST"</span><span class="p">]</span> <span class="o">=</span> <span class="s2">"localhost"</span>
+<span class="n">os</span><span class="o">.</span><span class="n">environ</span><span class="p">[</span><span class="s2">"KAFKA-PORT"</span><span class="p">]</span> <span class="o">=</span> <span class="s2">"9094"</span> <span class="c1"># When using Kafka as message broker</span>
</pre></div>
-<div id="cell-3" class="clipboard-copy-txt">import os
+<div class="clipboard-copy-txt" id="cell-3">import os
os.environ["SP_USERNAME"] = "admin@streampipes.apache.org"
os.environ["SP_API_KEY"] = "XXX"
@@ -2906,147 +2882,116 @@ os.environ["SP_API_KEY"] = "XXX"
# Use this if you work locally:
os.environ["BROKER-HOST"] = "localhost"
os.environ["KAFKA-PORT"] = "9094" # When using Kafka as message broker</div>
-
- </div>
- </div>
-
</div>
</div>
-
</div>
-</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell ">
-<div class="jp-Cell jp-CodeCell jp-Notebook-cell ">
+</div>
+</div>
+</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell">
+<div class="jp-Cell jp-CodeCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
-<div class="jp-InputPrompt jp-InputArea-prompt">In [3]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
-
-
- <div class="CodeMirror cm-s-jupyter">
- <div class="zeroclipboard-container">
- <clipboard-copy for="cell-4">
- <div>
- <span class="notice" hidden>Copied!</span>
- <svg aria-hidden="true" width="20" height="20" viewBox="0 0 16 16" version="1.1" data-view-component="true" class="clipboard-copy-icon">
- <path fill="currentColor" fill-rule="evenodd" d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z"></path>
- <path fill="currentColor" fill-rule="evenodd" d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z"></path>
- </svg>
- </div>
- </clipboard-copy>
- </div>
- <div class="highlight-ipynb hl-python "><pre><span></span><span class="n">client_config</span> <span class="o">=</span> <span class="n">StreamPipesClientConfig</span><span class="p">(</span>
+<div class="jp-InputPrompt jp-InputArea-prompt">In [3]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
+<div class="CodeMirror cm-s-jupyter">
+<div class="zeroclipboard-container">
+<clipboard-copy for="cell-4">
+<div>
+<span class="notice" hidden="">Copied!</span>
+<svg aria-hidden="true" class="clipboard-copy-icon" data-view-component="true" height="20" version="1.1" viewbox="0 0 16 16" width="20">
+<path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+<path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+</svg>
+</div>
+</clipboard-copy>
+</div>
+<div class="highlight-ipynb hl-python"><pre><span></span><span class="n">client_config</span> <span class="o">=</span> <span class="n">StreamPipesClientConfig</span><span class="p">(</span>
<span class="n">credential_provider</span><span class="o">=</span><span class="n">StreamPipesApiKeyCredentials</span><span class="p">(),</span>
- <span class="n">host_address</span><span class="o">=</span><span class="s2">"localhost"</span><span class="p">,</span>
+ <span class="n">host_address</span><span class="o">=</span><span class="s2">"localhost"</span><span class="p">,</span>
<span class="n">port</span><span class="o">=</span><span class="mi">80</span><span class="p">,</span>
<span class="n">https_disabled</span><span class="o">=</span><span class="kc">True</span><span class="p">,</span>
<span class="p">)</span>
<span class="n">client</span> <span class="o">=</span> <span class="n">StreamPipesClient</span><span class="p">(</span><span class="n">client_config</span><span class="o">=</span><span class="n">client_config</span><span class="p">)</span>
</pre></div>
-<div id="cell-4" class="clipboard-copy-txt">client_config = StreamPipesClientConfig(
+<div class="clipboard-copy-txt" id="cell-4">client_config = StreamPipesClientConfig(
credential_provider=StreamPipesApiKeyCredentials(),
host_address="localhost",
port=80,
https_disabled=True,
)
client = StreamPipesClient(client_config=client_config)</div>
-
- </div>
- </div>
-
</div>
</div>
-
+</div>
+</div>
<div class="jp-Cell-outputWrapper">
<div class="jp-Collapser jp-OutputCollapser jp-Cell-outputCollapser">
</div>
-
-
<div class="jp-OutputArea jp-Cell-outputArea">
<div class="jp-OutputArea-child">
-
- <div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
-
-
+<div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
<div class="jp-RenderedText jp-OutputArea-output" data-mime-type="text/plain">
<pre>2022-12-14 10:43:37,664 - streampipes.client.client - [INFO] - [client.py:127] [_set_up_logging] - Logging successfully initialized with logging level INFO.
</pre>
</div>
</div>
-
</div>
-
</div>
-
</div>
</div>
-<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
+<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
-</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput " data-mime-type="text/markdown">
+</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput" data-mime-type="text/markdown">
<p>Now we can have a look at the available data streams. We can choose one or more stream to receive the data from and copy their <code>element_id</code>.</p>
-
</div>
</div>
</div>
-</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell ">
-<div class="jp-Cell jp-CodeCell jp-Notebook-cell ">
+</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell">
+<div class="jp-Cell jp-CodeCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
-<div class="jp-InputPrompt jp-InputArea-prompt">In [4]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
-
-
- <div class="CodeMirror cm-s-jupyter">
- <div class="zeroclipboard-container">
- <clipboard-copy for="cell-5">
- <div>
- <span class="notice" hidden>Copied!</span>
- <svg aria-hidden="true" width="20" height="20" viewBox="0 0 16 16" version="1.1" data-view-component="true" class="clipboard-copy-icon">
- <path fill="currentColor" fill-rule="evenodd" d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z"></path>
- <path fill="currentColor" fill-rule="evenodd" d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z"></path>
- </svg>
- </div>
- </clipboard-copy>
- </div>
- <div class="highlight-ipynb hl-python "><pre><span></span><span class="n">client</span><span class="o">.</span><span class="n">dataStreamApi</span><span class="o">.</span><span class="n">all</span><span class="p">()</span><span class="o">.</span><span class="n">to_pandas</span><span class="p">()</span>
+<div class="jp-InputPrompt jp-InputArea-prompt">In [4]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
+<div class="CodeMirror cm-s-jupyter">
+<div class="zeroclipboard-container">
+<clipboard-copy for="cell-5">
+<div>
+<span class="notice" hidden="">Copied!</span>
+<svg aria-hidden="true" class="clipboard-copy-icon" data-view-component="true" height="20" version="1.1" viewbox="0 0 16 16" width="20">
+<path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+<path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+</svg>
+</div>
+</clipboard-copy>
+</div>
+<div class="highlight-ipynb hl-python"><pre><span></span><span class="n">client</span><span class="o">.</span><span class="n">dataStreamApi</span><span class="o">.</span><span class="n">all</span><span class="p">()</span><span class="o">.</span><span class="n">to_pandas</span><span class="p">()</span>
</pre></div>
-<div id="cell-5" class="clipboard-copy-txt">client.dataStreamApi.all().to_pandas()</div>
-
- </div>
- </div>
-
+<div class="clipboard-copy-txt" id="cell-5">client.dataStreamApi.all().to_pandas()</div>
+</div>
+</div>
</div>
</div>
-
<div class="jp-Cell-outputWrapper">
<div class="jp-Collapser jp-OutputCollapser jp-Cell-outputCollapser">
</div>
-
-
<div class="jp-OutputArea jp-Cell-outputArea">
<div class="jp-OutputArea-child">
-
- <div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
-
-
+<div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
<div class="jp-RenderedText jp-OutputArea-output" data-mime-type="text/plain">
<pre>2022-12-14 10:43:39,944 - streampipes.endpoint.endpoint - [INFO] - [endpoint.py:153] [_make_request] - Successfully retrieved all resources.
</pre>
</div>
</div>
<div class="jp-OutputArea-child jp-OutputArea-executeResult">
-
- <div class="jp-OutputPrompt jp-OutputArea-prompt">Out[4]:</div>
-
-
-
+<div class="jp-OutputPrompt jp-OutputArea-prompt">Out[4]:</div>
<div class="jp-RenderedHTMLCommon jp-RenderedHTML jp-OutputArea-output jp-OutputArea-executeResult" data-mime-type="text/html">
<div>
-<style scoped>
+<style scoped="">
.dataframe tbody tr th:only-of-type {
vertical-align: middle;
}
@@ -3060,135 +3005,128 @@ client = StreamPipesClient(client_config=client_config)</div>
}
</style>
<table border="1" class="dataframe">
- <thead>
- <tr style="text-align: right;">
- <th></th>
- <th>element_id</th>
- <th>name</th>
- <th>description</th>
- <th>icon_url</th>
- <th>app_id</th>
- <th>includes_assets</th>
- <th>includes_locales</th>
- <th>internally_managed</th>
- <th>measurement_object</th>
- <th>index</th>
- <th>...</th>
- <th>uri</th>
- <th>dom</th>
- <th>num_transport_protocols</th>
- <th>num_measurement_capability</th>
- <th>num_application_links</th>
- <th>num_included_assets</th>
- <th>num_connected_to</th>
- <th>num_category</th>
- <th>num_event_properties</th>
- <th>num_included_locales</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <th>0</th>
- <td>urn:streampipes.apache.org:eventstream:HHoidJ</td>
- <td>Test2</td>
- <td></td>
- <td>None</td>
- <td>None</td>
- <td>False</td>
- <td>False</td>
- <td>True</td>
- <td>None</td>
- <td>0</td>
- <td>...</td>
- <td>urn:streampipes.apache.org:eventstream:HHoidJ</td>
- <td>None</td>
- <td>1</td>
- <td>0</td>
- <td>0</td>
- <td>0</td>
- <td>0</td>
- <td>0</td>
- <td>7</td>
- <td>0</td>
- </tr>
- <tr>
- <th>1</th>
- <td>urn:streampipes.apache.org:eventstream:uPDKLI</td>
- <td>Test</td>
- <td></td>
- <td>None</td>
- <td>None</td>
- <td>False</td>
- <td>False</td>
- <td>True</td>
- <td>None</td>
- <td>0</td>
- <td>...</td>
- <td>urn:streampipes.apache.org:eventstream:uPDKLI</td>
- <td>None</td>
- <td>1</td>
- <td>0</td>
- <td>0</td>
- <td>0</td>
- <td>0</td>
- <td>0</td>
- <td>7</td>
- <td>0</td>
- </tr>
- </tbody>
+<thead>
+<tr style="text-align: right;">
+<th></th>
+<th>element_id</th>
+<th>name</th>
+<th>description</th>
+<th>icon_url</th>
+<th>app_id</th>
+<th>includes_assets</th>
+<th>includes_locales</th>
+<th>internally_managed</th>
+<th>measurement_object</th>
+<th>index</th>
+<th>...</th>
+<th>uri</th>
+<th>dom</th>
+<th>num_transport_protocols</th>
+<th>num_measurement_capability</th>
+<th>num_application_links</th>
+<th>num_included_assets</th>
+<th>num_connected_to</th>
+<th>num_category</th>
+<th>num_event_properties</th>
+<th>num_included_locales</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<th>0</th>
+<td>urn:streampipes.apache.org:eventstream:HHoidJ</td>
+<td>Test2</td>
+<td></td>
+<td>None</td>
+<td>None</td>
+<td>False</td>
+<td>False</td>
+<td>True</td>
+<td>None</td>
+<td>0</td>
+<td>...</td>
+<td>urn:streampipes.apache.org:eventstream:HHoidJ</td>
+<td>None</td>
+<td>1</td>
+<td>0</td>
+<td>0</td>
+<td>0</td>
+<td>0</td>
+<td>0</td>
+<td>7</td>
+<td>0</td>
+</tr>
+<tr>
+<th>1</th>
+<td>urn:streampipes.apache.org:eventstream:uPDKLI</td>
+<td>Test</td>
+<td></td>
+<td>None</td>
+<td>None</td>
+<td>False</td>
+<td>False</td>
+<td>True</td>
+<td>None</td>
+<td>0</td>
+<td>...</td>
+<td>urn:streampipes.apache.org:eventstream:uPDKLI</td>
+<td>None</td>
+<td>1</td>
+<td>0</td>
+<td>0</td>
+<td>0</td>
+<td>0</td>
+<td>0</td>
+<td>7</td>
+<td>0</td>
+</tr>
+</tbody>
</table>
<p>2 rows × 21 columns</p>
</div>
</div>
-
</div>
-
</div>
-
</div>
-
</div>
</div>
-<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
+<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
-</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput " data-mime-type="text/markdown">
-<p>Next we can create a StreamPipesFunction. For this we need to implement the 4 following methods:</p>
+</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput" data-mime-type="text/markdown">
+<p>Next we can create a StreamPipesFunction. For this we need to implement the 3 following methods:</p>
<ul>
-<li>In <code>requiredStreamIds</code> you need to insert the <code>element_id</code> of the required streams.</li>
<li><code>onServiceStarted</code> is called when the function gets started. There you can use the given meta information of the <code>FunctionContext</code> to initialize the function.</li>
<li><code>onEvent</code> is called when ever a new event arrives. The <code>event</code> contains the live data and you can use the <code>streamId</code> to identify a stream if the function is connected to multiple data streams.</li>
<li><code>onServiceStopped</code> is called when the function gets stopped.</li>
</ul>
<p>For this tutorial we just create a function that saves every new event in a <code>pandas DataFrame</code> and plots the first column of the <code>DataFrame</code> when the function gets stopped.</p>
-
+<p>(If you want to use the same structure as in Java you can overwrite the <code>getFunctionId</code> and <code>requiredStreamIds</code> methods instead of using the <code>FunctionDefinition</code>)</p>
</div>
</div>
</div>
-</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
-<div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
+</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs">
+<div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
-<div class="jp-InputPrompt jp-InputArea-prompt">In [5]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
-
-
- <div class="CodeMirror cm-s-jupyter">
- <div class="zeroclipboard-container">
- <clipboard-copy for="cell-6">
- <div>
- <span class="notice" hidden>Copied!</span>
- <svg aria-hidden="true" width="20" height="20" viewBox="0 0 16 16" version="1.1" data-view-component="true" class="clipboard-copy-icon">
- <path fill="currentColor" fill-rule="evenodd" d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z"></path>
- <path fill="currentColor" fill-rule="evenodd" d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z"></path>
- </svg>
- </div>
- </clipboard-copy>
- </div>
- <div class="highlight-ipynb hl-python "><pre><span></span><span class="kn">from</span> <span class="nn">typing</span> <span class="kn">import</span> <span class="n">List</span><span class="p">,</span> <span class="n">Dict</span><span class="p">,</span> <span class="n">Any</span>
+<div class="jp-InputPrompt jp-InputArea-prompt">In [5]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
+<div class="CodeMirror cm-s-jupyter">
+<div class="zeroclipboard-container">
+<clipboard-copy for="cell-6">
+<div>
+<span class="notice" hidden="">Copied!</span>
+<svg aria-hidden="true" class="clipboard-copy-icon" data-view-component="true" height="20" version="1.1" viewbox="0 0 16 16" width="20">
+<path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+<path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+</svg>
+</div>
+</clipboard-copy>
+</div>
+<div class="highlight-ipynb hl-python"><pre><span></span><span class="kn">from</span> <span class="nn">typing</span> <span class="kn">import</span> <span class="n">Dict</span><span class="p">,</span> <span class="n">Any</span>
<span class="kn">import</span> <span class="nn">pandas</span> <span class="k">as</span> <span class="nn">pd</span>
<span class="kn">from</span> <span class="nn">datetime</span> <span class="kn">import</span> <span class="n">datetime</span>
<span class="kn">import</span> <span class="nn">matplotlib.pyplot</span> <span class="k">as</span> <span class="nn">plt</span>
@@ -3196,21 +3134,18 @@ client = StreamPipesClient(client_config=client_config)</div>
<span class="kn">from</span> <span class="nn">streampipes.functions.registration</span> <span class="kn">import</span> <span class="n">Registration</span>
<span class="kn">from</span> <span class="nn">streampipes.functions.streampipes_function</span> <span class="kn">import</span> <span class="n">StreamPipesFunction</span>
<span class="kn">from</span> <span class="nn">streampipes.functions.utils.function_context</span> <span class="kn">import</span> <span class="n">FunctionContext</span>
-
+<span class="kn">from</span> <span class="nn">streampipes.model.resource.function_definition</span> <span class="kn">import</span> <span class="n">FunctionDefinition</span><span class="p">,</span> <span class="n">FunctionId</span>
<span class="k">class</span> <span class="nc">ExampleFunction</span><span class="p">(</span><span class="n">StreamPipesFunction</span><span class="p">):</span>
- <span class="k">def</span> <span class="fm">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> <span class="o">-></span> <span class="kc">None</span><span class="p">:</span>
- <span class="nb">super</span><span class="p">()</span><span class="o">.</span><span class="fm">__init__</span><span class="p">()</span>
+ <span class="k">def</span> <span class="fm">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">function_definition</span><span class="p">:</span> <span class="n">FunctionDefinition</span><span class="p">)</span> <span class="o">-></span> <span class="kc">None</span><span class="p">:</span>
+ <span class="nb">super</span><span class="p">()</span><span class="o">.</span><span class="fm">__init__</span><span class="p">(</span><span class="n">function_definition</span><span class="p">)</span>
<span class="c1"># Create the Dataframe to save the live data</span>
<span class="bp">self</span><span class="o">.</span><span class="n">df</span> <span class="o">=</span> <span class="n">pd</span><span class="o">.</span><span class="n">DataFrame</span><span class="p">()</span>
- <span class="k">def</span> <span class="nf">requiredStreamIds</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> <span class="o">-></span> <span class="n">List</span><span class="p">[</span><span class="nb">str</span><span class="p">]:</span>
- <span class="k">return</span> <span class="p">[</span><span class="s2">"urn:streampipes.apache.org:eventstream:uPDKLI"</span><span class="p">]</span>
-
<span class="k">def</span> <span class="nf">onServiceStarted</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">context</span><span class="p">:</span> <span class="n">FunctionContext</span><span class="p">):</span>
<span class="c1"># Get the name of the timestamp field</span>
<span class="k">for</span> <span class="n">event_property</span> <span class="ow">in</span> <span class="n">context</span><span class="o">.</span><span class="n">schema</span><span class="p">[</span><span class="n">context</span><span class="o">.</span><span class="n">streams</span><span class="p">[</span><span class="mi">0</span><span class="p">]]</span><span class="o">.</span><span class="n">event_schema</span><span class="o">.</span><span class="n">event_properties</span><span [...]
- <span class="k">if</span> <span class="n">event_property</span><span class="o">.</span><span class="n">property_scope</span> <span class="o">==</span> <span class="s2">"HEADER_PROPERTY"</span><span class="p">:</span>
+ <span class="k">if</span> <span class="n">event_property</span><span class="o">.</span><span class="n">property_scope</span> <span class="o">==</span> <span class="s2">"HEADER_PROPERTY"</span><span class="p">:</span>
<span class="bp">self</span><span class="o">.</span><span class="n">timestamp</span> <span class="o">=</span> <span class="n">event_property</span><span class="o">.</span><span class="n">runtime_name</span>
<span class="k">def</span> <span class="nf">onEvent</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">event</span><span class="p">:</span> <span class="n">Dict</span><span class="p">[</span><span class="nb">str</span><span class="p">,</span> <span class="n">Any</span><span class="p">],</span> <span class="n">streamId</span><span class="p">:</span> <span class="nb">str</span><span class="p">):</span>
@@ -3229,7 +3164,7 @@ client = StreamPipesClient(client_config=client_config)</div>
<span class="n">plt</span><span class="o">.</span><span class="n">plot</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">df</span><span class="o">.</span><span class="n">iloc</span><span class="p">[:,</span> <span class="mi">0</span><span class="p">])</span>
<span class="n">plt</span><span class="o">.</span><span class="n">show</span><span class="p">()</span>
</pre></div>
-<div id="cell-6" class="clipboard-copy-txt">from typing import List, Dict, Any
+<div class="clipboard-copy-txt" id="cell-6">from typing import Dict, Any
import pandas as pd
from datetime import datetime
import matplotlib.pyplot as plt
@@ -3237,17 +3172,14 @@ from streampipes.functions.function_handler import FunctionHandler
from streampipes.functions.registration import Registration
from streampipes.functions.streampipes_function import StreamPipesFunction
from streampipes.functions.utils.function_context import FunctionContext
-
+from streampipes.model.resource.function_definition import FunctionDefinition, FunctionId
class ExampleFunction(StreamPipesFunction):
- def __init__(self) -> None:
- super().__init__()
+ def __init__(self, function_definition: FunctionDefinition) -> None:
+ super().__init__(function_definition)
# Create the Dataframe to save the live data
self.df = pd.DataFrame()
- def requiredStreamIds(self) -> List[str]:
- return ["urn:streampipes.apache.org:eventstream:uPDKLI"]
-
def onServiceStarted(self, context: FunctionContext):
# Get the name of the timestamp field
for event_property in context.schema[context.streams[0]].event_schema.event_properties:
@@ -3269,48 +3201,47 @@ class ExampleFunction(StreamPipesFunction):
plt.ylabel(self.df.columns[0])
plt.plot(self.df.iloc[:, 0])
plt.show()</div>
-
- </div>
- </div>
-
</div>
</div>
-
</div>
</div>
-<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
+</div>
+</div>
+<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
-</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput " data-mime-type="text/markdown">
-<p>Now we can start the function. We have to register an instance of the <code>StreamPipesFunction</code> and them we can start the functions by initializing the <code>FunctionHandler</code>. (it's also possible to register multiple functions with <code>.register(...).register(...)</code>)</p>
-
+</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput" data-mime-type="text/markdown">
+<p>Now we can start the function. First we create an instance of the <code>ExampleFunction</code> and insert the <code>element_id</code> of the stream which data we want to consume. Then we have to register this function and we can start all functions by initializing the <code>FunctionHandler</code>. (it's also possible to register multiple functions with <code>.register(...).register(...)</code>)</p>
</div>
</div>
</div>
-</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell ">
-<div class="jp-Cell jp-CodeCell jp-Notebook-cell ">
+</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell">
+<div class="jp-Cell jp-CodeCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
-<div class="jp-InputPrompt jp-InputArea-prompt">In [6]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
-
-
- <div class="CodeMirror cm-s-jupyter">
- <div class="zeroclipboard-container">
- <clipboard-copy for="cell-7">
- <div>
- <span class="notice" hidden>Copied!</span>
- <svg aria-hidden="true" width="20" height="20" viewBox="0 0 16 16" version="1.1" data-view-component="true" class="clipboard-copy-icon">
- <path fill="currentColor" fill-rule="evenodd" d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z"></path>
- <path fill="currentColor" fill-rule="evenodd" d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z"></path>
- </svg>
- </div>
- </clipboard-copy>
- </div>
- <div class="highlight-ipynb hl-python "><pre><span></span><span class="n">example_function</span> <span class="o">=</span> <span class="n">ExampleFunction</span><span class="p">()</span>
+<div class="jp-InputPrompt jp-InputArea-prompt">In [6]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
+<div class="CodeMirror cm-s-jupyter">
+<div class="zeroclipboard-container">
+<clipboard-copy for="cell-7">
+<div>
+<span class="notice" hidden="">Copied!</span>
+<svg aria-hidden="true" class="clipboard-copy-icon" data-view-component="true" height="20" version="1.1" viewbox="0 0 16 16" width="20">
+<path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+<path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+</svg>
+</div>
+</clipboard-copy>
+</div>
+<div class="highlight-ipynb hl-python"><pre><span></span><span class="n">example_function</span> <span class="o">=</span> <span class="n">ExampleFunction</span><span class="p">(</span>
+ <span class="n">FunctionDefinition</span><span class="p">(</span>
+ <span class="n">function_id</span><span class="o">=</span><span class="n">FunctionId</span><span class="p">(</span><span class="nb">id</span><span class="o">=</span><span class="s2">"example-function"</span><span class="p">),</span>
+ <span class="n">consumed_streams</span><span class="o">=</span><span class="p">[</span><span class="s2">"urn:streampipes.apache.org:eventstream:uPDKLI"</span><span class="p">]</span>
+ <span class="p">)</span>
+<span class="p">)</span>
<span class="n">registration</span> <span class="o">=</span> <span class="n">Registration</span><span class="p">()</span>
<span class="n">registration</span><span class="o">.</span><span class="n">register</span><span class="p">(</span><span class="n">example_function</span><span class="p">)</span>
@@ -3318,77 +3249,68 @@ class ExampleFunction(StreamPipesFunction):
<span class="n">function_handler</span> <span class="o">=</span> <span class="n">FunctionHandler</span><span class="p">(</span><span class="n">registration</span><span class="p">,</span> <span class="n">client</span><span class="p">)</span>
<span class="n">function_handler</span><span class="o">.</span><span class="n">initializeFunctions</span><span class="p">()</span>
</pre></div>
-<div id="cell-7" class="clipboard-copy-txt">example_function = ExampleFunction()
+<div class="clipboard-copy-txt" id="cell-7">example_function = ExampleFunction(
+ FunctionDefinition(
+ function_id=FunctionId(id="example-function"),
+ consumed_streams=["urn:streampipes.apache.org:eventstream:uPDKLI"]
+ )
+)
registration = Registration()
registration.register(example_function)
function_handler = FunctionHandler(registration, client)
function_handler.initializeFunctions()</div>
-
- </div>
- </div>
-
</div>
</div>
-
+</div>
+</div>
<div class="jp-Cell-outputWrapper">
<div class="jp-Collapser jp-OutputCollapser jp-Cell-outputCollapser">
</div>
-
-
<div class="jp-OutputArea jp-Cell-outputArea">
<div class="jp-OutputArea-child">
-
- <div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
-
-
+<div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
<div class="jp-RenderedText jp-OutputArea-output" data-mime-type="text/plain">
<pre>2022-12-14 10:43:42,810 - streampipes.endpoint.endpoint - [INFO] - [endpoint.py:153] [_make_request] - Successfully retrieved all resources.
2022-12-14 10:43:42,812 - streampipes.functions.function_handler - [INFO] - [function_handler.py:82] [initializeFunctions] - Using NatsBroker for <__main__.ExampleFunction object at 0x000001F2EF298D90>
</pre>
</div>
</div>
-
</div>
-
</div>
-
</div>
</div>
-<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
+<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
-</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput " data-mime-type="text/markdown">
+</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput" data-mime-type="text/markdown">
<p>The <code>DataFrame</code> of the <code>ExampleFunction</code> gets updated whenever a new event arrives. Let's test this by executing the cell below.</p>
-
</div>
</div>
</div>
-</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell ">
-<div class="jp-Cell jp-CodeCell jp-Notebook-cell ">
+</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell">
+<div class="jp-Cell jp-CodeCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
-<div class="jp-InputPrompt jp-InputArea-prompt">In [7]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
-
-
- <div class="CodeMirror cm-s-jupyter">
- <div class="zeroclipboard-container">
- <clipboard-copy for="cell-8">
- <div>
- <span class="notice" hidden>Copied!</span>
- <svg aria-hidden="true" width="20" height="20" viewBox="0 0 16 16" version="1.1" data-view-component="true" class="clipboard-copy-icon">
- <path fill="currentColor" fill-rule="evenodd" d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z"></path>
- <path fill="currentColor" fill-rule="evenodd" d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z"></path>
- </svg>
- </div>
- </clipboard-copy>
- </div>
- <div class="highlight-ipynb hl-python "><pre><span></span><span class="kn">import</span> <span class="nn">asyncio</span>
+<div class="jp-InputPrompt jp-InputArea-prompt">In [7]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
+<div class="CodeMirror cm-s-jupyter">
+<div class="zeroclipboard-container">
+<clipboard-copy for="cell-8">
+<div>
+<span class="notice" hidden="">Copied!</span>
+<svg aria-hidden="true" class="clipboard-copy-icon" data-view-component="true" height="20" version="1.1" viewbox="0 0 16 16" width="20">
+<path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+<path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+</svg>
+</div>
+</clipboard-copy>
+</div>
+<div class="highlight-ipynb hl-python"><pre><span></span><span class="kn">import</span> <span class="nn">asyncio</span>
<span class="kn">from</span> <span class="nn">asyncio.exceptions</span> <span class="kn">import</span> <span class="n">CancelledError</span>
<span class="kn">from</span> <span class="nn">IPython.display</span> <span class="kn">import</span> <span class="n">clear_output</span>
@@ -3400,7 +3322,7 @@ function_handler.initializeFunctions()</div>
<span class="k">except</span> <span class="n">CancelledError</span><span class="p">:</span>
<span class="k">break</span>
</pre></div>
-<div id="cell-8" class="clipboard-copy-txt">import asyncio
+<div class="clipboard-copy-txt" id="cell-8">import asyncio
from asyncio.exceptions import CancelledError
from IPython.display import clear_output
@@ -3411,28 +3333,19 @@ while True:
await asyncio.sleep(1)
except CancelledError:
break</div>
-
- </div>
- </div>
-
</div>
</div>
-
+</div>
+</div>
<div class="jp-Cell-outputWrapper">
<div class="jp-Collapser jp-OutputCollapser jp-Cell-outputCollapser">
</div>
-
-
<div class="jp-OutputArea jp-Cell-outputArea">
<div class="jp-OutputArea-child">
-
- <div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
-
-
-
-<div class="jp-RenderedHTMLCommon jp-RenderedHTML jp-OutputArea-output " data-mime-type="text/html">
+<div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
+<div class="jp-RenderedHTMLCommon jp-RenderedHTML jp-OutputArea-output" data-mime-type="text/html">
<div>
-<style scoped>
+<style scoped="">
.dataframe tbody tr th:only-of-type {
vertical-align: middle;
}
@@ -3446,278 +3359,246 @@ while True:
}
</style>
<table border="1" class="dataframe">
- <thead>
- <tr style="text-align: right;">
- <th></th>
- <th>mass_flow</th>
- <th>density</th>
- <th>volume_flow</th>
- <th>sensor_fault_flags</th>
- <th>temperature</th>
- <th>sensorId</th>
- </tr>
- <tr>
- <th>timestamp</th>
- <th></th>
- <th></th>
- <th></th>
- <th></th>
- <th></th>
- <th></th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <th>2022-12-14 10:43:43.357</th>
- <td>10.955496</td>
- <td>47.546290</td>
- <td>1.001985</td>
- <td>False</td>
- <td>44.993413</td>
- <td>flowrate02</td>
- </tr>
- <tr>
- <th>2022-12-14 10:43:44.371</th>
- <td>6.499040</td>
- <td>44.392069</td>
- <td>2.034402</td>
- <td>False</td>
- <td>41.232352</td>
- <td>flowrate02</td>
- </tr>
- <tr>
- <th>2022-12-14 10:43:45.382</th>
- <td>10.168300</td>
- <td>41.192146</td>
- <td>9.724287</td>
- <td>False</td>
- <td>46.812779</td>
- <td>flowrate02</td>
- </tr>
- <tr>
- <th>2022-12-14 10:43:46.395</th>
- <td>10.849059</td>
- <td>50.086308</td>
- <td>5.832691</td>
- <td>False</td>
- <td>45.860412</td>
- <td>flowrate02</td>
- </tr>
- <tr>
- <th>2022-12-14 10:43:47.410</th>
- <td>3.081855</td>
- <td>47.254246</td>
- <td>8.860531</td>
- <td>False</td>
- <td>50.505801</td>
- <td>flowrate02</td>
- </tr>
- <tr>
- <th>...</th>
- <td>...</td>
- <td>...</td>
- <td>...</td>
- <td>...</td>
- <td>...</td>
- <td>...</td>
- </tr>
- <tr>
- <th>2022-12-14 10:44:43.920</th>
- <td>1.803572</td>
- <td>41.978894</td>
- <td>10.294002</td>
- <td>False</td>
- <td>47.820239</td>
- <td>flowrate02</td>
- </tr>
- <tr>
- <th>2022-12-14 10:44:44.932</th>
- <td>1.967062</td>
- <td>42.212883</td>
- <td>3.237440</td>
- <td>False</td>
- <td>49.047258</td>
- <td>flowrate02</td>
- </tr>
- <tr>
- <th>2022-12-14 10:44:45.934</th>
- <td>4.457819</td>
- <td>47.561256</td>
- <td>0.315024</td>
- <td>False</td>
- <td>40.223413</td>
- <td>flowrate02</td>
- </tr>
- <tr>
- <th>2022-12-14 10:44:46.949</th>
- <td>8.745343</td>
- <td>46.346891</td>
- <td>7.439090</td>
- <td>False</td>
- <td>41.982529</td>
- <td>flowrate02</td>
- </tr>
- <tr>
- <th>2022-12-14 10:44:47.950</th>
- <td>5.828744</td>
- <td>47.679720</td>
- <td>6.307405</td>
- <td>False</td>
- <td>42.100354</td>
- <td>flowrate02</td>
- </tr>
- </tbody>
+<thead>
+<tr style="text-align: right;">
+<th></th>
+<th>mass_flow</th>
+<th>density</th>
+<th>volume_flow</th>
+<th>sensor_fault_flags</th>
+<th>temperature</th>
+<th>sensorId</th>
+</tr>
+<tr>
+<th>timestamp</th>
+<th></th>
+<th></th>
+<th></th>
+<th></th>
+<th></th>
+<th></th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<th>2022-12-14 10:43:43.357</th>
+<td>10.955496</td>
+<td>47.546290</td>
+<td>1.001985</td>
+<td>False</td>
+<td>44.993413</td>
+<td>flowrate02</td>
+</tr>
+<tr>
+<th>2022-12-14 10:43:44.371</th>
+<td>6.499040</td>
+<td>44.392069</td>
+<td>2.034402</td>
+<td>False</td>
+<td>41.232352</td>
+<td>flowrate02</td>
+</tr>
+<tr>
+<th>2022-12-14 10:43:45.382</th>
+<td>10.168300</td>
+<td>41.192146</td>
+<td>9.724287</td>
+<td>False</td>
+<td>46.812779</td>
+<td>flowrate02</td>
+</tr>
+<tr>
+<th>2022-12-14 10:43:46.395</th>
+<td>10.849059</td>
+<td>50.086308</td>
+<td>5.832691</td>
+<td>False</td>
+<td>45.860412</td>
+<td>flowrate02</td>
+</tr>
+<tr>
+<th>2022-12-14 10:43:47.410</th>
+<td>3.081855</td>
+<td>47.254246</td>
+<td>8.860531</td>
+<td>False</td>
+<td>50.505801</td>
+<td>flowrate02</td>
+</tr>
+<tr>
+<th>...</th>
+<td>...</td>
+<td>...</td>
+<td>...</td>
+<td>...</td>
+<td>...</td>
+<td>...</td>
+</tr>
+<tr>
+<th>2022-12-14 10:44:43.920</th>
+<td>1.803572</td>
+<td>41.978894</td>
+<td>10.294002</td>
+<td>False</td>
+<td>47.820239</td>
+<td>flowrate02</td>
+</tr>
+<tr>
+<th>2022-12-14 10:44:44.932</th>
+<td>1.967062</td>
+<td>42.212883</td>
+<td>3.237440</td>
+<td>False</td>
+<td>49.047258</td>
+<td>flowrate02</td>
+</tr>
+<tr>
+<th>2022-12-14 10:44:45.934</th>
+<td>4.457819</td>
+<td>47.561256</td>
+<td>0.315024</td>
+<td>False</td>
+<td>40.223413</td>
+<td>flowrate02</td>
+</tr>
+<tr>
+<th>2022-12-14 10:44:46.949</th>
+<td>8.745343</td>
+<td>46.346891</td>
+<td>7.439090</td>
+<td>False</td>
+<td>41.982529</td>
+<td>flowrate02</td>
+</tr>
+<tr>
+<th>2022-12-14 10:44:47.950</th>
+<td>5.828744</td>
+<td>47.679720</td>
+<td>6.307405</td>
+<td>False</td>
+<td>42.100354</td>
+<td>flowrate02</td>
+</tr>
+</tbody>
</table>
<p>65 rows × 6 columns</p>
</div>
</div>
-
</div>
-
</div>
-
</div>
-
</div>
</div>
-<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
+<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
-</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput " data-mime-type="text/markdown">
+</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput" data-mime-type="text/markdown">
<p>The <code>while</code> loop just displays the the <code>DataFrame</code> every second until the cell is stopped. We could achieve the same result manually by executing <code>example_function.df</code> repeatedly.</p>
-
</div>
</div>
</div>
</div>
-<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
+<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
-</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput " data-mime-type="text/markdown">
+</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput" data-mime-type="text/markdown">
<p>You can stop the functions whenever you want by executing the command below.</p>
-
</div>
</div>
</div>
-</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell ">
-<div class="jp-Cell jp-CodeCell jp-Notebook-cell ">
+</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell">
+<div class="jp-Cell jp-CodeCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
-<div class="jp-InputPrompt jp-InputArea-prompt">In [ ]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
-
-
- <div class="CodeMirror cm-s-jupyter">
- <div class="zeroclipboard-container">
- <clipboard-copy for="cell-9">
- <div>
- <span class="notice" hidden>Copied!</span>
- <svg aria-hidden="true" width="20" height="20" viewBox="0 0 16 16" version="1.1" data-view-component="true" class="clipboard-copy-icon">
- <path fill="currentColor" fill-rule="evenodd" d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z"></path>
- <path fill="currentColor" fill-rule="evenodd" d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z"></path>
- </svg>
- </div>
- </clipboard-copy>
- </div>
- <div class="highlight-ipynb hl-python "><pre><span></span><span class="n">function_handler</span><span class="o">.</span><span class="n">disconnect</span><span class="p">()</span>
+<div class="jp-InputPrompt jp-InputArea-prompt">In [ ]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
+<div class="CodeMirror cm-s-jupyter">
+<div class="zeroclipboard-container">
+<clipboard-copy for="cell-9">
+<div>
+<span class="notice" hidden="">Copied!</span>
+<svg aria-hidden="true" class="clipboard-copy-icon" data-view-component="true" height="20" version="1.1" viewbox="0 0 16 16" width="20">
+<path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+<path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+</svg>
+</div>
+</clipboard-copy>
+</div>
+<div class="highlight-ipynb hl-python"><pre><span></span><span class="n">function_handler</span><span class="o">.</span><span class="n">disconnect</span><span class="p">()</span>
</pre></div>
-<div id="cell-9" class="clipboard-copy-txt">function_handler.disconnect()</div>
-
- </div>
- </div>
-
+<div class="clipboard-copy-txt" id="cell-9">function_handler.disconnect()</div>
+</div>
+</div>
</div>
</div>
-
<div class="jp-Cell-outputWrapper">
<div class="jp-Collapser jp-OutputCollapser jp-Cell-outputCollapser">
</div>
-
-
<div class="jp-OutputArea jp-Cell-outputArea">
<div class="jp-OutputArea-child">
-
- <div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
-
-
+<div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
<div class="jp-RenderedText jp-OutputArea-output" data-mime-type="text/plain">
<pre>2022-12-14 10:44:53,309 - streampipes.functions.broker.nats_broker - [INFO] - [nats_broker.py:67] [disconnect] - Stopped connection to stream: urn:streampipes.apache.org:eventstream:uPDKLI
</pre>
</div>
</div>
<div class="jp-OutputArea-child">
-
- <div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
-
-
-
-
-<div class="jp-RenderedImage jp-OutputArea-output ">
-<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA0oAAAHACAYAAACcbph6AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/NK7nSAAAACXBIWXMAAA9hAAAPYQGoP6dpAADoXElEQVR4nOy9d5gkZ3X2fVfn7skzm6NW2lXOIAESSQSbnF6DMRhj3tefE7YMOArb7/cZbGTAxhiMCbaxwCZjgzFgEZWQBEIoIZR2tWk2ze7kmc7dVd8fVeep6p4OFZ5KPed3XXtd0sSa7grPee773EfRNE0DwzAMwzAMwzAMI0iEfQAMwzAMwzAMwzBRgwslhmEYhmEYhmGYNrhQYhiGYRiGYRiGaYMLJYZhGIZhGIZhmDa4UGIYhmEYhmEYhmmDCyWGYRiGYRiGYZg2uFBiGIZhGIZhGIZpgwsl [...]
-class="
-"
->
+<div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
+<div class="jp-RenderedImage jp-OutputArea-output">
+<img alt="No description has been provided for this image" class="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA0oAAAHACAYAAACcbph6AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/NK7nSAAAACXBIWXMAAA9hAAAPYQGoP6dpAADoXElEQVR4nOy9d5gkZ3X2fVfn7skzm6NW2lXOIAESSQSbnF6DMRhj3tefE7YMOArb7/cZbGTAxhiMCbaxwCZjgzFgEZWQBEIoIZR2tWk2ze7kmc7dVd8fVeep6p4OFZ5KPed3XXtd0sSa7grPee773EfRNE0DwzAMwzAMwzAMI0iEfQAMwzAMwzAMwzBRgwslhmEYhmEYhmGYNrhQYhiGYRiGYRiGaYMLJYZhG [...]
</div>
-
</div>
-
</div>
-
</div>
-
</div>
</div>
-<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
+<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
-</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput " data-mime-type="text/markdown">
+</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput" data-mime-type="text/markdown">
<p>That's enough for this tutorial. Now you can try to write your own <code>StreamPipesFunction</code>. All you need to do is creating a new class, implementing the 4 required methods and registering the function.</p>
-
</div>
</div>
</div>
</div>
-<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
+<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
-</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput " data-mime-type="text/markdown">
+</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput" data-mime-type="text/markdown">
<p>Want to see more exciting use cases you can achieve with StreamPipes functions in Python? Then don't hesitate and jump to our <a href="../4-using-online-machine-learning-on-a-streampipes-data-stream">next tutorial</a> on applying online machine learning algorithms to StreamPipes data streams with <a href="https://riverml.xyz">River</a>.</p>
-
</div>
</div>
</div>
</div>
-<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
+<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
-</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput " data-mime-type="text/markdown">
+</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput" data-mime-type="text/markdown">
<p>How do you like this tutorial?
We hope you like it and would love to receive some feedback from you.
Just go to our <a href="https://github.com/apache/streampipes/discussions">GitHub discussion page</a> and let us know your impression.
We'll read and react to them all, we promise!</p>
-
</div>
</div>
</div>
</div>
-<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
+<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
-</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput " data-mime-type="text/markdown">
-
+</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput" data-mime-type="text/markdown">
</div>
</div>
</div>
@@ -3726,7 +3607,6 @@ We'll read and react to them all, we promise!</p>
-
diff --git a/docs/docs/python/dev/tutorials/4-using-online-machine-learning-on-a-streampipes-data-stream/index.html b/docs/docs/python/dev/tutorials/4-using-online-machine-learning-on-a-streampipes-data-stream/index.html
index 5281b731..bdfd2462 100644
--- a/docs/docs/python/dev/tutorials/4-using-online-machine-learning-on-a-streampipes-data-stream/index.html
+++ b/docs/docs/python/dev/tutorials/4-using-online-machine-learning-on-a-streampipes-data-stream/index.html
@@ -40,7 +40,7 @@
<link rel="next" href="../../reference/client/client/">
<link rel="icon" href="https://streampipes.apache.org/img/favicon/favicon.png">
- <meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.1.3">
+ <meta name="generator" content="mkdocs-1.5.1, mkdocs-material-9.1.3">
@@ -1990,10 +1990,6 @@
}, 1000)
})
</script>
-
-
-
-
<style type="text/css">
pre { line-height: 125%; }
@@ -2045,10 +2041,6 @@ span.linenos.special { color: #000000; background-color: #ffffc0; padding-left:
.highlight-ipynb .ss { color: var(--jp-mirror-editor-string-color) } /* Literal.String.Symbol */
.highlight-ipynb .il { color: var(--jp-mirror-editor-number-color) } /* Literal.Number.Integer.Long */
</style>
-
-
-
-
<style type="text/css">
/*
This file is taken from the built JupyterLab theme.css
@@ -2824,12 +2816,10 @@ Licensed under the Apache License, Version 2.0.
*/}.jupyter-wrapper [data-jp-theme-scrollbars=true]{scrollbar-color:rgb(var(--jp-scrollbar-thumb-color)) var(--jp-scrollbar-background-color)}.jupyter-wrapper [data-jp-theme-scrollbars=true] .CodeMirror-hscrollbar,.jupyter-wrapper [data-jp-theme-scrollbars=true] .CodeMirror-vscrollbar{scrollbar-color:rgba(var(--jp-scrollbar-thumb-color), 0.5) rgba(0,0,0,0)}.jupyter-wrapper [data-jp-theme-scrollbars=true] ::-webkit-scrollbar,.jupyter-wrapper [data-jp-theme-scrollbars=true] ::-webkit-scrol [...]
/*# sourceMappingURL=mkdocs-jupyter.css.map*/</style>
-
-
<!-- Load mathjax -->
- <script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/latest.js?config=TeX-AMS_CHTML-full,Safe"> </script>
- <!-- MathJax configuration -->
- <script type="text/x-mathjax-config">
+<script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/latest.js?config=TeX-AMS_CHTML-full,Safe"> </script>
+<!-- MathJax configuration -->
+<script type="text/x-mathjax-config">
init_mathjax = function() {
if (window.MathJax) {
// MathJax loaded
@@ -2859,119 +2849,106 @@ Licensed under the Apache License, Version 2.0.
}
init_mathjax();
</script>
- <!-- End of mathjax configuration --><div class="jupyter-wrapper">
-<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
+<!-- End of mathjax configuration --><div class="jupyter-wrapper">
+<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
-</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput " data-mime-type="text/markdown">
-<h1 id="Using-Online-Machine-Learning-on-a-StreamPipes-data-stream">Using Online Machine Learning on a StreamPipes data stream<a class="anchor-link" href="#Using-Online-Machine-Learning-on-a-StreamPipes-data-stream">¶</a></h1><p>The last tutorial (<a href="../3-getting-live-data-from-the-streampipes-data-stream">Getting live data from the StreamPipes data stream</a>) showed how we can connect to a data stream, and it would be possible to use Online Machine Learning with this approac [...]
-
+</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput" data-mime-type="text/markdown">
+<h1 id="Using-Online-Machine-Learning-on-a-StreamPipes-data-stream">Using Online Machine Learning on a StreamPipes data stream<a class="anchor-link" href="#Using-Online-Machine-Learning-on-a-StreamPipes-data-stream">¶</a></h1><p>The last tutorial (<a href="../3-getting-live-data-from-the-streampipes-data-stream">Getting live data from the StreamPipes data stream</a>) showed how we can connect to a data stream, and it would be possible to use Online Machine Learning with this approach and [...]
</div>
</div>
</div>
-</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
-<div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
+</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs">
+<div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
-<div class="jp-InputPrompt jp-InputArea-prompt">In [1]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
-
-
- <div class="CodeMirror cm-s-jupyter">
- <div class="zeroclipboard-container">
- <clipboard-copy for="cell-1">
- <div>
- <span class="notice" hidden>Copied!</span>
- <svg aria-hidden="true" width="20" height="20" viewBox="0 0 16 16" version="1.1" data-view-component="true" class="clipboard-copy-icon">
- <path fill="currentColor" fill-rule="evenodd" d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z"></path>
- <path fill="currentColor" fill-rule="evenodd" d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z"></path>
- </svg>
- </div>
- </clipboard-copy>
- </div>
- <div class="highlight-ipynb hl-python "><pre><span></span><span class="kn">from</span> <span class="nn">streampipes.client</span> <span class="kn">import</span> <span class="n">StreamPipesClient</span>
+<div class="jp-InputPrompt jp-InputArea-prompt">In [1]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
+<div class="CodeMirror cm-s-jupyter">
+<div class="zeroclipboard-container">
+<clipboard-copy for="cell-1">
+<div>
+<span class="notice" hidden="">Copied!</span>
+<svg aria-hidden="true" class="clipboard-copy-icon" data-view-component="true" height="20" version="1.1" viewbox="0 0 16 16" width="20">
+<path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+<path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+</svg>
+</div>
+</clipboard-copy>
+</div>
+<div class="highlight-ipynb hl-python"><pre><span></span><span class="kn">from</span> <span class="nn">streampipes.client</span> <span class="kn">import</span> <span class="n">StreamPipesClient</span>
<span class="kn">from</span> <span class="nn">streampipes.client.config</span> <span class="kn">import</span> <span class="n">StreamPipesClientConfig</span>
<span class="kn">from</span> <span class="nn">streampipes.client.credential_provider</span> <span class="kn">import</span> <span class="n">StreamPipesApiKeyCredentials</span>
</pre></div>
-<div id="cell-1" class="clipboard-copy-txt">from streampipes.client import StreamPipesClient
+<div class="clipboard-copy-txt" id="cell-1">from streampipes.client import StreamPipesClient
from streampipes.client.config import StreamPipesClientConfig
from streampipes.client.credential_provider import StreamPipesApiKeyCredentials</div>
-
- </div>
- </div>
-
</div>
</div>
-
</div>
-</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
-<div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
+</div>
+</div>
+</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs">
+<div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
-<div class="jp-InputPrompt jp-InputArea-prompt">In [ ]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
-
-
- <div class="CodeMirror cm-s-jupyter">
- <div class="zeroclipboard-container">
- <clipboard-copy for="cell-2">
- <div>
- <span class="notice" hidden>Copied!</span>
- <svg aria-hidden="true" width="20" height="20" viewBox="0 0 16 16" version="1.1" data-view-component="true" class="clipboard-copy-icon">
- <path fill="currentColor" fill-rule="evenodd" d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z"></path>
- <path fill="currentColor" fill-rule="evenodd" d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z"></path>
- </svg>
- </div>
- </clipboard-copy>
- </div>
- <div class="highlight-ipynb hl-python "><pre><span></span><span class="c1"># you can install all required dependecies for this tutorial by executing the following command</span>
+<div class="jp-InputPrompt jp-InputArea-prompt">In [ ]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
+<div class="CodeMirror cm-s-jupyter">
+<div class="zeroclipboard-container">
+<clipboard-copy for="cell-2">
+<div>
+<span class="notice" hidden="">Copied!</span>
+<svg aria-hidden="true" class="clipboard-copy-icon" data-view-component="true" height="20" version="1.1" viewbox="0 0 16 16" width="20">
+<path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+<path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+</svg>
+</div>
+</clipboard-copy>
+</div>
+<div class="highlight-ipynb hl-python"><pre><span></span><span class="c1"># you can install all required dependecies for this tutorial by executing the following command</span>
<span class="o">%</span><span class="n">pip</span> <span class="n">install</span> <span class="n">river</span> <span class="n">streampipes</span>
</pre></div>
-<div id="cell-2" class="clipboard-copy-txt"># you can install all required dependecies for this tutorial by executing the following command
+<div class="clipboard-copy-txt" id="cell-2"># you can install all required dependecies for this tutorial by executing the following command
%pip install river streampipes</div>
-
- </div>
- </div>
-
</div>
</div>
-
</div>
-</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
-<div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
+</div>
+</div>
+</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs">
+<div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
-<div class="jp-InputPrompt jp-InputArea-prompt">In [2]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
-
-
- <div class="CodeMirror cm-s-jupyter">
- <div class="zeroclipboard-container">
- <clipboard-copy for="cell-3">
- <div>
- <span class="notice" hidden>Copied!</span>
- <svg aria-hidden="true" width="20" height="20" viewBox="0 0 16 16" version="1.1" data-view-component="true" class="clipboard-copy-icon">
- <path fill="currentColor" fill-rule="evenodd" d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z"></path>
- <path fill="currentColor" fill-rule="evenodd" d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z"></path>
- </svg>
- </div>
- </clipboard-copy>
- </div>
- <div class="highlight-ipynb hl-python "><pre><span></span><span class="kn">import</span> <span class="nn">os</span>
+<div class="jp-InputPrompt jp-InputArea-prompt">In [2]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
+<div class="CodeMirror cm-s-jupyter">
+<div class="zeroclipboard-container">
+<clipboard-copy for="cell-3">
+<div>
+<span class="notice" hidden="">Copied!</span>
+<svg aria-hidden="true" class="clipboard-copy-icon" data-view-component="true" height="20" version="1.1" viewbox="0 0 16 16" width="20">
+<path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+<path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+</svg>
+</div>
+</clipboard-copy>
+</div>
+<div class="highlight-ipynb hl-python"><pre><span></span><span class="kn">import</span> <span class="nn">os</span>
-<span class="n">os</span><span class="o">.</span><span class="n">environ</span><span class="p">[</span><span class="s2">"SP_USERNAME"</span><span class="p">]</span> <span class="o">=</span> <span class="s2">"admin@streampipes.apache.org"</span>
-<span class="n">os</span><span class="o">.</span><span class="n">environ</span><span class="p">[</span><span class="s2">"SP_API_KEY"</span><span class="p">]</span> <span class="o">=</span> <span class="s2">"XXX"</span>
+<span class="n">os</span><span class="o">.</span><span class="n">environ</span><span class="p">[</span><span class="s2">"SP_USERNAME"</span><span class="p">]</span> <span class="o">=</span> <span class="s2">"admin@streampipes.apache.org"</span>
+<span class="n">os</span><span class="o">.</span><span class="n">environ</span><span class="p">[</span><span class="s2">"SP_API_KEY"</span><span class="p">]</span> <span class="o">=</span> <span class="s2">"XXX"</span>
<span class="c1"># Use this if you work locally:</span>
-<span class="n">os</span><span class="o">.</span><span class="n">environ</span><span class="p">[</span><span class="s2">"BROKER-HOST"</span><span class="p">]</span> <span class="o">=</span> <span class="s2">"localhost"</span>
-<span class="n">os</span><span class="o">.</span><span class="n">environ</span><span class="p">[</span><span class="s2">"KAFKA-PORT"</span><span class="p">]</span> <span class="o">=</span> <span class="s2">"9094"</span> <span class="c1"># When using Kafka as message broker</span>
+<span class="n">os</span><span class="o">.</span><span class="n">environ</span><span class="p">[</span><span class="s2">"BROKER-HOST"</span><span class="p">]</span> <span class="o">=</span> <span class="s2">"localhost"</span>
+<span class="n">os</span><span class="o">.</span><span class="n">environ</span><span class="p">[</span><span class="s2">"KAFKA-PORT"</span><span class="p">]</span> <span class="o">=</span> <span class="s2">"9094"</span> <span class="c1"># When using Kafka as message broker</span>
</pre></div>
-<div id="cell-3" class="clipboard-copy-txt">import os
+<div class="clipboard-copy-txt" id="cell-3">import os
os.environ["SP_USERNAME"] = "admin@streampipes.apache.org"
os.environ["SP_API_KEY"] = "XXX"
@@ -2979,135 +2956,105 @@ os.environ["SP_API_KEY"] = "XXX"
# Use this if you work locally:
os.environ["BROKER-HOST"] = "localhost"
os.environ["KAFKA-PORT"] = "9094" # When using Kafka as message broker</div>
-
- </div>
- </div>
-
</div>
</div>
-
</div>
-</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell ">
-<div class="jp-Cell jp-CodeCell jp-Notebook-cell ">
+</div>
+</div>
+</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell">
+<div class="jp-Cell jp-CodeCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
-<div class="jp-InputPrompt jp-InputArea-prompt">In [3]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
-
-
- <div class="CodeMirror cm-s-jupyter">
- <div class="zeroclipboard-container">
- <clipboard-copy for="cell-4">
- <div>
- <span class="notice" hidden>Copied!</span>
- <svg aria-hidden="true" width="20" height="20" viewBox="0 0 16 16" version="1.1" data-view-component="true" class="clipboard-copy-icon">
- <path fill="currentColor" fill-rule="evenodd" d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z"></path>
- <path fill="currentColor" fill-rule="evenodd" d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z"></path>
- </svg>
- </div>
- </clipboard-copy>
- </div>
- <div class="highlight-ipynb hl-python "><pre><span></span><span class="n">client_config</span> <span class="o">=</span> <span class="n">StreamPipesClientConfig</span><span class="p">(</span>
+<div class="jp-InputPrompt jp-InputArea-prompt">In [3]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
+<div class="CodeMirror cm-s-jupyter">
+<div class="zeroclipboard-container">
+<clipboard-copy for="cell-4">
+<div>
+<span class="notice" hidden="">Copied!</span>
+<svg aria-hidden="true" class="clipboard-copy-icon" data-view-component="true" height="20" version="1.1" viewbox="0 0 16 16" width="20">
+<path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+<path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+</svg>
+</div>
+</clipboard-copy>
+</div>
+<div class="highlight-ipynb hl-python"><pre><span></span><span class="n">client_config</span> <span class="o">=</span> <span class="n">StreamPipesClientConfig</span><span class="p">(</span>
<span class="n">credential_provider</span><span class="o">=</span><span class="n">StreamPipesApiKeyCredentials</span><span class="p">(),</span>
- <span class="n">host_address</span><span class="o">=</span><span class="s2">"localhost"</span><span class="p">,</span>
+ <span class="n">host_address</span><span class="o">=</span><span class="s2">"localhost"</span><span class="p">,</span>
<span class="n">port</span><span class="o">=</span><span class="mi">80</span><span class="p">,</span>
<span class="n">https_disabled</span><span class="o">=</span><span class="kc">True</span><span class="p">,</span>
<span class="p">)</span>
<span class="n">client</span> <span class="o">=</span> <span class="n">StreamPipesClient</span><span class="p">(</span><span class="n">client_config</span><span class="o">=</span><span class="n">client_config</span><span class="p">)</span>
</pre></div>
-<div id="cell-4" class="clipboard-copy-txt">client_config = StreamPipesClientConfig(
+<div class="clipboard-copy-txt" id="cell-4">client_config = StreamPipesClientConfig(
credential_provider=StreamPipesApiKeyCredentials(),
host_address="localhost",
port=80,
https_disabled=True,
)
client = StreamPipesClient(client_config=client_config)</div>
-
- </div>
- </div>
-
</div>
</div>
-
+</div>
+</div>
<div class="jp-Cell-outputWrapper">
<div class="jp-Collapser jp-OutputCollapser jp-Cell-outputCollapser">
</div>
-
-
<div class="jp-OutputArea jp-Cell-outputArea">
<div class="jp-OutputArea-child">
-
- <div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
-
-
+<div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
<div class="jp-RenderedText jp-OutputArea-output" data-mime-type="text/plain">
<pre>2023-01-27 16:04:24,784 - streampipes.client.client - [INFO] - [client.py:128] [_set_up_logging] - Logging successfully initialized with logging level INFO.
</pre>
</div>
</div>
-
</div>
-
</div>
-
</div>
-</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell ">
-<div class="jp-Cell jp-CodeCell jp-Notebook-cell ">
+</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell">
+<div class="jp-Cell jp-CodeCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
-<div class="jp-InputPrompt jp-InputArea-prompt">In [4]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
-
-
- <div class="CodeMirror cm-s-jupyter">
- <div class="zeroclipboard-container">
- <clipboard-copy for="cell-5">
- <div>
- <span class="notice" hidden>Copied!</span>
- <svg aria-hidden="true" width="20" height="20" viewBox="0 0 16 16" version="1.1" data-view-component="true" class="clipboard-copy-icon">
- <path fill="currentColor" fill-rule="evenodd" d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z"></path>
- <path fill="currentColor" fill-rule="evenodd" d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z"></path>
- </svg>
- </div>
- </clipboard-copy>
- </div>
- <div class="highlight-ipynb hl-python "><pre><span></span><span class="n">client</span><span class="o">.</span><span class="n">dataStreamApi</span><span class="o">.</span><span class="n">all</span><span class="p">()</span><span class="o">.</span><span class="n">to_pandas</span><span class="p">()</span>
+<div class="jp-InputPrompt jp-InputArea-prompt">In [4]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
+<div class="CodeMirror cm-s-jupyter">
+<div class="zeroclipboard-container">
+<clipboard-copy for="cell-5">
+<div>
+<span class="notice" hidden="">Copied!</span>
+<svg aria-hidden="true" class="clipboard-copy-icon" data-view-component="true" height="20" version="1.1" viewbox="0 0 16 16" width="20">
+<path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+<path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+</svg>
+</div>
+</clipboard-copy>
+</div>
+<div class="highlight-ipynb hl-python"><pre><span></span><span class="n">client</span><span class="o">.</span><span class="n">dataStreamApi</span><span class="o">.</span><span class="n">all</span><span class="p">()</span><span class="o">.</span><span class="n">to_pandas</span><span class="p">()</span>
</pre></div>
-<div id="cell-5" class="clipboard-copy-txt">client.dataStreamApi.all().to_pandas()</div>
-
- </div>
- </div>
-
+<div class="clipboard-copy-txt" id="cell-5">client.dataStreamApi.all().to_pandas()</div>
+</div>
+</div>
</div>
</div>
-
<div class="jp-Cell-outputWrapper">
<div class="jp-Collapser jp-OutputCollapser jp-Cell-outputCollapser">
</div>
-
-
<div class="jp-OutputArea jp-Cell-outputArea">
<div class="jp-OutputArea-child">
-
- <div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
-
-
+<div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
<div class="jp-RenderedText jp-OutputArea-output" data-mime-type="text/plain">
<pre>2023-01-27 16:04:28,212 - streampipes.endpoint.endpoint - [INFO] - [endpoint.py:163] [_make_request] - Successfully retrieved all resources.
</pre>
</div>
</div>
<div class="jp-OutputArea-child jp-OutputArea-executeResult">
-
- <div class="jp-OutputPrompt jp-OutputArea-prompt">Out[4]:</div>
-
-
-
+<div class="jp-OutputPrompt jp-OutputArea-prompt">Out[4]:</div>
<div class="jp-RenderedHTMLCommon jp-RenderedHTML jp-OutputArea-output jp-OutputArea-executeResult" data-mime-type="text/html">
<div>
-<style scoped>
+<style scoped="">
.dataframe tbody tr th:only-of-type {
vertical-align: middle;
}
@@ -3121,102 +3068,98 @@ client = StreamPipesClient(client_config=client_config)</div>
}
</style>
<table border="1" class="dataframe">
- <thead>
- <tr style="text-align: right;">
- <th></th>
- <th>element_id</th>
- <th>name</th>
- <th>description</th>
- <th>icon_url</th>
- <th>app_id</th>
- <th>includes_assets</th>
- <th>includes_locales</th>
- <th>internally_managed</th>
- <th>measurement_object</th>
- <th>index</th>
- <th>...</th>
- <th>dom</th>
- <th>rev</th>
- <th>num_transport_protocols</th>
- <th>num_measurement_capability</th>
- <th>num_application_links</th>
- <th>num_included_assets</th>
- <th>num_connected_to</th>
- <th>num_category</th>
- <th>num_event_properties</th>
- <th>num_included_locales</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <th>0</th>
- <td>sp:spdatastream:xboBFK</td>
- <td>Test</td>
- <td></td>
- <td>None</td>
- <td>None</td>
- <td>False</td>
- <td>False</td>
- <td>True</td>
- <td>None</td>
- <td>0</td>
- <td>...</td>
- <td>None</td>
- <td>5-558c861debc745e1ebae29a266a8bdb9</td>
- <td>1</td>
- <td>0</td>
- <td>0</td>
- <td>0</td>
- <td>0</td>
- <td>0</td>
- <td>7</td>
- <td>0</td>
- </tr>
- <tr>
- <th>1</th>
- <td>urn:streampipes.apache.org:eventstream:Wgyrse</td>
- <td>Test File</td>
- <td></td>
- <td>None</td>
- <td>None</td>
- <td>False</td>
- <td>False</td>
- <td>True</td>
- <td>None</td>
- <td>0</td>
- <td>...</td>
- <td>None</td>
- <td>4-66548b6b84287011b7cec0876ef82baf</td>
- <td>1</td>
- <td>0</td>
- <td>0</td>
- <td>0</td>
- <td>0</td>
- <td>0</td>
- <td>2</td>
- <td>0</td>
- </tr>
- </tbody>
+<thead>
+<tr style="text-align: right;">
+<th></th>
+<th>element_id</th>
+<th>name</th>
+<th>description</th>
+<th>icon_url</th>
+<th>app_id</th>
+<th>includes_assets</th>
+<th>includes_locales</th>
+<th>internally_managed</th>
+<th>measurement_object</th>
+<th>index</th>
+<th>...</th>
+<th>dom</th>
+<th>rev</th>
+<th>num_transport_protocols</th>
+<th>num_measurement_capability</th>
+<th>num_application_links</th>
+<th>num_included_assets</th>
+<th>num_connected_to</th>
+<th>num_category</th>
+<th>num_event_properties</th>
+<th>num_included_locales</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<th>0</th>
+<td>sp:spdatastream:xboBFK</td>
+<td>Test</td>
+<td></td>
+<td>None</td>
+<td>None</td>
+<td>False</td>
+<td>False</td>
+<td>True</td>
+<td>None</td>
+<td>0</td>
+<td>...</td>
+<td>None</td>
+<td>5-558c861debc745e1ebae29a266a8bdb9</td>
+<td>1</td>
+<td>0</td>
+<td>0</td>
+<td>0</td>
+<td>0</td>
+<td>0</td>
+<td>7</td>
+<td>0</td>
+</tr>
+<tr>
+<th>1</th>
+<td>urn:streampipes.apache.org:eventstream:Wgyrse</td>
+<td>Test File</td>
+<td></td>
+<td>None</td>
+<td>None</td>
+<td>False</td>
+<td>False</td>
+<td>True</td>
+<td>None</td>
+<td>0</td>
+<td>...</td>
+<td>None</td>
+<td>4-66548b6b84287011b7cec0876ef82baf</td>
+<td>1</td>
+<td>0</td>
+<td>0</td>
+<td>0</td>
+<td>0</td>
+<td>0</td>
+<td>2</td>
+<td>0</td>
+</tr>
+</tbody>
</table>
<p>2 rows × 22 columns</p>
</div>
</div>
-
</div>
-
</div>
-
</div>
-
</div>
</div>
-<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
+<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
-</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput " data-mime-type="text/markdown">
-<h2 id="How-to-use-Online-Machine-Learning-with-StreamPipes">How to use Online Machine Learning with StreamPipes<a class="anchor-link" href="#How-to-use-Online-Machine-Learning-with-StreamPipes">¶</a></h2><p>After we configured the client as usual, we can start with the new part.<br />
+</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput" data-mime-type="text/markdown">
+<h2 id="How-to-use-Online-Machine-Learning-with-StreamPipes">How to use Online Machine Learning with StreamPipes<a class="anchor-link" href="#How-to-use-Online-Machine-Learning-with-StreamPipes">¶</a></h2><p>After we configured the client as usual, we can start with the new part.<br/>
The approach is straight forward and you can start with the ML part in just 3 steps:</p>
<ol>
<li>Create a pipeline with River and insert the preprocessing steps and model of your choice.</li>
@@ -3226,58 +3169,55 @@ The approach is straight forward and you can start with the ML part in just 3 st
<p>A StreamPipesFunction is then started, which trains the model for each new event. It also creates an output data stream which will send the prediction of the model back to StreamPipes. This output stream can be seen when creating a new pipeline and can be used like every other data source. So you can use it in a pipeline and save the predictions in a Data Lake.
You can also stop and start the training with the method <code>set_learning</code>. To stop the whole function use the <code>stop</code> methode and if you want to delete the output stream entirely, you can go to the <code>Pipeline Element Installer</code> in StreamPipes and uninstall it.</p>
<p>Now let's take a look at some examples. If you want to execute the examples below you have to create an adapter for the <code>Machine Data Simulator</code>, select the <code>flowrate</code> sensor and insert the stream id of this stream.</p>
-
</div>
</div>
</div>
</div>
-<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
+<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
-</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput " data-mime-type="text/markdown">
-<h2 id="KMeans">KMeans<a class="anchor-link" href="#KMeans">¶</a></h2>
+</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput" data-mime-type="text/markdown">
+<h2 id="KMeans">KMeans<a class="anchor-link" href="#KMeans">¶</a></h2>
</div>
</div>
</div>
-</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell ">
-<div class="jp-Cell jp-CodeCell jp-Notebook-cell ">
+</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell">
+<div class="jp-Cell jp-CodeCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
-<div class="jp-InputPrompt jp-InputArea-prompt">In [5]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
-
-
- <div class="CodeMirror cm-s-jupyter">
- <div class="zeroclipboard-container">
- <clipboard-copy for="cell-6">
- <div>
- <span class="notice" hidden>Copied!</span>
- <svg aria-hidden="true" width="20" height="20" viewBox="0 0 16 16" version="1.1" data-view-component="true" class="clipboard-copy-icon">
- <path fill="currentColor" fill-rule="evenodd" d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z"></path>
- <path fill="currentColor" fill-rule="evenodd" d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z"></path>
- </svg>
- </div>
- </clipboard-copy>
- </div>
- <div class="highlight-ipynb hl-python "><pre><span></span><span class="kn">from</span> <span class="nn">river</span> <span class="kn">import</span> <span class="n">cluster</span><span class="p">,</span> <span class="n">compose</span><span class="p">,</span> <span class="n">preprocessing</span>
+<div class="jp-InputPrompt jp-InputArea-prompt">In [5]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
+<div class="CodeMirror cm-s-jupyter">
+<div class="zeroclipboard-container">
+<clipboard-copy for="cell-6">
+<div>
+<span class="notice" hidden="">Copied!</span>
+<svg aria-hidden="true" class="clipboard-copy-icon" data-view-component="true" height="20" version="1.1" viewbox="0 0 16 16" width="20">
+<path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+<path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+</svg>
+</div>
+</clipboard-copy>
+</div>
+<div class="highlight-ipynb hl-python"><pre><span></span><span class="kn">from</span> <span class="nn">river</span> <span class="kn">import</span> <span class="n">cluster</span><span class="p">,</span> <span class="n">compose</span><span class="p">,</span> <span class="n">preprocessing</span>
<span class="kn">from</span> <span class="nn">streampipes.function_zoo.river_function</span> <span class="kn">import</span> <span class="n">OnlineML</span>
<span class="kn">from</span> <span class="nn">streampipes.functions.utils.data_stream_generator</span> <span class="kn">import</span> <span class="n">RuntimeType</span>
<span class="n">k_means</span> <span class="o">=</span> <span class="n">compose</span><span class="o">.</span><span class="n">Pipeline</span><span class="p">(</span>
- <span class="p">(</span><span class="s2">"drop_features"</span><span class="p">,</span> <span class="n">compose</span><span class="o">.</span><span class="n">Discard</span><span class="p">(</span><span class="s2">"sensorId"</span><span class="p">,</span> <span class="s2">"timestamp"</span><span class="p">)),</span>
- <span class="p">(</span><span class="s2">"scale"</span><span class="p">,</span> <span class="n">preprocessing</span><span class="o">.</span><span class="n">StandardScaler</span><span class="p">()),</span>
- <span class="p">(</span><span class="s2">"k_means"</span><span class="p">,</span> <span class="n">cluster</span><span class="o">.</span><span class="n">KMeans</span><span class="p">(</span><span class="n">n_clusters</span><span class="o">=</span><span class="mi">2</span><span class="p">)),</span>
+ <span class="p">(</span><span class="s2">"drop_features"</span><span class="p">,</span> <span class="n">compose</span><span class="o">.</span><span class="n">Discard</span><span class="p">(</span><span class="s2">"sensorId"</span><span class="p">,</span> <span class="s2">"timestamp"</span><span class="p">)),</span>
+ <span class="p">(</span><span class="s2">"scale"</span><span class="p">,</span> <span class="n">preprocessing</span><span class="o">.</span><span class="n">StandardScaler</span><span class="p">()),</span>
+ <span class="p">(</span><span class="s2">"k_means"</span><span class="p">,</span> <span class="n">cluster</span><span class="o">.</span><span class="n">KMeans</span><span class="p">(</span><span class="n">n_clusters</span><span class="o">=</span><span class="mi">2</span><span class="p">)),</span>
<span class="p">)</span>
<span class="n">clustering</span> <span class="o">=</span> <span class="n">OnlineML</span><span class="p">(</span>
- <span class="n">client</span><span class="o">=</span><span class="n">client</span><span class="p">,</span> <span class="n">stream_ids</span><span class="o">=</span><span class="p">[</span><span class="s2">"sp:spdatastream:xboBFK"</span><span class="p">],</span> <span class="n">model</span><span class="o">=</span><span class="n">k_means</span><span class="p">,</span> <span class="n">prediction_type</span><span class="o">=</span><span class="n">RuntimeType</span><span class=" [...]
+ <span class="n">client</span><span class="o">=</span><span class="n">client</span><span class="p">,</span> <span class="n">stream_ids</span><span class="o">=</span><span class="p">[</span><span class="s2">"sp:spdatastream:xboBFK"</span><span class="p">],</span> <span class="n">model</span><span class="o">=</span><span class="n">k_means</span><span class="p">,</span> <span class="n">prediction_type</span><span class="o">=</span><span class="n">RuntimeType</span><span class="o">.</span [...]
<span class="p">)</span>
<span class="n">clustering</span><span class="o">.</span><span class="n">start</span><span class="p">()</span>
</pre></div>
-<div id="cell-6" class="clipboard-copy-txt">from river import cluster, compose, preprocessing
+<div class="clipboard-copy-txt" id="cell-6">from river import cluster, compose, preprocessing
from streampipes.function_zoo.river_function import OnlineML
from streampipes.functions.utils.data_stream_generator import RuntimeType
@@ -3291,27 +3231,19 @@ clustering = OnlineML(
client=client, stream_ids=["sp:spdatastream:xboBFK"], model=k_means, prediction_type=RuntimeType.INTEGER.value
)
clustering.start()</div>
-
- </div>
- </div>
-
</div>
</div>
-
+</div>
+</div>
<div class="jp-Cell-outputWrapper">
<div class="jp-Collapser jp-OutputCollapser jp-Cell-outputCollapser">
</div>
-
-
<div class="jp-OutputArea jp-Cell-outputArea">
<div class="jp-OutputArea-child">
-
- <div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
-
-
+<div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
<div class="jp-RenderedText jp-OutputArea-output" data-mime-type="text/plain">
<pre>2023-01-27 16:04:35,599 - streampipes.endpoint.endpoint - [INFO] - [endpoint.py:163] [_make_request] - Successfully retrieved all resources.
-2023-01-27 16:04:35,599 - streampipes.functions.function_handler - [INFO] - [function_handler.py:64] [initializeFunctions] - Create output data stream "sp:spdatastream:cwKPoo" for the function "65cf8b86-bcdf-433e-a1c7-3e920eab55d0"
+2023-01-27 16:04:35,599 - streampipes.functions.function_handler - [INFO] - [function_handler.py:64] [initializeFunctions] - Create output data stream "sp:spdatastream:cwKPoo" for the function "65cf8b86-bcdf-433e-a1c7-3e920eab55d0"
2023-01-27 16:04:37,766 - streampipes.endpoint.endpoint - [INFO] - [endpoint.py:163] [_make_request] - Successfully retrieved all resources.
2023-01-27 16:04:37,767 - streampipes.functions.function_handler - [INFO] - [function_handler.py:78] [initializeFunctions] - Using NatsBroker for RiverFunction
2023-01-27 16:04:37,791 - streampipes.functions.broker.nats_broker - [INFO] - [nats_broker.py:48] [_makeConnection] - Connected to NATS at localhost:4222
@@ -3320,167 +3252,144 @@ clustering.start()</div>
</pre>
</div>
</div>
-
</div>
-
</div>
-
</div>
-</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
-<div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
+</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs">
+<div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
-<div class="jp-InputPrompt jp-InputArea-prompt">In [6]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
-
-
- <div class="CodeMirror cm-s-jupyter">
- <div class="zeroclipboard-container">
- <clipboard-copy for="cell-7">
- <div>
- <span class="notice" hidden>Copied!</span>
- <svg aria-hidden="true" width="20" height="20" viewBox="0 0 16 16" version="1.1" data-view-component="true" class="clipboard-copy-icon">
- <path fill="currentColor" fill-rule="evenodd" d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z"></path>
- <path fill="currentColor" fill-rule="evenodd" d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z"></path>
- </svg>
- </div>
- </clipboard-copy>
- </div>
- <div class="highlight-ipynb hl-python "><pre><span></span><span class="n">clustering</span><span class="o">.</span><span class="n">set_learning</span><span class="p">(</span><span class="kc">False</span><span class="p">)</span>
+<div class="jp-InputPrompt jp-InputArea-prompt">In [6]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
+<div class="CodeMirror cm-s-jupyter">
+<div class="zeroclipboard-container">
+<clipboard-copy for="cell-7">
+<div>
+<span class="notice" hidden="">Copied!</span>
+<svg aria-hidden="true" class="clipboard-copy-icon" data-view-component="true" height="20" version="1.1" viewbox="0 0 16 16" width="20">
+<path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+<path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+</svg>
+</div>
+</clipboard-copy>
+</div>
+<div class="highlight-ipynb hl-python"><pre><span></span><span class="n">clustering</span><span class="o">.</span><span class="n">set_learning</span><span class="p">(</span><span class="kc">False</span><span class="p">)</span>
</pre></div>
-<div id="cell-7" class="clipboard-copy-txt">clustering.set_learning(False)</div>
-
- </div>
- </div>
-
+<div class="clipboard-copy-txt" id="cell-7">clustering.set_learning(False)</div>
</div>
</div>
-
</div>
-</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell ">
-<div class="jp-Cell jp-CodeCell jp-Notebook-cell ">
+</div>
+</div>
+</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell">
+<div class="jp-Cell jp-CodeCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
-<div class="jp-InputPrompt jp-InputArea-prompt">In [ ]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
-
-
- <div class="CodeMirror cm-s-jupyter">
- <div class="zeroclipboard-container">
- <clipboard-copy for="cell-8">
- <div>
- <span class="notice" hidden>Copied!</span>
- <svg aria-hidden="true" width="20" height="20" viewBox="0 0 16 16" version="1.1" data-view-component="true" class="clipboard-copy-icon">
- <path fill="currentColor" fill-rule="evenodd" d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z"></path>
- <path fill="currentColor" fill-rule="evenodd" d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z"></path>
- </svg>
- </div>
- </clipboard-copy>
- </div>
- <div class="highlight-ipynb hl-python "><pre><span></span><span class="n">clustering</span><span class="o">.</span><span class="n">stop</span><span class="p">()</span>
+<div class="jp-InputPrompt jp-InputArea-prompt">In [ ]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
+<div class="CodeMirror cm-s-jupyter">
+<div class="zeroclipboard-container">
+<clipboard-copy for="cell-8">
+<div>
+<span class="notice" hidden="">Copied!</span>
+<svg aria-hidden="true" class="clipboard-copy-icon" data-view-component="true" height="20" version="1.1" viewbox="0 0 16 16" width="20">
+<path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+<path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+</svg>
+</div>
+</clipboard-copy>
+</div>
+<div class="highlight-ipynb hl-python"><pre><span></span><span class="n">clustering</span><span class="o">.</span><span class="n">stop</span><span class="p">()</span>
</pre></div>
-<div id="cell-8" class="clipboard-copy-txt">clustering.stop()</div>
-
- </div>
- </div>
-
+<div class="clipboard-copy-txt" id="cell-8">clustering.stop()</div>
+</div>
+</div>
</div>
</div>
-
<div class="jp-Cell-outputWrapper">
<div class="jp-Collapser jp-OutputCollapser jp-Cell-outputCollapser">
</div>
-
-
<div class="jp-OutputArea jp-Cell-outputArea">
<div class="jp-OutputArea-child">
-
- <div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
-
-
+<div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
<div class="jp-RenderedText jp-OutputArea-output" data-mime-type="text/plain">
<pre>2023-01-27 16:04:57,303 - streampipes.functions.broker.nats_broker - [INFO] - [nats_broker.py:82] [disconnect] - Stopped connection to stream: sp:spdatastream:xboBFK
2023-01-27 16:04:57,304 - streampipes.functions.broker.nats_broker - [INFO] - [nats_broker.py:82] [disconnect] - Stopped connection to stream: sp:spdatastream:cwKPoo
</pre>
</div>
</div>
-
</div>
-
</div>
-
</div>
</div>
-<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
+<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
-</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput " data-mime-type="text/markdown">
-<h2 id="HoeffdingTreeRegressor">HoeffdingTreeRegressor<a class="anchor-link" href="#HoeffdingTreeRegressor">¶</a></h2>
+</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput" data-mime-type="text/markdown">
+<h2 id="HoeffdingTreeRegressor">HoeffdingTreeRegressor<a class="anchor-link" href="#HoeffdingTreeRegressor">¶</a></h2>
</div>
</div>
</div>
-</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
-<div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
+</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs">
+<div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
-<div class="jp-InputPrompt jp-InputArea-prompt">In [ ]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
-
-
- <div class="CodeMirror cm-s-jupyter">
- <div class="zeroclipboard-container">
- <clipboard-copy for="cell-9">
- <div>
- <span class="notice" hidden>Copied!</span>
- <svg aria-hidden="true" width="20" height="20" viewBox="0 0 16 16" version="1.1" data-view-component="true" class="clipboard-copy-icon">
- <path fill="currentColor" fill-rule="evenodd" d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z"></path>
- <path fill="currentColor" fill-rule="evenodd" d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z"></path>
- </svg>
- </div>
- </clipboard-copy>
- </div>
- <div class="highlight-ipynb hl-python "><pre><span></span><span class="kn">import</span> <span class="nn">pickle</span>
+<div class="jp-InputPrompt jp-InputArea-prompt">In [ ]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
+<div class="CodeMirror cm-s-jupyter">
+<div class="zeroclipboard-container">
+<clipboard-copy for="cell-9">
+<div>
+<span class="notice" hidden="">Copied!</span>
+<svg aria-hidden="true" class="clipboard-copy-icon" data-view-component="true" height="20" version="1.1" viewbox="0 0 16 16" width="20">
+<path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+<path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+</svg>
+</div>
+</clipboard-copy>
+</div>
+<div class="highlight-ipynb hl-python"><pre><span></span><span class="kn">import</span> <span class="nn">pickle</span>
<span class="kn">from</span> <span class="nn">river</span> <span class="kn">import</span> <span class="n">compose</span><span class="p">,</span> <span class="n">tree</span>
<span class="kn">from</span> <span class="nn">streampipes.function_zoo.river_function</span> <span class="kn">import</span> <span class="n">OnlineML</span>
<span class="kn">from</span> <span class="nn">streampipes.functions.utils.data_stream_generator</span> <span class="kn">import</span> <span class="n">RuntimeType</span>
<span class="n">hoeffding_tree</span> <span class="o">=</span> <span class="n">compose</span><span class="o">.</span><span class="n">Pipeline</span><span class="p">(</span>
- <span class="p">(</span><span class="s2">"drop_features"</span><span class="p">,</span> <span class="n">compose</span><span class="o">.</span><span class="n">Discard</span><span class="p">(</span><span class="s2">"sensorId"</span><span class="p">,</span> <span class="s2">"timestamp"</span><span class="p">)),</span>
- <span class="p">(</span><span class="s2">"hoeffding_tree"</span><span class="p">,</span> <span class="n">tree</span><span class="o">.</span><span class="n">HoeffdingTreeRegressor</span><span class="p">(</span><span class="n">grace_period</span><span class="o">=</span><span class="mi">5</span><span class="p">)),</span>
+ <span class="p">(</span><span class="s2">"drop_features"</span><span class="p">,</span> <span class="n">compose</span><span class="o">.</span><span class="n">Discard</span><span class="p">(</span><span class="s2">"sensorId"</span><span class="p">,</span> <span class="s2">"timestamp"</span><span class="p">)),</span>
+ <span class="p">(</span><span class="s2">"hoeffding_tree"</span><span class="p">,</span> <span class="n">tree</span><span class="o">.</span><span class="n">HoeffdingTreeRegressor</span><span class="p">(</span><span class="n">grace_period</span><span class="o">=</span><span class="mi">5</span><span class="p">)),</span>
<span class="p">)</span>
<span class="k">def</span> <span class="nf">draw_tree</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">event</span><span class="p">,</span> <span class="n">streamId</span><span class="p">):</span>
-<span class="w"> </span><span class="sd">"""Draw the tree and save the image."""</span>
+<span class="w"> </span><span class="sd">"""Draw the tree and save the image."""</span>
<span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">learning</span><span class="p">:</span>
<span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">model</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">.</span><span class="n">n_nodes</span> <span class="o">!=</span> <span class="kc">None</span><span class="p">:</span>
- <span class="bp">self</span><span class="o">.</span><span class="n">model</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">.</span><span class="n">draw</span><span class="p">()</span><span class="o">.</span><span class="n">render</span><span class="p">(</span><span class="s2">"hoeffding_tree"</span><span class="p">,</span> <span class="nb">format</span><span class="o">=</span><span class="s2">"png"</span><span [...]
+ <span class="bp">self</span><span class="o">.</span><span class="n">model</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">.</span><span class="n">draw</span><span class="p">()</span><span class="o">.</span><span class="n">render</span><span class="p">(</span><span class="s2">"hoeffding_tree"</span><span class="p">,</span> <span class="nb">format</span><span class="o">=</span><span class="s2">"png"</span><span class="p">,</span> < [...]
<span class="k">def</span> <span class="nf">save_model</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-<span class="w"> </span><span class="sd">"""Save the trained model."""</span>
- <span class="k">with</span> <span class="nb">open</span><span class="p">(</span><span class="s2">"hoeffding_tree.pkl"</span><span class="p">,</span> <span class="s2">"wb"</span><span class="p">)</span> <span class="k">as</span> <span class="n">f</span><span class="p">:</span>
+<span class="w"> </span><span class="sd">"""Save the trained model."""</span>
+ <span class="k">with</span> <span class="nb">open</span><span class="p">(</span><span class="s2">"hoeffding_tree.pkl"</span><span class="p">,</span> <span class="s2">"wb"</span><span class="p">)</span> <span class="k">as</span> <span class="n">f</span><span class="p">:</span>
<span class="n">pickle</span><span class="o">.</span><span class="n">dump</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">model</span><span class="p">,</span> <span class="n">f</span><span class="p">)</span>
<span class="n">regressor</span> <span class="o">=</span> <span class="n">OnlineML</span><span class="p">(</span>
<span class="n">client</span><span class="o">=</span><span class="n">client</span><span class="p">,</span>
- <span class="n">stream_ids</span><span class="o">=</span><span class="p">[</span><span class="s2">"sp:spdatastream:xboBFK"</span><span class="p">],</span>
+ <span class="n">stream_ids</span><span class="o">=</span><span class="p">[</span><span class="s2">"sp:spdatastream:xboBFK"</span><span class="p">],</span>
<span class="n">model</span><span class="o">=</span><span class="n">hoeffding_tree</span><span class="p">,</span>
<span class="n">prediction_type</span><span class="o">=</span><span class="n">RuntimeType</span><span class="o">.</span><span class="n">FLOAT</span><span class="o">.</span><span class="n">value</span><span class="p">,</span>
<span class="n">supervised</span><span class="o">=</span><span class="kc">True</span><span class="p">,</span>
- <span class="n">target_label</span><span class="o">=</span><span class="s2">"temperature"</span><span class="p">,</span>
+ <span class="n">target_label</span><span class="o">=</span><span class="s2">"temperature"</span><span class="p">,</span>
<span class="n">on_event</span><span class="o">=</span><span class="n">draw_tree</span><span class="p">,</span>
<span class="n">on_stop</span><span class="o">=</span><span class="n">save_model</span><span class="p">,</span>
<span class="p">)</span>
<span class="n">regressor</span><span class="o">.</span><span class="n">start</span><span class="p">()</span>
</pre></div>
-<div id="cell-9" class="clipboard-copy-txt">import pickle
+<div class="clipboard-copy-txt" id="cell-9">import pickle
from river import compose, tree
from streampipes.function_zoo.river_function import OnlineML
from streampipes.functions.utils.data_stream_generator import RuntimeType
@@ -3515,147 +3424,132 @@ regressor = OnlineML(
on_stop=save_model,
)
regressor.start()</div>
-
- </div>
- </div>
-
</div>
</div>
-
</div>
-</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
-<div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
+</div>
+</div>
+</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs">
+<div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
-<div class="jp-InputPrompt jp-InputArea-prompt">In [9]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
-
-
- <div class="CodeMirror cm-s-jupyter">
- <div class="zeroclipboard-container">
- <clipboard-copy for="cell-10">
- <div>
- <span class="notice" hidden>Copied!</span>
- <svg aria-hidden="true" width="20" height="20" viewBox="0 0 16 16" version="1.1" data-view-component="true" class="clipboard-copy-icon">
- <path fill="currentColor" fill-rule="evenodd" d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z"></path>
- <path fill="currentColor" fill-rule="evenodd" d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z"></path>
- </svg>
- </div>
- </clipboard-copy>
- </div>
- <div class="highlight-ipynb hl-python "><pre><span></span><span class="n">regressor</span><span class="o">.</span><span class="n">set_learning</span><span class="p">(</span><span class="kc">False</span><span class="p">)</span>
+<div class="jp-InputPrompt jp-InputArea-prompt">In [9]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
+<div class="CodeMirror cm-s-jupyter">
+<div class="zeroclipboard-container">
+<clipboard-copy for="cell-10">
+<div>
+<span class="notice" hidden="">Copied!</span>
+<svg aria-hidden="true" class="clipboard-copy-icon" data-view-component="true" height="20" version="1.1" viewbox="0 0 16 16" width="20">
+<path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+<path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+</svg>
+</div>
+</clipboard-copy>
+</div>
+<div class="highlight-ipynb hl-python"><pre><span></span><span class="n">regressor</span><span class="o">.</span><span class="n">set_learning</span><span class="p">(</span><span class="kc">False</span><span class="p">)</span>
</pre></div>
-<div id="cell-10" class="clipboard-copy-txt">regressor.set_learning(False)</div>
-
- </div>
- </div>
-
+<div class="clipboard-copy-txt" id="cell-10">regressor.set_learning(False)</div>
+</div>
+</div>
</div>
</div>
-
</div>
-</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
-<div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
+</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs">
+<div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
-<div class="jp-InputPrompt jp-InputArea-prompt">In [ ]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
-
-
- <div class="CodeMirror cm-s-jupyter">
- <div class="zeroclipboard-container">
- <clipboard-copy for="cell-11">
- <div>
- <span class="notice" hidden>Copied!</span>
- <svg aria-hidden="true" width="20" height="20" viewBox="0 0 16 16" version="1.1" data-view-component="true" class="clipboard-copy-icon">
- <path fill="currentColor" fill-rule="evenodd" d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z"></path>
- <path fill="currentColor" fill-rule="evenodd" d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z"></path>
- </svg>
- </div>
- </clipboard-copy>
- </div>
- <div class="highlight-ipynb hl-python "><pre><span></span><span class="n">regressor</span><span class="o">.</span><span class="n">stop</span><span class="p">()</span>
+<div class="jp-InputPrompt jp-InputArea-prompt">In [ ]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
+<div class="CodeMirror cm-s-jupyter">
+<div class="zeroclipboard-container">
+<clipboard-copy for="cell-11">
+<div>
+<span class="notice" hidden="">Copied!</span>
+<svg aria-hidden="true" class="clipboard-copy-icon" data-view-component="true" height="20" version="1.1" viewbox="0 0 16 16" width="20">
+<path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+<path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+</svg>
+</div>
+</clipboard-copy>
+</div>
+<div class="highlight-ipynb hl-python"><pre><span></span><span class="n">regressor</span><span class="o">.</span><span class="n">stop</span><span class="p">()</span>
</pre></div>
-<div id="cell-11" class="clipboard-copy-txt">regressor.stop()</div>
-
- </div>
- </div>
-
+<div class="clipboard-copy-txt" id="cell-11">regressor.stop()</div>
</div>
</div>
-
</div>
</div>
-<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
+</div>
+</div>
+<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
-</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput " data-mime-type="text/markdown">
-<h2 id="DecisionTreeClassifier">DecisionTreeClassifier<a class="anchor-link" href="#DecisionTreeClassifier">¶</a></h2>
+</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput" data-mime-type="text/markdown">
+<h2 id="DecisionTreeClassifier">DecisionTreeClassifier<a class="anchor-link" href="#DecisionTreeClassifier">¶</a></h2>
</div>
</div>
</div>
-</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
-<div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
+</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs">
+<div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
-<div class="jp-InputPrompt jp-InputArea-prompt">In [ ]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
-
-
- <div class="CodeMirror cm-s-jupyter">
- <div class="zeroclipboard-container">
- <clipboard-copy for="cell-12">
- <div>
- <span class="notice" hidden>Copied!</span>
- <svg aria-hidden="true" width="20" height="20" viewBox="0 0 16 16" version="1.1" data-view-component="true" class="clipboard-copy-icon">
- <path fill="currentColor" fill-rule="evenodd" d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z"></path>
- <path fill="currentColor" fill-rule="evenodd" d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z"></path>
- </svg>
- </div>
- </clipboard-copy>
- </div>
- <div class="highlight-ipynb hl-python "><pre><span></span><span class="kn">import</span> <span class="nn">pickle</span>
+<div class="jp-InputPrompt jp-InputArea-prompt">In [ ]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
+<div class="CodeMirror cm-s-jupyter">
+<div class="zeroclipboard-container">
+<clipboard-copy for="cell-12">
+<div>
+<span class="notice" hidden="">Copied!</span>
+<svg aria-hidden="true" class="clipboard-copy-icon" data-view-component="true" height="20" version="1.1" viewbox="0 0 16 16" width="20">
+<path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+<path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+</svg>
+</div>
+</clipboard-copy>
+</div>
+<div class="highlight-ipynb hl-python"><pre><span></span><span class="kn">import</span> <span class="nn">pickle</span>
<span class="kn">from</span> <span class="nn">river</span> <span class="kn">import</span> <span class="n">compose</span><span class="p">,</span> <span class="n">tree</span>
<span class="kn">from</span> <span class="nn">streampipes.function_zoo.river_function</span> <span class="kn">import</span> <span class="n">OnlineML</span>
<span class="kn">from</span> <span class="nn">streampipes.functions.utils.data_stream_generator</span> <span class="kn">import</span> <span class="n">RuntimeType</span>
<span class="n">decision_tree</span> <span class="o">=</span> <span class="n">compose</span><span class="o">.</span><span class="n">Pipeline</span><span class="p">(</span>
- <span class="p">(</span><span class="s2">"drop_features"</span><span class="p">,</span> <span class="n">compose</span><span class="o">.</span><span class="n">Discard</span><span class="p">(</span><span class="s2">"sensorId"</span><span class="p">,</span> <span class="s2">"timestamp"</span><span class="p">)),</span>
- <span class="p">(</span><span class="s2">"decision_tree"</span><span class="p">,</span> <span class="n">tree</span><span class="o">.</span><span class="n">ExtremelyFastDecisionTreeClassifier</span><span class="p">(</span><span class="n">grace_period</span><span class="o">=</span><span class="mi">5</span><span class="p">)),</span>
+ <span class="p">(</span><span class="s2">"drop_features"</span><span class="p">,</span> <span class="n">compose</span><span class="o">.</span><span class="n">Discard</span><span class="p">(</span><span class="s2">"sensorId"</span><span class="p">,</span> <span class="s2">"timestamp"</span><span class="p">)),</span>
+ <span class="p">(</span><span class="s2">"decision_tree"</span><span class="p">,</span> <span class="n">tree</span><span class="o">.</span><span class="n">ExtremelyFastDecisionTreeClassifier</span><span class="p">(</span><span class="n">grace_period</span><span class="o">=</span><span class="mi">5</span><span class="p">)),</span>
<span class="p">)</span>
<span class="k">def</span> <span class="nf">draw_tree</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">event</span><span class="p">,</span> <span class="n">streamId</span><span class="p">):</span>
-<span class="w"> </span><span class="sd">"""Draw the tree and save the image."""</span>
+<span class="w"> </span><span class="sd">"""Draw the tree and save the image."""</span>
<span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">learning</span><span class="p">:</span>
<span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">model</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">.</span><span class="n">n_nodes</span> <span class="o">!=</span> <span class="kc">None</span><span class="p">:</span>
- <span class="bp">self</span><span class="o">.</span><span class="n">model</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">.</span><span class="n">draw</span><span class="p">()</span><span class="o">.</span><span class="n">render</span><span class="p">(</span><span class="s2">"decicion_tree"</span><span class="p">,</span> <span class="nb">format</span><span class="o">=</span><span class="s2">"png"</span><span c [...]
+ <span class="bp">self</span><span class="o">.</span><span class="n">model</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">.</span><span class="n">draw</span><span class="p">()</span><span class="o">.</span><span class="n">render</span><span class="p">(</span><span class="s2">"decicion_tree"</span><span class="p">,</span> <span class="nb">format</span><span class="o">=</span><span class="s2">"png"</span><span class="p">,</span> <s [...]
<span class="k">def</span> <span class="nf">save_model</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-<span class="w"> </span><span class="sd">"""Save the trained model."""</span>
- <span class="k">with</span> <span class="nb">open</span><span class="p">(</span><span class="s2">"decision_tree.pkl"</span><span class="p">,</span> <span class="s2">"wb"</span><span class="p">)</span> <span class="k">as</span> <span class="n">f</span><span class="p">:</span>
+<span class="w"> </span><span class="sd">"""Save the trained model."""</span>
+ <span class="k">with</span> <span class="nb">open</span><span class="p">(</span><span class="s2">"decision_tree.pkl"</span><span class="p">,</span> <span class="s2">"wb"</span><span class="p">)</span> <span class="k">as</span> <span class="n">f</span><span class="p">:</span>
<span class="n">pickle</span><span class="o">.</span><span class="n">dump</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">model</span><span class="p">,</span> <span class="n">f</span><span class="p">)</span>
<span class="n">classifier</span> <span class="o">=</span> <span class="n">OnlineML</span><span class="p">(</span>
<span class="n">client</span><span class="o">=</span><span class="n">client</span><span class="p">,</span>
- <span class="n">stream_ids</span><span class="o">=</span><span class="p">[</span><span class="s2">"sp:spdatastream:xboBFK"</span><span class="p">],</span>
+ <span class="n">stream_ids</span><span class="o">=</span><span class="p">[</span><span class="s2">"sp:spdatastream:xboBFK"</span><span class="p">],</span>
<span class="n">model</span><span class="o">=</span><span class="n">decision_tree</span><span class="p">,</span>
<span class="n">prediction_type</span><span class="o">=</span><span class="n">RuntimeType</span><span class="o">.</span><span class="n">BOOLEAN</span><span class="o">.</span><span class="n">value</span><span class="p">,</span>
<span class="n">supervised</span><span class="o">=</span><span class="kc">True</span><span class="p">,</span>
- <span class="n">target_label</span><span class="o">=</span><span class="s2">"sensor_fault_flags"</span><span class="p">,</span>
+ <span class="n">target_label</span><span class="o">=</span><span class="s2">"sensor_fault_flags"</span><span class="p">,</span>
<span class="n">on_event</span><span class="o">=</span><span class="n">draw_tree</span><span class="p">,</span>
<span class="n">on_stop</span><span class="o">=</span><span class="n">save_model</span><span class="p">,</span>
<span class="p">)</span>
<span class="n">classifier</span><span class="o">.</span><span class="n">start</span><span class="p">()</span>
</pre></div>
-<div id="cell-12" class="clipboard-copy-txt">import pickle
+<div class="clipboard-copy-txt" id="cell-12">import pickle
from river import compose, tree
from streampipes.function_zoo.river_function import OnlineML
from streampipes.functions.utils.data_stream_generator import RuntimeType
@@ -3690,101 +3584,86 @@ classifier = OnlineML(
on_stop=save_model,
)
classifier.start()</div>
-
- </div>
- </div>
-
</div>
</div>
-
</div>
-</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
-<div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
+</div>
+</div>
+</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs">
+<div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
-<div class="jp-InputPrompt jp-InputArea-prompt">In [12]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
-
-
- <div class="CodeMirror cm-s-jupyter">
- <div class="zeroclipboard-container">
- <clipboard-copy for="cell-13">
- <div>
- <span class="notice" hidden>Copied!</span>
- <svg aria-hidden="true" width="20" height="20" viewBox="0 0 16 16" version="1.1" data-view-component="true" class="clipboard-copy-icon">
- <path fill="currentColor" fill-rule="evenodd" d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z"></path>
- <path fill="currentColor" fill-rule="evenodd" d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z"></path>
- </svg>
- </div>
- </clipboard-copy>
- </div>
- <div class="highlight-ipynb hl-python "><pre><span></span><span class="n">classifier</span><span class="o">.</span><span class="n">set_learning</span><span class="p">(</span><span class="kc">False</span><span class="p">)</span>
+<div class="jp-InputPrompt jp-InputArea-prompt">In [12]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
+<div class="CodeMirror cm-s-jupyter">
+<div class="zeroclipboard-container">
+<clipboard-copy for="cell-13">
+<div>
+<span class="notice" hidden="">Copied!</span>
+<svg aria-hidden="true" class="clipboard-copy-icon" data-view-component="true" height="20" version="1.1" viewbox="0 0 16 16" width="20">
+<path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+<path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+</svg>
+</div>
+</clipboard-copy>
+</div>
+<div class="highlight-ipynb hl-python"><pre><span></span><span class="n">classifier</span><span class="o">.</span><span class="n">set_learning</span><span class="p">(</span><span class="kc">False</span><span class="p">)</span>
</pre></div>
-<div id="cell-13" class="clipboard-copy-txt">classifier.set_learning(False)</div>
-
- </div>
- </div>
-
+<div class="clipboard-copy-txt" id="cell-13">classifier.set_learning(False)</div>
+</div>
</div>
</div>
-
</div>
-</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
-<div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
+</div>
+</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs">
+<div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
-<div class="jp-InputPrompt jp-InputArea-prompt">In [ ]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
-
-
- <div class="CodeMirror cm-s-jupyter">
- <div class="zeroclipboard-container">
- <clipboard-copy for="cell-14">
- <div>
- <span class="notice" hidden>Copied!</span>
- <svg aria-hidden="true" width="20" height="20" viewBox="0 0 16 16" version="1.1" data-view-component="true" class="clipboard-copy-icon">
- <path fill="currentColor" fill-rule="evenodd" d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z"></path>
- <path fill="currentColor" fill-rule="evenodd" d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z"></path>
- </svg>
- </div>
- </clipboard-copy>
- </div>
- <div class="highlight-ipynb hl-python "><pre><span></span><span class="n">classifier</span><span class="o">.</span><span class="n">stop</span><span class="p">()</span>
+<div class="jp-InputPrompt jp-InputArea-prompt">In [ ]:</div><div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
+<div class="CodeMirror cm-s-jupyter">
+<div class="zeroclipboard-container">
+<clipboard-copy for="cell-14">
+<div>
+<span class="notice" hidden="">Copied!</span>
+<svg aria-hidden="true" class="clipboard-copy-icon" data-view-component="true" height="20" version="1.1" viewbox="0 0 16 16" width="20">
+<path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+<path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z" fill="currentColor" fill-rule="evenodd"></path>
+</svg>
+</div>
+</clipboard-copy>
+</div>
+<div class="highlight-ipynb hl-python"><pre><span></span><span class="n">classifier</span><span class="o">.</span><span class="n">stop</span><span class="p">()</span>
</pre></div>
-<div id="cell-14" class="clipboard-copy-txt">classifier.stop()</div>
-
- </div>
- </div>
-
+<div class="clipboard-copy-txt" id="cell-14">classifier.stop()</div>
+</div>
+</div>
</div>
</div>
-
</div>
</div>
-<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
+<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
-</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput " data-mime-type="text/markdown">
+</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput" data-mime-type="text/markdown">
<p>How do you like this tutorial?
We hope you like it and would love to receive some feedback from you.
Just go to our <a href="https://github.com/apache/streampipes/discussions">GitHub discussion page</a> and let us know your impression.
We'll read and react to them all, we promise!</p>
-
</div>
</div>
</div>
</div>
-<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
+<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
-</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput " data-mime-type="text/markdown">
-
+</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput" data-mime-type="text/markdown">
</div>
</div>
</div>
@@ -3793,7 +3672,6 @@ We'll read and react to them all, we promise!</p>
-
diff --git a/google9a5ae5e559ae1c8b.html b/google9a5ae5e559ae1c8b.html
new file mode 100644
index 00000000..2785e91b
--- /dev/null
+++ b/google9a5ae5e559ae1c8b.html
@@ -0,0 +1 @@
+google-site-verification: google9a5ae5e559ae1c8b.html
\ No newline at end of file