This is an automated email from the ASF dual-hosted git repository. kenn pushed a commit to branch asf-site in repository https://gitbox.apache.org/repos/asf/beam-site.git
commit 5de31d1d09f1e6d6f05030d4c20e8c974008e107 Author: Kenneth Knowles <k...@google.com> AuthorDate: Fri Jun 29 20:35:07 2018 -0700 Regenerate site content --- content/documentation/index.html | 1 + content/documentation/runners/apex/index.html | 1 + .../runners/capability-matrix/index.html | 1149 ++++++++++++++++++-- content/documentation/runners/dataflow/index.html | 1 + content/documentation/runners/direct/index.html | 1 + content/documentation/runners/flink/index.html | 1 + content/documentation/runners/gearpump/index.html | 1 + content/documentation/runners/mapreduce/index.html | 1 + .../runners/{flink => samza}/index.html | 214 ++-- content/documentation/runners/spark/index.html | 1 + content/get-started/beam-overview/index.html | 1 + content/get-started/quickstart-java/index.html | 21 + content/get-started/wordcount-example/index.html | 43 + content/images/logo_samza.png | Bin 0 -> 11728 bytes content/images/logos/runners/samza.png | Bin 0 -> 11728 bytes content/index.html | 4 + content/learn/runners/Samza/index.html | 10 + 17 files changed, 1272 insertions(+), 178 deletions(-) diff --git a/content/documentation/index.html b/content/documentation/index.html index c118bca..68d6b9f 100644 --- a/content/documentation/index.html +++ b/content/documentation/index.html @@ -326,6 +326,7 @@ limitations under the License. <li><a href="/documentation/runners/spark/">SparkRunner</a>: Runs on <a href="http://spark.apache.org">Apache Spark</a>.</li> <li><a href="/documentation/runners/dataflow/">DataflowRunner</a>: Runs on <a href="https://cloud.google.com/dataflow">Google Cloud Dataflow</a>, a fully managed service within <a href="https://cloud.google.com/">Google Cloud Platform</a>.</li> <li><a href="/documentation/runners/gearpump/">GearpumpRunner</a>: Runs on <a href="http://gearpump.apache.org">Apache Gearpump (incubating)</a>.</li> + <li><a href="/documentation/runners/samza/">SamzaRunner</a>: Runs on <a href="http://samza.apache.org">Apache Samza</a>.</li> </ul> <h3 id="choosing-a-runner">Choosing a Runner</h3> diff --git a/content/documentation/runners/apex/index.html b/content/documentation/runners/apex/index.html index 612424e..73d9707 100644 --- a/content/documentation/runners/apex/index.html +++ b/content/documentation/runners/apex/index.html @@ -144,6 +144,7 @@ <li><a href="/documentation/runners/gearpump/">Apache Gearpump</a></li> <li><a href="/documentation/runners/spark/">Apache Spark</a></li> <li><a href="/documentation/runners/dataflow/">Google Cloud Dataflow</a></li> +<li><a href="/documentation/runners/samza/">Apache Samza</a></li> </ul> </nav> diff --git a/content/documentation/runners/capability-matrix/index.html b/content/documentation/runners/capability-matrix/index.html index 34fc973..e858f25 100644 --- a/content/documentation/runners/capability-matrix/index.html +++ b/content/documentation/runners/capability-matrix/index.html @@ -144,6 +144,7 @@ <li><a href="/documentation/runners/gearpump/">Apache Gearpump</a></li> <li><a href="/documentation/runners/spark/">Apache Spark</a></li> <li><a href="/documentation/runners/dataflow/">Google Cloud Dataflow</a></li> +<li><a href="/documentation/runners/samza/">Apache Samza</a></li> </ul> </nav> @@ -269,6 +270,8 @@ limitations under the License. <th class="cap-summary color-platform format-platform" style="color:#ec3">IBM Streams</th> + <th class="cap-summary color-platform format-platform" style="color:#ec3">Apache Samza</th> + </tr> <tr class="cap-summary"> @@ -436,6 +439,24 @@ limitations under the License. <center><b>✓</b></center> </td> + + + <td width="25%" class="cap-summary" style="background-color:#ec3;border-color:#ca1"><!-- +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +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. +--> +<center><b>✓</b></center> +</td> + </tr> <tr class="cap-summary"> @@ -603,6 +624,24 @@ limitations under the License. <center><b>✓</b></center> </td> + + + <td width="25%" class="cap-summary" style="background-color:#ec3;border-color:#ca1"><!-- +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +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. +--> +<center><b>✓</b></center> +</td> + </tr> <tr class="cap-summary"> @@ -770,6 +809,24 @@ limitations under the License. <center><b>✓</b></center> </td> + + + <td width="25%" class="cap-summary" style="background-color:#ec3;border-color:#ca1"><!-- +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +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. +--> +<center><b>✓</b></center> +</td> + </tr> <tr class="cap-summary"> @@ -937,6 +994,24 @@ limitations under the License. <center><b>✓</b></center> </td> + + + <td width="25%" class="cap-summary" style="background-color:#ec3;border-color:#ca1"><!-- +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +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. +--> +<center><b>✓</b></center> +</td> + </tr> <tr class="cap-summary"> @@ -1104,6 +1179,24 @@ limitations under the License. <center><b>~</b></center> </td> + + + <td width="25%" class="cap-summary" style="background-color:#fe5;border-color:#ca1"><!-- +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +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. +--> +<center><b>~</b></center> +</td> + </tr> <tr class="cap-summary"> @@ -1271,6 +1364,24 @@ limitations under the License. <center><b>✓</b></center> </td> + + + <td width="25%" class="cap-summary" style="background-color:#ec3;border-color:#ca1"><!-- +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +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. +--> +<center><b>✓</b></center> +</td> + </tr> <tr class="cap-summary"> @@ -1438,6 +1549,24 @@ limitations under the License. <center><b>✓</b></center> </td> + + + <td width="25%" class="cap-summary" style="background-color:#ec3;border-color:#ca1"><!-- +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +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. +--> +<center><b>✓</b></center> +</td> + </tr> <tr class="cap-summary"> @@ -1605,6 +1734,24 @@ limitations under the License. <center><b>✕</b></center> </td> + + + <td width="25%" class="cap-summary" style="background-color:#ddd;border-color:#ca1"><!-- +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +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. +--> +<center><b>✕</b></center> +</td> + </tr> <tr class="cap-summary"> @@ -1772,6 +1919,24 @@ limitations under the License. <center><b>~</b></center> </td> + + + <td width="25%" class="cap-summary" style="background-color:#fe5;border-color:#ca1"><!-- +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +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. +--> +<center><b>~</b></center> +</td> + </tr> <tr class="cap-summary"> @@ -1939,6 +2104,24 @@ limitations under the License. <center><b>~</b></center> </td> + + + <td width="25%" class="cap-summary" style="background-color:#fe5;border-color:#ca1"><!-- +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +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. +--> +<center><b>~</b></center> +</td> + </tr> <tr class="cap-summary"> @@ -1969,6 +2152,8 @@ limitations under the License. <th class="cap-summary color-platform format-platform" style="color:#59f">IBM Streams</th> + <th class="cap-summary color-platform format-platform" style="color:#59f">Apache Samza</th> + </tr> <tr class="cap-summary"> @@ -2136,6 +2321,24 @@ limitations under the License. <center><b>✓</b></center> </td> + + + <td width="25%" class="cap-summary" style="background-color:#59f;border-color:#37d"><!-- +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +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. +--> +<center><b>✓</b></center> +</td> + </tr> <tr class="cap-summary"> @@ -2303,11 +2506,6 @@ limitations under the License. <center><b>✓</b></center> </td> - </tr> - - <tr class="cap-summary"> - <th class="cap-summary color-capability format-capability" style="color:#59f">Sliding windows</th> - <td width="25%" class="cap-summary" style="background-color:#59f;border-color:#37d"><!-- @@ -2326,6 +2524,11 @@ limitations under the License. <center><b>✓</b></center> </td> + </tr> + + <tr class="cap-summary"> + <th class="cap-summary color-capability format-capability" style="color:#59f">Sliding windows</th> + <td width="25%" class="cap-summary" style="background-color:#59f;border-color:#37d"><!-- @@ -2470,11 +2673,6 @@ limitations under the License. <center><b>✓</b></center> </td> - </tr> - - <tr class="cap-summary"> - <th class="cap-summary color-capability format-capability" style="color:#59f">Session windows</th> - <td width="25%" class="cap-summary" style="background-color:#59f;border-color:#37d"><!-- @@ -2511,6 +2709,11 @@ limitations under the License. <center><b>✓</b></center> </td> + </tr> + + <tr class="cap-summary"> + <th class="cap-summary color-capability format-capability" style="color:#59f">Session windows</th> + <td width="25%" class="cap-summary" style="background-color:#59f;border-color:#37d"><!-- @@ -2637,11 +2840,6 @@ limitations under the License. <center><b>✓</b></center> </td> - </tr> - - <tr class="cap-summary"> - <th class="cap-summary color-capability format-capability" style="color:#59f">Custom windows</th> - <td width="25%" class="cap-summary" style="background-color:#59f;border-color:#37d"><!-- @@ -2696,6 +2894,11 @@ limitations under the License. <center><b>✓</b></center> </td> + </tr> + + <tr class="cap-summary"> + <th class="cap-summary color-capability format-capability" style="color:#59f">Custom windows</th> + <td width="25%" class="cap-summary" style="background-color:#59f;border-color:#37d"><!-- @@ -2804,11 +3007,6 @@ limitations under the License. <center><b>✓</b></center> </td> - </tr> - - <tr class="cap-summary"> - <th class="cap-summary color-capability format-capability" style="color:#59f">Custom merging windows</th> - <td width="25%" class="cap-summary" style="background-color:#59f;border-color:#37d"><!-- @@ -2881,6 +3079,11 @@ limitations under the License. <center><b>✓</b></center> </td> + </tr> + + <tr class="cap-summary"> + <th class="cap-summary color-capability format-capability" style="color:#59f">Custom merging windows</th> + <td width="25%" class="cap-summary" style="background-color:#59f;border-color:#37d"><!-- @@ -2971,11 +3174,6 @@ limitations under the License. <center><b>✓</b></center> </td> - </tr> - - <tr class="cap-summary"> - <th class="cap-summary color-capability format-capability" style="color:#59f">Timestamp control</th> - <td width="25%" class="cap-summary" style="background-color:#59f;border-color:#37d"><!-- @@ -3066,6 +3264,11 @@ limitations under the License. <center><b>✓</b></center> </td> + </tr> + + <tr class="cap-summary"> + <th class="cap-summary color-capability format-capability" style="color:#59f">Timestamp control</th> + <td width="25%" class="cap-summary" style="background-color:#59f;border-color:#37d"><!-- @@ -3138,12 +3341,120 @@ limitations under the License. <center><b>✓</b></center> </td> - </tr> - - <tr class="cap-summary"> - <td class="cap-summary color-blank cap-blank" colspan="5"></td> - </tr> - + + + <td width="25%" class="cap-summary" style="background-color:#59f;border-color:#37d"><!-- +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +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. +--> +<center><b>✓</b></center> +</td> + + + + <td width="25%" class="cap-summary" style="background-color:#59f;border-color:#37d"><!-- +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +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. +--> +<center><b>✓</b></center> +</td> + + + + <td width="25%" class="cap-summary" style="background-color:#59f;border-color:#37d"><!-- +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +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. +--> +<center><b>✓</b></center> +</td> + + + + <td width="25%" class="cap-summary" style="background-color:#59f;border-color:#37d"><!-- +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +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. +--> +<center><b>✓</b></center> +</td> + + + + <td width="25%" class="cap-summary" style="background-color:#59f;border-color:#37d"><!-- +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +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. +--> +<center><b>✓</b></center> +</td> + + + + <td width="25%" class="cap-summary" style="background-color:#59f;border-color:#37d"><!-- +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +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. +--> +<center><b>✓</b></center> +</td> + + </tr> + + <tr class="cap-summary"> + <td class="cap-summary color-blank cap-blank" colspan="5"></td> + </tr> + <tr class="cap-summary" id="cap-summary-when"> <th class="cap-summary color-metadata format-category" colspan="5" style="color:#6a4"><div class="cap-toggle" onclick="ToggleTables(1, "cap-full-when")">(expand details)</div>When in processing time?</th> </tr> @@ -3168,6 +3479,8 @@ limitations under the License. <th class="cap-summary color-platform format-platform" style="color:#8c6">IBM Streams</th> + <th class="cap-summary color-platform format-platform" style="color:#8c6">Apache Samza</th> + </tr> <tr class="cap-summary"> @@ -3335,6 +3648,24 @@ limitations under the License. <center><b>✓</b></center> </td> + + + <td width="25%" class="cap-summary" style="background-color:#8c6;border-color:#6a4"><!-- +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +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. +--> +<center><b>✓</b></center> +</td> + </tr> <tr class="cap-summary"> @@ -3502,6 +3833,24 @@ limitations under the License. <center><b>✓</b></center> </td> + + + <td width="25%" class="cap-summary" style="background-color:#8c6;border-color:#6a4"><!-- +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +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. +--> +<center><b>✓</b></center> +</td> + </tr> <tr class="cap-summary"> @@ -3669,6 +4018,24 @@ limitations under the License. <center><b>✓</b></center> </td> + + + <td width="25%" class="cap-summary" style="background-color:#8c6;border-color:#6a4"><!-- +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +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. +--> +<center><b>✓</b></center> +</td> + </tr> <tr class="cap-summary"> @@ -3836,6 +4203,24 @@ limitations under the License. <center><b>✓</b></center> </td> + + + <td width="25%" class="cap-summary" style="background-color:#8c6;border-color:#6a4"><!-- +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +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. +--> +<center><b>✓</b></center> +</td> + </tr> <tr class="cap-summary"> @@ -4003,6 +4388,24 @@ limitations under the License. <center><b>✕</b></center> </td> + + + <td width="25%" class="cap-summary" style="background-color:#ddd;border-color:#6a4"><!-- +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +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. +--> +<center><b>✕</b></center> +</td> + </tr> <tr class="cap-summary"> @@ -4170,6 +4573,24 @@ limitations under the License. <center><b>✓</b></center> </td> + + + <td width="25%" class="cap-summary" style="background-color:#8c6;border-color:#6a4"><!-- +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +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. +--> +<center><b>✓</b></center> +</td> + </tr> <tr class="cap-summary"> @@ -4337,6 +4758,24 @@ limitations under the License. <center><b>✓</b></center> </td> + + + <td width="25%" class="cap-summary" style="background-color:#8c6;border-color:#6a4"><!-- +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +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. +--> +<center><b>✓</b></center> +</td> + </tr> <tr class="cap-summary"> @@ -4504,6 +4943,24 @@ limitations under the License. <center><b>~</b></center> </td> + + + <td width="25%" class="cap-summary" style="background-color:#ddd;border-color:#6a4"><!-- +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +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. +--> +<center><b>✕</b></center> +</td> + </tr> <tr class="cap-summary"> @@ -4534,6 +4991,8 @@ limitations under the License. <th class="cap-summary color-platform format-platform" style="color:#d77">IBM Streams</th> + <th class="cap-summary color-platform format-platform" style="color:#d77">Apache Samza</th> + </tr> <tr class="cap-summary"> @@ -4701,6 +5160,24 @@ limitations under the License. <center><b>✓</b></center> </td> + + + <td width="25%" class="cap-summary" style="background-color:#d77;border-color:#b55"><!-- +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +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. +--> +<center><b>✓</b></center> +</td> + </tr> <tr class="cap-summary"> @@ -4868,6 +5345,24 @@ limitations under the License. <center><b>✓</b></center> </td> + + + <td width="25%" class="cap-summary" style="background-color:#d77;border-color:#b55"><!-- +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +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. +--> +<center><b>✓</b></center> +</td> + </tr> <tr class="cap-summary"> @@ -5035,6 +5530,24 @@ limitations under the License. <center><b>✕</b></center> </td> + + + <td width="25%" class="cap-summary" style="background-color:#ddd;border-color:#b55"><!-- +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +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. +--> +<center><b>✕</b></center> +</td> + </tr> <tr class="cap-summary"> @@ -5092,6 +5605,8 @@ limitations under the License. <th class="cap color-platform format-platform" style="color:#ec3">IBM Streams</th> + <th class="cap color-platform format-platform" style="color:#ec3">Apache Samza</th> + </tr> <tr class="cap"> @@ -5259,6 +5774,24 @@ limitations under the License. <center><b>Yes: fully supported</b></center><br /> </td> + + + <td width="25%" class="cap" style="background-color:#ec3;border-color:#ca1"><!-- +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +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. +--> +<center><b>Yes: fully supported</b></center><br />Supported with per-element transformation. +</td> + </tr> <tr class="cap"> @@ -5426,6 +5959,24 @@ limitations under the License. <center><b>Yes: fully supported</b></center><br /> </td> + + + <td width="25%" class="cap" style="background-color:#ec3;border-color:#ca1"><!-- +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +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. +--> +<center><b>Yes: fully supported</b></center><br />Uses Samza's partitionBy for key grouping and Beam's logic for window aggregation and triggering. +</td> + </tr> <tr class="cap"> @@ -5446,7 +5997,25 @@ 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. --> -<center><b>Yes: collection concatenation</b></center><br />Concatenates multiple homogenously typed collections together. +<center><b>Yes: collection concatenation</b></center><br />Concatenates multiple homogenously typed collections together. +</td> + + + + <td width="25%" class="cap" style="background-color:#ec3;border-color:#ca1"><!-- +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +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. +--> +<center><b>Yes: fully supported</b></center><br /> </td> @@ -5760,6 +6329,24 @@ limitations under the License. <center><b>Yes: fully supported</b></center><br /> </td> + + + <td width="25%" class="cap" style="background-color:#ec3;border-color:#ca1"><!-- +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +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. +--> +<center><b>Yes: fully supported</b></center><br />Use combiner for efficient pre-aggregation. +</td> + </tr> <tr class="cap"> @@ -5927,6 +6514,24 @@ limitations under the License. <center><b>Partially: supported via inlining</b></center><br /> </td> + + + <td width="25%" class="cap" style="background-color:#fe5;border-color:#ca1"><!-- +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +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. +--> +<center><b>Partially: supported via inlining</b></center><br /> +</td> + </tr> <tr class="cap"> @@ -6094,6 +6699,24 @@ limitations under the License. <center><b>Yes: fully supported</b></center><br /> </td> + + + <td width="25%" class="cap" style="background-color:#ec3;border-color:#ca1"><!-- +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +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. +--> +<center><b>Yes: fully supported</b></center><br />Uses Samza's broadcast operator to distribute the side inputs. +</td> + </tr> <tr class="cap"> @@ -6261,6 +6884,24 @@ limitations under the License. <center><b>Yes: fully supported</b></center><br /> </td> + + + <td width="25%" class="cap" style="background-color:#ec3;border-color:#ca1"><!-- +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +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. +--> +<center><b>Yes: fully supported</b></center><br /> +</td> + </tr> <tr class="cap"> @@ -6428,6 +7069,24 @@ limitations under the License. <center><b>No: not implemented</b></center><br /> </td> + + + <td width="25%" class="cap" style="background-color:#ddd;border-color:#ca1"><!-- +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +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. +--> +<center><b>No: not implemented</b></center><br /> +</td> + </tr> <tr class="cap"> @@ -6595,6 +7254,24 @@ limitations under the License. <center><b>Partially: All metrics types are supported.</b></center><br />Only attempted values are supported. No committed values for metrics. </td> + + + <td width="25%" class="cap" style="background-color:#fe5;border-color:#ca1"><!-- +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +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. +--> +<center><b>Partially: Counter and Gauge are supported.</b></center><br />Only attempted values are supported. No committed values for metrics. +</td> + </tr> <tr class="cap"> @@ -6762,6 +7439,24 @@ limitations under the License. <center><b>Partially: non-merging windows</b></center><br /> </td> + + + <td width="25%" class="cap" style="background-color:#fe5;border-color:#ca1"><!-- +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +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. +--> +<center><b>Partially: non-merging windows</b></center><br />States are backed up by either rocksDb KV store or in-memory hash map, and persist using changelog. +</td> + </tr> <tr class="cap"> @@ -6792,6 +7487,8 @@ limitations under the License. <th class="cap color-platform format-platform" style="color:#59f">IBM Streams</th> + <th class="cap color-platform format-platform" style="color:#59f">Apache Samza</th> + </tr> <tr class="cap"> @@ -6959,6 +7656,24 @@ limitations under the License. <center><b>Yes: supported</b></center><br /> </td> + + + <td width="25%" class="cap" style="background-color:#59f;border-color:#37d"><!-- +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +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. +--> +<center><b>Yes: supported</b></center><br /> +</td> + </tr> <tr class="cap"> @@ -7126,6 +7841,24 @@ limitations under the License. <center><b>Yes: supported</b></center><br /> </td> + + + <td width="25%" class="cap" style="background-color:#59f;border-color:#37d"><!-- +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +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. +--> +<center><b>Yes: supported</b></center><br /> +</td> + </tr> <tr class="cap"> @@ -7236,7 +7969,102 @@ 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. --> -<center><b>Yes: supported</b></center><br /> +<center><b>Yes: supported</b></center><br /> +</td> + + + + <td width="25%" class="cap" style="background-color:#59f;border-color:#37d"><!-- +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +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. +--> +<center><b>Yes: supported</b></center><br /> +</td> + + + + <td width="25%" class="cap" style="background-color:#59f;border-color:#37d"><!-- +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +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. +--> +<center><b>Yes: supported</b></center><br /> +</td> + + + + <td width="25%" class="cap" style="background-color:#59f;border-color:#37d"><!-- +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +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. +--> +<center><b>Yes: supported</b></center><br /> +</td> + + + + <td width="25%" class="cap" style="background-color:#59f;border-color:#37d"><!-- +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +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. +--> +<center><b>Yes: supported</b></center><br /> +</td> + + </tr> + + <tr class="cap"> + <th class="cap color-capability format-capability" style="color:#59f">Session windows</th> + + + + <td width="25%" class="cap" style="background-color:#59f;border-color:#37d"><!-- +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +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. +--> +<center><b>Yes: activity-based</b></center><br />Based on bursts of activity separated by a gap size. Different per key. </td> @@ -7254,7 +8082,7 @@ 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. --> -<center><b>Yes: supported</b></center><br /> +<center><b>Yes: built-in</b></center><br /> </td> @@ -7293,11 +8121,6 @@ limitations under the License. <center><b>Yes: supported</b></center><br /> </td> - </tr> - - <tr class="cap"> - <th class="cap color-capability format-capability" style="color:#59f">Session windows</th> - <td width="25%" class="cap" style="background-color:#59f;border-color:#37d"><!-- @@ -7313,7 +8136,7 @@ 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. --> -<center><b>Yes: activity-based</b></center><br />Based on bursts of activity separated by a gap size. Different per key. +<center><b>Yes: supported</b></center><br /> </td> @@ -7331,7 +8154,7 @@ 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. --> -<center><b>Yes: built-in</b></center><br /> +<center><b>Yes: supported</b></center><br /> </td> @@ -7406,6 +8229,11 @@ limitations under the License. <center><b>Yes: supported</b></center><br /> </td> + </tr> + + <tr class="cap"> + <th class="cap color-capability format-capability" style="color:#59f">Custom windows</th> + <td width="25%" class="cap" style="background-color:#59f;border-color:#37d"><!-- @@ -7421,7 +8249,7 @@ 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. --> -<center><b>Yes: supported</b></center><br /> +<center><b>Yes: user-defined windows</b></center><br />All windows must implement <tt>BoundedWindow</tt>, which specifies a max timestamp. Each <tt>WindowFn</tt> assigns elements to an associated window. </td> @@ -7460,11 +8288,6 @@ limitations under the License. <center><b>Yes: supported</b></center><br /> </td> - </tr> - - <tr class="cap"> - <th class="cap color-capability format-capability" style="color:#59f">Custom windows</th> - <td width="25%" class="cap" style="background-color:#59f;border-color:#37d"><!-- @@ -7480,7 +8303,7 @@ 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. --> -<center><b>Yes: user-defined windows</b></center><br />All windows must implement <tt>BoundedWindow</tt>, which specifies a max timestamp. Each <tt>WindowFn</tt> assigns elements to an associated window. +<center><b>Yes: supported</b></center><br /> </td> @@ -7591,6 +8414,11 @@ limitations under the License. <center><b>Yes: supported</b></center><br /> </td> + </tr> + + <tr class="cap"> + <th class="cap color-capability format-capability" style="color:#59f">Custom merging windows</th> + <td width="25%" class="cap" style="background-color:#59f;border-color:#37d"><!-- @@ -7606,7 +8434,7 @@ 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. --> -<center><b>Yes: supported</b></center><br /> +<center><b>Yes: user-defined merging windows</b></center><br />A custom <tt>WindowFn</tt> additionally specifies whether and how to merge windows. </td> @@ -7627,11 +8455,6 @@ limitations under the License. <center><b>Yes: supported</b></center><br /> </td> - </tr> - - <tr class="cap"> - <th class="cap color-capability format-capability" style="color:#59f">Custom merging windows</th> - <td width="25%" class="cap" style="background-color:#59f;border-color:#37d"><!-- @@ -7647,7 +8470,7 @@ 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. --> -<center><b>Yes: user-defined merging windows</b></center><br />A custom <tt>WindowFn</tt> additionally specifies whether and how to merge windows. +<center><b>Yes: supported</b></center><br /> </td> @@ -7776,6 +8599,11 @@ limitations under the License. <center><b>Yes: supported</b></center><br /> </td> + </tr> + + <tr class="cap"> + <th class="cap color-capability format-capability" style="color:#59f">Timestamp control</th> + <td width="25%" class="cap" style="background-color:#59f;border-color:#37d"><!-- @@ -7791,14 +8619,9 @@ 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. --> -<center><b>Yes: supported</b></center><br /> +<center><b>Yes: output timestamp for window panes</b></center><br />For a grouping transform, such as GBK or Combine, an OutputTimeFn specifies (1) how to combine input timestamps within a window and (2) how to merge aggregated timestamps when windows merge. </td> - </tr> - - <tr class="cap"> - <th class="cap color-capability format-capability" style="color:#59f">Timestamp control</th> - <td width="25%" class="cap" style="background-color:#59f;border-color:#37d"><!-- @@ -7814,7 +8637,7 @@ 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. --> -<center><b>Yes: output timestamp for window panes</b></center><br />For a grouping transform, such as GBK or Combine, an OutputTimeFn specifies (1) how to combine input timestamps within a window and (2) how to merge aggregated timestamps when windows merge. +<center><b>Yes: supported</b></center><br /> </td> @@ -7991,6 +8814,8 @@ limitations under the License. <th class="cap color-platform format-platform" style="color:#8c6">IBM Streams</th> + <th class="cap color-platform format-platform" style="color:#8c6">Apache Samza</th> + </tr> <tr class="cap"> @@ -8158,6 +8983,24 @@ limitations under the License. <center><b>Yes: fully supported</b></center><br /> </td> + + + <td width="25%" class="cap" style="background-color:#8c6;border-color:#6a4"><!-- +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +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. +--> +<center><b>Yes: fully supported</b></center><br /> +</td> + </tr> <tr class="cap"> @@ -8325,6 +9168,24 @@ limitations under the License. <center><b>Yes: fully supported</b></center><br /> </td> + + + <td width="25%" class="cap" style="background-color:#8c6;border-color:#6a4"><!-- +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +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. +--> +<center><b>Yes: fully supported</b></center><br /> +</td> + </tr> <tr class="cap"> @@ -8492,6 +9353,24 @@ limitations under the License. <center><b>Yes: fully supported</b></center><br /> </td> + + + <td width="25%" class="cap" style="background-color:#8c6;border-color:#6a4"><!-- +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +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. +--> +<center><b>Yes: fully supported</b></center><br /> +</td> + </tr> <tr class="cap"> @@ -8659,6 +9538,24 @@ limitations under the License. <center><b>Yes: fully supported</b></center><br /> </td> + + + <td width="25%" class="cap" style="background-color:#8c6;border-color:#6a4"><!-- +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +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. +--> +<center><b>Yes: fully supported</b></center><br /> +</td> + </tr> <tr class="cap"> @@ -8826,6 +9723,24 @@ limitations under the License. <center><b>No: pending model support</b></center><br /> </td> + + + <td width="25%" class="cap" style="background-color:#ddd;border-color:#6a4"><!-- +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +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. +--> +<center><b>No: pending model support</b></center><br /> +</td> + </tr> <tr class="cap"> @@ -8993,6 +9908,24 @@ limitations under the License. <center><b>Yes: fully supported</b></center><br /> </td> + + + <td width="25%" class="cap" style="background-color:#8c6;border-color:#6a4"><!-- +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +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. +--> +<center><b>Yes: fully supported</b></center><br /> +</td> + </tr> <tr class="cap"> @@ -9160,6 +10093,24 @@ limitations under the License. <center><b>Yes: fully supported</b></center><br /> </td> + + + <td width="25%" class="cap" style="background-color:#8c6;border-color:#6a4"><!-- +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +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. +--> +<center><b>Yes: fully supported</b></center><br /> +</td> + </tr> <tr class="cap"> @@ -9327,6 +10278,24 @@ limitations under the License. <center><b>Partially: non-merging windows</b></center><br /> </td> + + + <td width="25%" class="cap" style="background-color:#ddd;border-color:#6a4"><!-- +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +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. +--> +<center><b>No</b></center><br /> +</td> + </tr> <tr class="cap"> @@ -9357,6 +10326,8 @@ limitations under the License. <th class="cap color-platform format-platform" style="color:#d77">IBM Streams</th> + <th class="cap color-platform format-platform" style="color:#d77">Apache Samza</th> + </tr> <tr class="cap"> @@ -9524,6 +10495,24 @@ limitations under the License. <center><b>Yes: fully supported</b></center><br /> </td> + + + <td width="25%" class="cap" style="background-color:#d77;border-color:#b55"><!-- +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +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. +--> +<center><b>Yes: fully supported</b></center><br /> +</td> + </tr> <tr class="cap"> @@ -9691,6 +10680,24 @@ limitations under the License. <center><b>Yes: fully supported</b></center><br /> </td> + + + <td width="25%" class="cap" style="background-color:#d77;border-color:#b55"><!-- +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +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. +--> +<center><b>Yes: fully supported</b></center><br /> +</td> + </tr> <tr class="cap"> @@ -9858,6 +10865,24 @@ limitations under the License. <center><b>No: pending model support</b></center><br /> </td> + + + <td width="25%" class="cap" style="background-color:#ddd;border-color:#b55"><!-- +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +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. +--> +<center><b>No: pending model support</b></center><br /> +</td> + </tr> <tr class="cap"> diff --git a/content/documentation/runners/dataflow/index.html b/content/documentation/runners/dataflow/index.html index 4a0e565..86ca442 100644 --- a/content/documentation/runners/dataflow/index.html +++ b/content/documentation/runners/dataflow/index.html @@ -144,6 +144,7 @@ <li><a href="/documentation/runners/gearpump/">Apache Gearpump</a></li> <li><a href="/documentation/runners/spark/">Apache Spark</a></li> <li><a href="/documentation/runners/dataflow/">Google Cloud Dataflow</a></li> +<li><a href="/documentation/runners/samza/">Apache Samza</a></li> </ul> </nav> diff --git a/content/documentation/runners/direct/index.html b/content/documentation/runners/direct/index.html index b710b16..e3994aa 100644 --- a/content/documentation/runners/direct/index.html +++ b/content/documentation/runners/direct/index.html @@ -144,6 +144,7 @@ <li><a href="/documentation/runners/gearpump/">Apache Gearpump</a></li> <li><a href="/documentation/runners/spark/">Apache Spark</a></li> <li><a href="/documentation/runners/dataflow/">Google Cloud Dataflow</a></li> +<li><a href="/documentation/runners/samza/">Apache Samza</a></li> </ul> </nav> diff --git a/content/documentation/runners/flink/index.html b/content/documentation/runners/flink/index.html index bc3360e..51d96aa 100644 --- a/content/documentation/runners/flink/index.html +++ b/content/documentation/runners/flink/index.html @@ -144,6 +144,7 @@ <li><a href="/documentation/runners/gearpump/">Apache Gearpump</a></li> <li><a href="/documentation/runners/spark/">Apache Spark</a></li> <li><a href="/documentation/runners/dataflow/">Google Cloud Dataflow</a></li> +<li><a href="/documentation/runners/samza/">Apache Samza</a></li> </ul> </nav> diff --git a/content/documentation/runners/gearpump/index.html b/content/documentation/runners/gearpump/index.html index 2366a14..6d3b43b 100644 --- a/content/documentation/runners/gearpump/index.html +++ b/content/documentation/runners/gearpump/index.html @@ -144,6 +144,7 @@ <li><a href="/documentation/runners/gearpump/">Apache Gearpump</a></li> <li><a href="/documentation/runners/spark/">Apache Spark</a></li> <li><a href="/documentation/runners/dataflow/">Google Cloud Dataflow</a></li> +<li><a href="/documentation/runners/samza/">Apache Samza</a></li> </ul> </nav> diff --git a/content/documentation/runners/mapreduce/index.html b/content/documentation/runners/mapreduce/index.html index 18c2de5..419fa31 100644 --- a/content/documentation/runners/mapreduce/index.html +++ b/content/documentation/runners/mapreduce/index.html @@ -144,6 +144,7 @@ <li><a href="/documentation/runners/gearpump/">Apache Gearpump</a></li> <li><a href="/documentation/runners/spark/">Apache Spark</a></li> <li><a href="/documentation/runners/dataflow/">Google Cloud Dataflow</a></li> +<li><a href="/documentation/runners/samza/">Apache Samza</a></li> </ul> </nav> diff --git a/content/documentation/runners/flink/index.html b/content/documentation/runners/samza/index.html similarity index 54% copy from content/documentation/runners/flink/index.html copy to content/documentation/runners/samza/index.html index bc3360e..b97e69a 100644 --- a/content/documentation/runners/flink/index.html +++ b/content/documentation/runners/samza/index.html @@ -28,7 +28,7 @@ <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1"> - <title>Apache Flink Runner</title> + <title>Apache Samza Runner</title> <meta name="description" content="Apache Beam is an open source, unified model and set of language-specific SDKs for defining and executing data processing workflows, and also data ingestion and integration flows, supporting Enterprise Integration Patterns (EIPs) and Domain Specific Languages (DSLs). Dataflow pipelines simplify the mechanics of large-scale batch and streaming data processing and can run on a number of runtimes like Apache Flink, Apache Spark, and Google Cloud Dataflow [...] "> <link href="https://fonts.googleapis.com/css?family=Roboto:100,300,400" rel="stylesheet"> @@ -39,7 +39,7 @@ <script src="/js/fix-menu.js"></script> <script src="/js/section-nav.js"></script> <script src="/js/page-nav.js"></script> - <link rel="canonical" href="https://beam.apache.org/documentation/runners/flink/" data-proofer-ignore> + <link rel="canonical" href="https://beam.apache.org/documentation/runners/samza/" data-proofer-ignore> <link rel="shortcut icon" type="image/x-icon" href="/images/favicon.ico"> <link rel="alternate" type="application/rss+xml" title="Apache Beam" href="https://beam.apache.org/feed.xml"> <script> @@ -144,6 +144,7 @@ <li><a href="/documentation/runners/gearpump/">Apache Gearpump</a></li> <li><a href="/documentation/runners/spark/">Apache Spark</a></li> <li><a href="/documentation/runners/dataflow/">Google Cloud Dataflow</a></li> +<li><a href="/documentation/runners/samza/">Apache Samza</a></li> </ul> </nav> @@ -165,119 +166,117 @@ <ul class="nav"> - <li><a href="#flink-runner-prerequisites-and-setup">Flink Runner prerequisites and setup</a> + <li><a href="#samza-runner-prerequisites-and-setup">Samza Runner prerequisites and setup</a> <ul> <li><a href="#specify-your-dependency">Specify your dependency</a></li> </ul> </li> - <li><a href="#executing-a-pipeline-on-a-flink-cluster">Executing a pipeline on a Flink cluster</a></li> - <li><a href="#pipeline-options-for-the-flink-runner">Pipeline options for the Flink Runner</a></li> - <li><a href="#additional-information-and-caveats">Additional information and caveats</a> - <ul> - <li><a href="#monitoring-your-job">Monitoring your job</a></li> - <li><a href="#streaming-execution">Streaming Execution</a></li> - </ul> - </li> + <li><a href="#executing-a-pipeline-with-samza-runner">Executing a pipeline with Samza Runner</a></li> + <li><a href="#pipeline-options-for-the-samza-runner">Pipeline options for the Samza Runner</a></li> + <li><a href="#monitoring-your-job">Monitoring your job</a></li> </ul> </nav> <div class="body__contained body__section-nav"> - <!-- -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at + <h1 id="using-the-apache-samza-runner">Using the Apache Samza Runner</h1> -http://www.apache.org/licenses/LICENSE-2.0 +<p>The Apache Samza Runner can be used to execute Beam pipelines using <a href="http://samza.apache.org/">Apache Samza</a>. The Samza Runner executes Beam pipeline in a Samza application and can run locally. The application can further be built into a .tgz file, and deployed to a YARN cluster or Samza standalone cluster with Zookeeper.</p> -Unless required by applicable law or agreed to in writing, software -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. ---> -<h1 id="using-the-apache-flink-runner">Using the Apache Flink Runner</h1> - -<nav class="language-switcher"> - <strong>Adapt for:</strong> - <ul> - <li data-type="language-java">Java SDK</li> - <li data-type="language-py">Python SDK</li> - </ul> -</nav> - -<p>The Apache Flink Runner can be used to execute Beam pipelines using <a href="https://flink.apache.org">Apache Flink</a>. When using the Flink Runner you will create a jar file containing your job that can be executed on a regular Flink cluster. It’s also possible to execute a Beam pipeline using Flink’s local execution mode without setting up a cluster. This is helpful for development and debugging of your pipeline.</p> - -<p>The Flink Runner and Flink are suitable for large scale, continuous jobs, and provide:</p> +<p>The Samza Runner and Samza are suitable for large scale, stateful streaming jobs, and provide:</p> <ul> - <li>A streaming-first runtime that supports both batch processing and data streaming programs</li> - <li>A runtime that supports very high throughput and low event latency at the same time</li> - <li>Fault-tolerance with <em>exactly-once</em> processing guarantees</li> - <li>Natural back-pressure in streaming programs</li> - <li>Custom memory management for efficient and robust switching between in-memory and out-of-core data processing algorithms</li> - <li>Integration with YARN and other components of the Apache Hadoop ecosystem</li> + <li>First class support for local state (with RocksDB store). This allows fast state access for high frequency streaming jobs.</li> + <li>Fault-tolerance with support for incremental checkpointing of state instead of full snapshots. This enables Samza to scale to applications with very large state.</li> + <li>A fully asynchronous processing engine that makes remote calls efficient.</li> + <li>Flexible deployment model for running the the applications in any hosting environment with Zookeeper.</li> + <li>Features like canaries, upgrades and rollbacks that support extremely large deployments with minimal downtime.</li> </ul> -<p>The <a href="/documentation/runners/capability-matrix/">Beam Capability Matrix</a> documents the supported capabilities of the Flink Runner.</p> - -<h2 id="flink-runner-prerequisites-and-setup">Flink Runner prerequisites and setup</h2> - -<p>If you want to use the local execution mode with the Flink runner to don’t have to complete any setup.</p> - -<p>To use the Flink Runner for executing on a cluster, you have to setup a Flink cluster by following the Flink <a href="https://ci.apache.org/projects/flink/flink-docs-release-1.1/quickstart/setup_quickstart.html">setup quickstart</a>.</p> +<p>The <a href="/documentation/runners/capability-matrix/">Beam Capability Matrix</a> documents the currently supported capabilities of the Samza Runner.</p> -<p>To find out which version of Flink you need you can run this command to check the version of the Flink dependency that your project is using:</p> -<div class="highlighter-rouge"><pre class="highlight"><code>$ mvn dependency:tree -Pflink-runner |grep flink -... -[INFO] | +- org.apache.flink:flink-streaming-java_2.10:jar:1.2.1:runtime -... -</code></pre> -</div> -<p>Here, we would need Flink 1.2.1. Please also note the Scala version in the dependency name. In this case we need to make sure to use a Flink cluster with Scala version 2.10.</p> +<h2 id="samza-runner-prerequisites-and-setup">Samza Runner prerequisites and setup</h2> -<p>For more information, the <a href="https://ci.apache.org/projects/flink/flink-docs-release-1.1/">Flink Documentation</a> can be helpful.</p> +<p>The Samza Runner is built on Samza version greater than 0.14.1, and uses Scala version 2.11.</p> <h3 id="specify-your-dependency">Specify your dependency</h3> -<p><span class="language-java">When using Java, you must specify your dependency on the Flink Runner in your <code class="highlighter-rouge">pom.xml</code>.</span></p> +<p><span class="language-java">You can specify your dependency on the Samza Runner by adding the following to your <code class="highlighter-rouge">pom.xml</code>:</span></p> <div class="language-java highlighter-rouge"><pre class="highlight"><code><span class="o"><</span><span class="n">dependency</span><span class="o">></span> <span class="o"><</span><span class="n">groupId</span><span class="o">></span><span class="n">org</span><span class="o">.</span><span class="na">apache</span><span class="o">.</span><span class="na">beam</span><span class="o"></</span><span class="n">groupId</span><span class="o">></span> - <span class="o"><</span><span class="n">artifactId</span><span class="o">></span><span class="n">beam</span><span class="o">-</span><span class="n">runners</span><span class="o">-</span><span class="n">flink_2</span><span class="o">.</span><span class="mi">10</span><span class="o"></</span><span class="n">artifactId</span><span class="o">></span> + <span class="o"><</span><span class="n">artifactId</span><span class="o">></span><span class="n">beam</span><span class="o">-</span><span class="n">runners</span><span class="o">-</span><span class="n">samza_2</span><span class="o">.</span><span class="mi">11</span><span class="o"></</span><span class="n">artifactId</span><span class="o">></span> <span class="o"><</span><span class="n">version</span><span class="o">></span><span class="mf">2.5</span><span class="o">.</span><span class="mi">0</span><span class="o"></</span><span class="n">version</span><span class="o">></span> <span class="o"><</span><span class="n">scope</span><span class="o">></span><span class="n">runtime</span><span class="o"></</span><span class="n">scope</span><span class="o">></span> <span class="o"></</span><span class="n">dependency</span><span class="o">></span> -</code></pre> -</div> -<p><span class="language-py">This section is not applicable to the Beam SDK for Python.</span></p> +<span class="o"><!--</span> <span class="n">Samza</span> <span class="n">dependencies</span> <span class="o">--></span> +<span class="o"><</span><span class="n">dependency</span><span class="o">></span> + <span class="o"><</span><span class="n">groupId</span><span class="o">></span><span class="n">org</span><span class="o">.</span><span class="na">apache</span><span class="o">.</span><span class="na">samza</span><span class="o"></</span><span class="n">groupId</span><span class="o">></span> + <span class="o"><</span><span class="n">artifactId</span><span class="o">></span><span class="n">samza</span><span class="o">-</span><span class="n">api</span><span class="o"></</span><span class="n">artifactId</span><span class="o">></span> + <span class="o"><</span><span class="n">version</span><span class="o">></span><span class="err">$</span><span class="o">{</span><span class="n">samza</span><span class="o">.</span><span class="na">version</span><span class="o">}</</span><span class="n">version</span><span class="o">></span> +<span class="o"></</span><span class="n">dependency</span><span class="o">></span> -<h2 id="executing-a-pipeline-on-a-flink-cluster">Executing a pipeline on a Flink cluster</h2> +<span class="o"><</span><span class="n">dependency</span><span class="o">></span> + <span class="o"><</span><span class="n">groupId</span><span class="o">></span><span class="n">org</span><span class="o">.</span><span class="na">apache</span><span class="o">.</span><span class="na">samza</span><span class="o"></</span><span class="n">groupId</span><span class="o">></span> + <span class="o"><</span><span class="n">artifactId</span><span class="o">></span><span class="n">samza</span><span class="o">-</span><span class="n">core_2</span><span class="o">.</span><span class="mi">11</span><span class="o"></</span><span class="n">artifactId</span><span class="o">></span> + <span class="o"><</span><span class="n">version</span><span class="o">></span><span class="err">$</span><span class="o">{</span><span class="n">samza</span><span class="o">.</span><span class="na">version</span><span class="o">}</</span><span class="n">version</span><span class="o">></span> +<span class="o"></</span><span class="n">dependency</span><span class="o">></span> -<p>For executing a pipeline on a Flink cluster you need to package your program along will all dependencies in a so-called fat jar. How you do this depends on your build system but if you follow along the <a href="/get-started/quickstart/">Beam Quickstart</a> this is the command that you have to run:</p> +<span class="o"><</span><span class="n">dependency</span><span class="o">></span> + <span class="o"><</span><span class="n">groupId</span><span class="o">></span><span class="n">org</span><span class="o">.</span><span class="na">apache</span><span class="o">.</span><span class="na">samza</span><span class="o"></</span><span class="n">groupId</span><span class="o">></span> + <span class="o"><</span><span class="n">artifactId</span><span class="o">></span><span class="n">samza</span><span class="o">-</span><span class="n">kafka_2</span><span class="o">.</span><span class="mi">11</span><span class="o"></</span><span class="n">artifactId</span><span class="o">></span> + <span class="o"><</span><span class="n">version</span><span class="o">></span><span class="err">$</span><span class="o">{</span><span class="n">samza</span><span class="o">.</span><span class="na">version</span><span class="o">}</</span><span class="n">version</span><span class="o">></span> + <span class="o"><</span><span class="n">scope</span><span class="o">></span><span class="n">runtime</span><span class="o"></</span><span class="n">scope</span><span class="o">></span> +<span class="o"></</span><span class="n">dependency</span><span class="o">></span> + +<span class="o"><</span><span class="n">dependency</span><span class="o">></span> + <span class="o"><</span><span class="n">groupId</span><span class="o">></span><span class="n">org</span><span class="o">.</span><span class="na">apache</span><span class="o">.</span><span class="na">samza</span><span class="o"></</span><span class="n">groupId</span><span class="o">></span> + <span class="o"><</span><span class="n">artifactId</span><span class="o">></span><span class="n">samza</span><span class="o">-</span><span class="n">kv_2</span><span class="o">.</span><span class="mi">11</span><span class="o"></</span><span class="n">artifactId</span><span class="o">></span> + <span class="o"><</span><span class="n">version</span><span class="o">></span><span class="err">$</span><span class="o">{</span><span class="n">samza</span><span class="o">.</span><span class="na">version</span><span class="o">}</</span><span class="n">version</span><span class="o">></span> + <span class="o"><</span><span class="n">scope</span><span class="o">></span><span class="n">runtime</span><span class="o"></</span><span class="n">scope</span><span class="o">></span> +<span class="o"></</span><span class="n">dependency</span><span class="o">></span> -<div class="highlighter-rouge"><pre class="highlight"><code>$ mvn package -Pflink-runner +<span class="o"><</span><span class="n">dependency</span><span class="o">></span> + <span class="o"><</span><span class="n">groupId</span><span class="o">></span><span class="n">org</span><span class="o">.</span><span class="na">apache</span><span class="o">.</span><span class="na">samza</span><span class="o"></</span><span class="n">groupId</span><span class="o">></span> + <span class="o"><</span><span class="n">artifactId</span><span class="o">></span><span class="n">samza</span><span class="o">-</span><span class="n">kv</span><span class="o">-</span><span class="n">rocksdb_2</span><span class="o">.</span><span class="mi">11</span><span class="o"></</span><span class="n">artifactId</span><span class="o">></span> + <span class="o"><</span><span class="n">version</span><span class="o">></span><span class="err">$</span><span class="o">{</span><span class="n">samza</span><span class="o">.</span><span class="na">version</span><span class="o">}</</span><span class="n">version</span><span class="o">></span> + <span class="o"><</span><span class="n">scope</span><span class="o">></span><span class="n">runtime</span><span class="o"></</span><span class="n">scope</span><span class="o">></span> +<span class="o"></</span><span class="n">dependency</span><span class="o">></span> + </code></pre> </div> -<p>The Beam Quickstart Maven project is setup to use the Maven Shade plugin to create a fat jar and the <code class="highlighter-rouge">-Pflink-runner</code> argument makes sure to include the dependency on the Flink Runner.</p> -<p>For actually running the pipeline you would use this command</p> +<h2 id="executing-a-pipeline-with-samza-runner">Executing a pipeline with Samza Runner</h2> + +<p>If you run your pipeline locally or deploy it to a standalone cluster with all the jars and resource files, no packaging is required. For example, the following command runs the WordCount example:</p> + <div class="highlighter-rouge"><pre class="highlight"><code>$ mvn exec:java -Dexec.mainClass=org.apache.beam.examples.WordCount \ - -Pflink-runner \ - -Dexec.args="--runner=FlinkRunner \ - --inputFile=/path/to/pom.xml \ - --output=/path/to/counts \ - --flinkMaster=<flink master url> \ - --filesToStage=target/word-count-beam--bundled-0.1.jar" + -Psamza-runner \ + -Dexec.args="--runner=SamzaRunner \ + --inputFile=/path/to/input \ + --output=/path/to/counts" </code></pre> </div> -<p>If you have a Flink <code class="highlighter-rouge">JobManager</code> running on your local machine you can give <code class="highlighter-rouge">localhost:6123</code> for -<code class="highlighter-rouge">flinkMaster</code>.</p> -<h2 id="pipeline-options-for-the-flink-runner">Pipeline options for the Flink Runner</h2> +<p>To deploy your pipeline to a YARN cluster, here is the <a href="https://samza.apache.org/startup/hello-samza/latest/">instructions</a> of deploying a sample Samza job. First you need to package your application jars and resource files into a <code class="highlighter-rouge">.tgz</code> archive file, and make it available to download for Yarn containers. In your config, you need to specify the URI of this TGZ file location:</p> + +<div class="highlighter-rouge"><pre class="highlight"><code>yarn.package.path=${your_job_tgz_URI} + +job.name=${your_job_name} +job.factory.class=org.apache.samza.job.yarn.YarnJobFactory +job.coordinator.system=${job_coordinator_system} +job.default.system=${job_default_system} +</code></pre> +</div> + +<p>For more details on the configuration, see <a href="https://samza.apache.org/learn/documentation/latest/jobs/configuration-table.html">Samza Configuration Reference</a>.</p> + +<p>The config file will be passed in by setting the command line arg <code class="highlighter-rouge">--configFilePath=/path/to/config.properties</code>. With that, you can run your main class of Beam pipeline in a Yarn Resource Manager, and the Samza Runner will submit a Yarn job under the hood.</p> + +<h2 id="pipeline-options-for-the-samza-runner">Pipeline options for the Samza Runner</h2> -<p>When executing your pipeline with the Flink Runner, you can set these pipeline options.</p> +<p>When executing your pipeline with the Samza Runner, you can use the following pipeline options.</p> <table class="table table-bordered"> <tr> @@ -288,62 +287,45 @@ limitations under the License. <tr> <td><code>runner</code></td> <td>The pipeline runner to use. This option allows you to determine the pipeline runner at runtime.</td> - <td>Set to <code>FlinkRunner</code> to run using Flink.</td> + <td>Set to <code>SamzaRunner</code> to run using Samza.</td> </tr> <tr> - <td><code>streaming</code></td> - <td>Whether streaming mode is enabled or disabled; <code>true</code> if enabled. Set to <code>true</code> if running pipelines with unbounded <code>PCollection</code>s.</td> - <td><code>false</code></td> + <td><code>configFilePath</code></td> + <td>The config for Samza using a properties file.</td> + <td><code>empty</code>, i.e. use local execution.</td> </tr> <tr> - <td><code>flinkMaster</code></td> - <td>The url of the Flink JobManager on which to execute pipelines. This can either be the address of a cluster JobManager, in the form <code>"host:port"</code> or one of the special Strings <code>"[local]"</code> or <code>"[auto]"</code>. <code>"[local]"</code> will start a local Flink Cluster in the JVM while <code>"[auto]"</code> will let the system decide where to execute the pipeline based on the environment.</td> - <td><code>[auto]</code></td> + <td><code>configOverride</code></td> + <td>The config override to set programmatically.</td> + <td><code>empty</code>, i.e. use config file or local execution.</td> </tr> <tr> - <td><code>filesToStage</code></td> - <td>Jar Files to send to all workers and put on the classpath. Here you have to put the fat jar that contains your program along with all dependencies.</td> - <td>empty</td> -</tr> - -<tr> - <td><code>parallelism</code></td> - <td>The degree of parallelism to be used when distributing operations onto workers.</td> - <td><code>1</code></td> -</tr> -<tr> - <td><code>checkpointingInterval</code></td> - <td>The interval between consecutive checkpoints (i.e. snapshots of the current pipeline state used for fault tolerance).</td> - <td><code>-1L</code>, i.e. disabled</td> + <td><code>watermarkInterval</code></td> + <td>The interval to check for watermarks in milliseconds.</td> + <td><code>1000</code></td> </tr> <tr> - <td><code>numberOfExecutionRetries</code></td> - <td>Sets the number of times that failed tasks are re-executed. A value of <code>0</code> effectively disables fault tolerance. A value of <code>-1</code> indicates that the system default value (as defined in the configuration) should be used.</td> - <td><code>-1</code></td> + <td><code>systemBufferSize</code></td> + <td>The maximum number of messages to buffer for a given system.</td> + <td><code>5000</code></td> </tr> <tr> - <td><code>executionRetryDelay</code></td> - <td>Sets the delay between executions. A value of <code>-1</code> indicates that the default value should be used.</td> - <td><code>-1</code></td> + <td><code>maxSourceParallelism</code></td> + <td>The maximum parallelism allowed for any data source.</td> + <td><code>1</code></td> </tr> <tr> - <td><code>stateBackend</code></td> - <td>Sets the state backend to use in streaming mode. The default is to read this setting from the Flink config.</td> - <td><code>empty</code>, i.e. read from Flink config</td> + <td><code>storeBatchGetSize</code></td> + <td>The batch get size limit for the state store.</td> + <td><code>10000</code></td> </tr> </table> -<p>See the reference documentation for the <span class="language-java"><a href="/documentation/sdks/javadoc/2.5.0/index.html?org/apache/beam/runners/flink/FlinkPipelineOptions.html">FlinkPipelineOptions</a></span><span class="language-py"><a href="https://github.com/apache/beam/blob/master/sdks/python/apache_beam/options/pipeline_options.py">PipelineOptions</a></span> interface (and its subinterfaces) for the complete list of pipeline configuration options.</p> - -<h2 id="additional-information-and-caveats">Additional information and caveats</h2> - -<h3 id="monitoring-your-job">Monitoring your job</h3> - -<p>You can monitor a running Flink job using the Flink JobManager Dashboard. By default, this is available at port <code class="highlighter-rouge">8081</code> of the JobManager node. If you have a Flink installation on your local machine that would be <code class="highlighter-rouge">http://localhost:8081</code>.</p> +<h2 id="monitoring-your-job">Monitoring your job</h2> -<h3 id="streaming-execution">Streaming Execution</h3> +<p>You can monitor your pipeline job using metrics emitted from both Beam and Samza, e.g. Beam source metrics such as <code class="highlighter-rouge">elements_read</code> and <code class="highlighter-rouge">backlog_elements</code>, and Samza job metrics such as <code class="highlighter-rouge">job-healthy</code> and <code class="highlighter-rouge">process-envelopes</code>. A complete list of Samza metrics is in <a href="https://samza.apache.org/learn/documentation/latest/container/metrics [...] -<p>If your pipeline uses an unbounded data source or sink, the Flink Runner will automatically switch to streaming mode. You can enforce streaming mode by using the <code class="highlighter-rouge">streaming</code> setting mentioned above.</p> +<p>For a running Samza YARN job, you can use YARN web UI to monitor the job status and check logs.</p> </div> </div> diff --git a/content/documentation/runners/spark/index.html b/content/documentation/runners/spark/index.html index 0c22a2e..55d828e 100644 --- a/content/documentation/runners/spark/index.html +++ b/content/documentation/runners/spark/index.html @@ -144,6 +144,7 @@ <li><a href="/documentation/runners/gearpump/">Apache Gearpump</a></li> <li><a href="/documentation/runners/spark/">Apache Spark</a></li> <li><a href="/documentation/runners/dataflow/">Google Cloud Dataflow</a></li> +<li><a href="/documentation/runners/samza/">Apache Samza</a></li> </ul> </nav> diff --git a/content/get-started/beam-overview/index.html b/content/get-started/beam-overview/index.html index 06e13a9..b9b8275 100644 --- a/content/get-started/beam-overview/index.html +++ b/content/get-started/beam-overview/index.html @@ -233,6 +233,7 @@ limitations under the License. <li>Apache Gearpump (incubating) <img src="/images/logos/runners/gearpump.png" alt="Apache Gearpump logo" /></li> <li>Apache Spark <img src="/images/logos/runners/spark.png" alt="Apache Spark logo" /></li> <li>Google Cloud Dataflow <img src="/images/logos/runners/dataflow.png" alt="Google Cloud Dataflow logo" /></li> + <li>Apache Samza <img src="/images/logos/runners/samza.png" alt="Apache Samza logo" /></li> </ul> <p><strong>Note:</strong> You can always execute your pipeline locally for testing and debugging purposes.</p> diff --git a/content/get-started/quickstart-java/index.html b/content/get-started/quickstart-java/index.html index 573aff0..eb293de 100644 --- a/content/get-started/quickstart-java/index.html +++ b/content/get-started/quickstart-java/index.html @@ -312,6 +312,11 @@ $ mvn compile exec:java -Dexec.mainClass=org.apache.beam.examples.WordCount \ </code></pre> </div> +<div class="runner-samza-local highlighter-rouge"><pre class="highlight"><code>$ mvn compile exec:java -Dexec.mainClass=org.apache.beam.examples.WordCount \ + -Dexec.args="--inputFile=pom.xml --output=/tmp/counts --runner=SamzaRunner" -Psamza-runner +</code></pre> +</div> + <h2 id="inspect-the-results">Inspect the results</h2> <p>Once the pipeline has completed, you can view the output. You’ll notice that there may be multiple output files prefixed by <code class="highlighter-rouge">count</code>. The exact number of these files is decided by the runner, giving it the flexibility to do efficient, distributed execution.</p> @@ -340,6 +345,10 @@ $ mvn compile exec:java -Dexec.mainClass=org.apache.beam.examples.WordCount \ </code></pre> </div> +<div class="runner-samza-local highlighter-rouge"><pre class="highlight"><code>$ ls /tmp/counts* +</code></pre> +</div> + <p>When you look into the contents of the file, you’ll see that they contain unique words and the number of occurrences of each word. The order of elements within the file may differ because the Beam model does not generally guarantee ordering, again to allow runners to optimize for efficiency.</p> <div class="runner-direct highlighter-rouge"><pre class="highlight"><code>$ more counts* @@ -414,6 +423,18 @@ barrenly: 1 </code></pre> </div> +<div class="runner-samza-local highlighter-rouge"><pre class="highlight"><code>$ more /tmp/counts* +api: 7 +are: 2 +can: 2 +com: 14 +end: 14 +for: 14 +has: 2 +... +</code></pre> +</div> + <h2 id="next-steps">Next Steps</h2> <ul> diff --git a/content/get-started/wordcount-example/index.html b/content/get-started/wordcount-example/index.html index dc811b8..7844c32 100644 --- a/content/get-started/wordcount-example/index.html +++ b/content/get-started/wordcount-example/index.html @@ -618,6 +618,11 @@ You can monitor the running job by visiting the Flink dashboard at http://<fl </code></pre> </div> +<div class="runner-samza-local highlighter-rouge"><pre class="highlight"><code>$ mvn compile exec:java -Dexec.mainClass=org.apache.beam.examples.WordCount \ + -Dexec.args="--inputFile=pom.xml --output=counts --runner=SamzaRunner" -Psamza-runner +</code></pre> +</div> + <p>To view the full code in Java, see <strong><a href="https://github.com/apache/beam/blob/master/examples/java/src/main/java/org/apache/beam/examples/WordCount.java">WordCount</a>.</strong></p> @@ -653,6 +658,10 @@ python -m apache_beam.examples.wordcount --input gs://dataflow-samples/shakespea </code></pre> </div> +<div class="runner-samza-local highlighter-rouge"><pre class="highlight"><code>This runner is not yet available for the Python SDK. +</code></pre> +</div> + <p>To view the full code in Python, see <strong><a href="https://github.com/apache/beam/blob/master/sdks/python/apache_beam/examples/wordcount.py">wordcount.py</a>.</strong></p> @@ -689,6 +698,10 @@ $ wordcount --input gs://dataflow-samples/shakespeare/kinglear.txt \ </code></pre> </div> +<div class="runner-samza-local highlighter-rouge"><pre class="highlight"><code>This runner is not yet available for the Go SDK. +</code></pre> +</div> + <p>To view the full code in Go, see <strong><a href="https://github.com/apache/beam/blob/master/sdks/go/examples/wordcount/wordcount.go">wordcount.go</a>.</strong></p> @@ -925,6 +938,11 @@ You can monitor the running job by visiting the Flink dashboard at http://<fl </code></pre> </div> +<div class="runner-samza-local highlighter-rouge"><pre class="highlight"><code>$ mvn compile exec:java -Dexec.mainClass=org.apache.beam.examples.DebuggingWordCount \ + -Dexec.args="--runner=SamzaRunner --output=counts" -Psamza-runner +</code></pre> +</div> + <p>To view the full code in Java, see <a href="https://github.com/apache/beam/blob/master/examples/java/src/main/java/org/apache/beam/examples/DebuggingWordCount.java">DebuggingWordCount</a>.</p> @@ -960,6 +978,10 @@ python -m apache_beam.examples.wordcount_debugging --input gs://dataflow-samples </code></pre> </div> +<div class="runner-samza-local highlighter-rouge"><pre class="highlight"><code>This runner is not yet available for the Python SDK. +</code></pre> +</div> + <p>To view the full code in Python, see <strong><a href="https://github.com/apache/beam/blob/master/sdks/python/apache_beam/examples/wordcount_debugging.py">wordcount_debugging.py</a>.</strong></p> @@ -996,6 +1018,10 @@ $ debugging_wordcount --input gs://dataflow-samples/shakespeare/kinglear.txt \ </code></pre> </div> +<div class="runner-samza-local highlighter-rouge"><pre class="highlight"><code>This runner is not yet available for the Go SDK. +</code></pre> +</div> + <p>To view the full code in Go, see <strong><a href="https://github.com/apache/beam/blob/master/sdks/go/examples/debugging_wordcount/debugging_wordcount.go">debugging_wordcount.go</a>.</strong></p> @@ -1243,6 +1269,11 @@ You can monitor the running job by visiting the Flink dashboard at http://<fl </code></pre> </div> +<div class="runner-samza-local highlighter-rouge"><pre class="highlight"><code>$ mvn compile exec:java -Dexec.mainClass=org.apache.beam.examples.WindowedWordCount \ + -Dexec.args="--runner=SamzaRunner --inputFile=pom.xml --output=counts" -Psamza-runner +</code></pre> +</div> + <p>To view the full code in Java, see <strong><a href="https://github.com/apache/beam/blob/master/examples/java/src/main/java/org/apache/beam/examples/WindowedWordCount.java">WindowedWordCount</a>.</strong></p> @@ -1282,6 +1313,10 @@ python -m apache_beam.examples.windowed_wordcount --input YOUR_INPUT_FILE \ </code></pre> </div> +<div class="runner-samza-local highlighter-rouge"><pre class="highlight"><code>This runner is not yet available for the Python SDK. +</code></pre> +</div> + <p>To view the full code in Python, see <strong><a href="https://github.com/apache/beam/blob/master/sdks/python/apache_beam/examples/windowed_wordcount.py">windowed_wordcount.py</a>.</strong></p> @@ -1318,6 +1353,10 @@ $ windowed_wordcount --input gs://dataflow-samples/shakespeare/kinglear.txt \ </code></pre> </div> +<div class="runner-samza-local highlighter-rouge"><pre class="highlight"><code>This runner is not yet available for the Go SDK. +</code></pre> +</div> + <p>To view the full code in Go, see <strong><a href="https://github.com/apache/beam/blob/master/sdks/go/examples/windowed_wordcount/windowed_wordcount.go">windowed_wordcount.go</a>.</strong></p> @@ -1540,6 +1579,10 @@ python -m apache_beam.examples.streaming_wordcount \ </code></pre> </div> +<div class="runner-samza-local highlighter-rouge"><pre class="highlight"><code>This runner is not yet available for the Python SDK. +</code></pre> +</div> + <p>To view the full code in Python, see <strong><a href="https://github.com/apache/beam/blob/master/sdks/python/apache_beam/examples/streaming_wordcount.py">streaming_wordcount.py</a>.</strong></p> diff --git a/content/images/logo_samza.png b/content/images/logo_samza.png new file mode 100644 index 0000000..88e5ba3 Binary files /dev/null and b/content/images/logo_samza.png differ diff --git a/content/images/logos/runners/samza.png b/content/images/logos/runners/samza.png new file mode 100644 index 0000000..88e5ba3 Binary files /dev/null and b/content/images/logos/runners/samza.png differ diff --git a/content/index.html b/content/index.html index a9f0b31..d37f1cd 100644 --- a/content/index.html +++ b/content/index.html @@ -252,6 +252,10 @@ limitations under the License. <a href="http://gearpump.apache.org/"><img src="/images/logo_gearpump.png" alt="Gearpump" /></a> </div> + <div class="logos__logos__logo"> + <a href="http://samza.apache.org/"><img src="/images/logo_samza.png" alt="Samza" /></a> + </div> + </div> </div> diff --git a/content/learn/runners/Samza/index.html b/content/learn/runners/Samza/index.html new file mode 100644 index 0000000..2a405db --- /dev/null +++ b/content/learn/runners/Samza/index.html @@ -0,0 +1,10 @@ +<!DOCTYPE html> +<html lang="en-US"> +<meta charset="utf-8"> +<title>Redirecting…</title> +<link rel="canonical" href="https://beam.apache.org/documentation/runners/samza/"> +<meta http-equiv="refresh" content="0; url=https://beam.apache.org/documentation/runners/samza/"> +<h1>Redirecting…</h1> +<a href="https://beam.apache.org/documentation/runners/samza/">Click here if you are not redirected.</a> +<script>location="https://beam.apache.org/documentation/runners/samza/"</script> +</html>