This is an automated email from the ASF dual-hosted git repository.

git-site-role pushed a commit to branch asf-site
in repository https://gitbox.apache.org/repos/asf/beam.git


The following commit(s) were added to refs/heads/asf-site by this push:
     new 26cf5f70ca7 Publishing website 2023/06/26 22:17:27 at commit a845d97
26cf5f70ca7 is described below

commit 26cf5f70ca7959f0e267b4b21f2f2afaaf517366
Author: jenkins <bui...@apache.org>
AuthorDate: Mon Jun 26 22:17:27 2023 +0000

    Publishing website 2023/06/26 22:17:27 at commit a845d97
---
 .../generated-content/case-studies/hsbc/index.html |  30 ++++
 website/generated-content/case-studies/index.html  |   3 +-
 website/generated-content/case-studies/index.xml   | 196 +++++++++++++++++++--
 .../images/case-study/hsbc/andrzej_golonka.jpg     | Bin 0 -> 40744 bytes
 .../images/case-study/hsbc/chup_cheng.jpg          | Bin 0 -> 114863 bytes
 .../images/case-study/hsbc/scheme-10.png           | Bin 0 -> 150719 bytes
 .../images/case-study/hsbc/scheme-11.png           | Bin 0 -> 34104 bytes
 .../images/case-study/hsbc/scheme-9.png            | Bin 0 -> 39137 bytes
 .../images/logos/powered-by/hsbc.png               | Bin 0 -> 3391 bytes
 website/generated-content/index.html               |   3 +-
 website/generated-content/sitemap.xml              |   2 +-
 11 files changed, 218 insertions(+), 16 deletions(-)

diff --git a/website/generated-content/case-studies/hsbc/index.html 
b/website/generated-content/case-studies/hsbc/index.html
new file mode 100644
index 00000000000..0c2c503ad2a
--- /dev/null
+++ b/website/generated-content/case-studies/hsbc/index.html
@@ -0,0 +1,30 @@
+<!doctype html><html lang=en class=no-js><head><meta charset=utf-8><meta 
http-equiv=x-ua-compatible content="IE=edge"><meta name=viewport 
content="width=device-width,initial-scale=1"><title>High-Performance 
Quantitative Risk Analysis with Apache Beam at HSBC</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 Ent [...]
+<a class=navbar-link href=/get-started/>Get Started</a>
+<a class=navbar-link href=/documentation/>Documentation</a>
+<button type=button class="navbar-toggle menu-open" aria-expanded=false 
aria-controls=navbar onclick=openMenu()>
+<span class=sr-only>Toggle navigation</span>
+<span class=icon-bar></span><span class=icon-bar></span><span 
class=icon-bar></span></button></div><div class="navbar-mask closed"></div><div 
id=navbar class="navbar-container closed"><button type=button 
class=navbar-toggle aria-expanded=false aria-controls=navbar id=closeMenu>
+<span class=sr-only>Toggle navigation</span>
+<span class=icon-bar></span><span class=icon-bar></span><span 
class=icon-bar></span></button><ul class="nav navbar-nav"><li><div 
class=searchBar-mobile><script>(function(){var 
cx='012923275103528129024:4emlchv9wzi';var 
gcse=document.createElement('script');gcse.type='text/javascript';gcse.async=true;gcse.src='https://cse.google.com/cse.js?cx='+cx;var
 
s=document.getElementsByTagName('script')[0];s.parentNode.insertBefore(gcse,s);})();</script><gcse:search></gcse:search></div></li><li><a
 c [...]
+&nbsp;Apache
+<span class=arrow-icon><svg xmlns="http://www.w3.org/2000/svg"; width="20" 
height="20" fill="none" viewBox="0 0 20 20"><circle cx="10" cy="10" r="10" 
fill="#ff6d00"/><path stroke="#fff" stroke-linecap="round" 
stroke-linejoin="round" stroke-width="2" d="M8.535 5.28l4.573 4.818-4.573 
4.403"/></svg></span></a><ul class="dropdown-menu dropdown-menu-right"><li><a 
target=_blank href=https://www.apache.org/>ASF Homepage</a></li><li><a 
target=_blank href=https://www.apache.org/licenses/>License</ [...]
+<a class=navbar-link href=/get-started/>Get Started</a><li class="dropdown 
navbar-dropdown navbar-dropdown-documentation"><a href=# class="dropdown-toggle 
navbar-link" role=button aria-haspopup=true aria-expanded=false>Documentation
+<span><svg xmlns="http://www.w3.org/2000/svg"; width="12" height="11" 
fill="none" viewBox="0 0 12 11"><path stroke="#ff6d00" stroke-linecap="round" 
stroke-linejoin="round" stroke-width="2" d="M10.666 4.535 5.847 9.108 1.444 
4.535"/></svg></span></a><ul class=dropdown-menu><li><a 
class=navbar-dropdown-menu-link href=/documentation/>General</a></li><li><a 
class=navbar-dropdown-menu-link 
href=/documentation/sdks/java/>Languages</a></li><li><a 
class=navbar-dropdown-menu-link href=/documentati [...]
+<a class=navbar-link href=/community/>Community</a>
+<a class=navbar-link href=/contribute/>Contribute</a>
+<a class=navbar-link href=/blog/>Blog</a>
+<a class=navbar-link href=/case-studies/>Case Studies</a></div><div 
id=iconsBar><a type=button onclick=showSearch()><svg 
xmlns="http://www.w3.org/2000/svg"; width="25" height="24" fill="none" 
viewBox="0 0 25 24"><path stroke="#ff6d00" stroke-linecap="round" 
stroke-linejoin="round" stroke-width="2.75" d="M10.191 17c3.866.0 7-3.134 
7-7s-3.134-7-7-7-7 3.134-7 7 3.134 7 7 7zM21.191 21l-6-6"/></svg></a><a 
target=_blank 
href=https://github.com/apache/beam/edit/master/website/www/site/content/en 
[...]
+&nbsp;Apache
+<span class=arrow-icon><svg xmlns="http://www.w3.org/2000/svg"; width="20" 
height="20" fill="none" viewBox="0 0 20 20"><circle cx="10" cy="10" r="10" 
fill="#ff6d00"/><path stroke="#fff" stroke-linecap="round" 
stroke-linejoin="round" stroke-width="2" d="M8.535 5.28l4.573 4.818-4.573 
4.403"/></svg></span></a><ul class=dropdown-menu><li><a 
class=navbar-dropdown-menu-link target=_blank href=https://www.apache.org/>ASF 
Homepage</a></li><li><a class=navbar-dropdown-menu-link target=_blank href= 
[...]
+<img class=banner-img-mobile src=/images/banner_mobile.png 
alt=banner-mobile></a></div><div class=swiper-slide><a 
href=https://tour.beam.apache.org><img class=banner-img-desktop 
src=/images/banners/tour-of-beam/tour-of-beam-desktop.png alt="Start Tour of 
Beam">
+<img class=banner-img-mobile 
src=/images/banners/tour-of-beam/tour-of-beam-mobile.png alt="Start Tour of 
Beam"></a></div><div class=swiper-slide><a 
href=https://beam.apache.org/documentation/ml/overview/><img 
class=banner-img-desktop 
src=/images/banners/machine-learning/machine-learning-desktop.jpg alt="Machine 
Learning">
+<img class=banner-img-mobile 
src=/images/banners/machine-learning/machine-learning-mobile.jpg alt="Machine 
Learning"></a></div></div><div class=swiper-pagination></div></div><script 
src=/js/swiper-bundle.min.min.7254d5540ccfd11a365b2208463211a9711f0a5ec142279e3a8467eaba087a51.js></script><script
 
src=/js/sliders/top-banners.min.23c91b8be0b1fbdeb1377538e4c0de356631d9311eb3daef74f1dc389091e35f.js></script><script>function
 showSearch(){addPlaceholder();var search=document.querySelector(".sea [...]
+function addPlaceholder(){$('input:text').attr('placeholder',"What are you 
looking for?");}
+function endSearch(){var 
search=document.querySelector(".searchBar");search.classList.add("disappear");var
 icons=document.querySelector("#iconsBar");icons.classList.remove("disappear");}
+function blockScroll(){$("body").toggleClass("fixedPosition");}
+function openMenu(){addPlaceholder();blockScroll();}</script><div 
class="clearfix container-main-content"><nav class="page-nav clearfix" 
data-offset-top=90 data-offset-bottom=500><nav id=TableOfContents><ul><li><a 
href=#background>Background</a></li><li><a href=#risk-management-at-scale>Risk 
Management at Scale</a></li><li><a href=#journey-to-beam>Journey to 
Beam</a></li><li><a href=#data-distribution-easier-than-before>Data 
Distribution Easier than Before</a></li><li><a href=#beam-as-a- [...]
+<button class="btn case-study-feedback-btn" 
onclick="sendCaseStudyFeedback(false,'HSBC')">No</button></div></div></div><div 
class=clear-nav></div></div></div></div></article></div></div><footer 
class=footer><div class=footer__contained><div class=footer__cols><div 
class="footer__cols__col footer__cols__col__logos"><div 
class=footer__cols__col__logo><img src=/images/beam_logo_circle.svg 
class=footer__logo alt="Beam logo"></div><div 
class=footer__cols__col__logo><img src=/images/apache_log [...]
+<a href=https://www.apache.org>The Apache Software Foundation</a>
+| <a href=/privacy_policy>Privacy Policy</a>
+| <a href=/feed.xml>RSS Feed</a><br><br>Apache Beam, Apache, Beam, the Beam 
logo, and the Apache feather logo are either registered trademarks or 
trademarks of The Apache Software Foundation. All other products or name brands 
are trademarks of their respective holders, including The Apache Software 
Foundation.</div></div><div class="footer__cols__col 
footer__cols__col__logos"><div class=footer__cols__col--group><div 
class=footer__cols__col__logo><a href=https://github.com/apache/beam><im [...]
+container.innerHTML='<p class="case-study-feedback-title">Thank you for your 
feedback!</p>'}</script></body></html>
\ No newline at end of file
diff --git a/website/generated-content/case-studies/index.html 
b/website/generated-content/case-studies/index.html
index 7a8b81725fa..51cbb13734e 100644
--- a/website/generated-content/case-studies/index.html
+++ b/website/generated-content/case-studies/index.html
@@ -23,7 +23,8 @@ function 
addPlaceholder(){$('input:text').attr('placeholder',"What are you looki
 function endSearch(){var 
search=document.querySelector(".searchBar");search.classList.add("disappear");var
 icons=document.querySelector("#iconsBar");icons.classList.remove("disappear");}
 function blockScroll(){$("body").toggleClass("fixedPosition");}
 function openMenu(){addPlaceholder();blockScroll();}</script><div 
class="clearfix container-main-content"><nav class="page-nav clearfix" 
data-offset-top=90 data-offset-bottom=500><nav 
id=TableOfContents></nav></nav><div class="body__contained 
body__section-no-nav--wide case-study-page"><div class=blog-content><h1>Case 
Studies</h1><p class=case-study-about>Apache Beam powers many of today’s 
leading projects, industry-specific use cases, and
-startups.</p><div class=case-study-list><div class=case-study-card><div 
class=case-study-card-img><img src=/images/logos/powered-by/project_shield.png 
loading=lazy></i></div><h3 class=case-study-card-title>Efficient Streaming 
Analytics: Making the Web a Safer Place with Project Shield</h3><p 
class=case-study-card-description>Project Shield defends the websites of over 
3K vulnerable organizations in >150 countries against DDoS attacks with the 
mission of protecting freedom of speech. The  [...]
+startups.</p><div class=case-study-list><div class=case-study-card><div 
class=case-study-card-img><img src=/images/logos/powered-by/hsbc.png 
loading=lazy></i></div><h3 class=case-study-card-title>High-Performance 
Quantitative Risk Analysis with Apache Beam at HSBC</h3><p 
class=case-study-card-description>HSBC finds Apache Beam to be more than a data 
processing framework. It is also a computational platform and a risk engine 
that allowed for 100x scaling and 2x faster performance of HSBC’ [...]
+<img src=/images/arrow-right.svg alt="Go to the case study"></a></div><div 
class=case-study-card><div class=case-study-card-img><img 
src=/images/logos/powered-by/project_shield.png loading=lazy></i></div><h3 
class=case-study-card-title>Efficient Streaming Analytics: Making the Web a 
Safer Place with Project Shield</h3><p 
class=case-study-card-description>Project Shield defends the websites of over 
3K vulnerable organizations in >150 countries against DDoS attacks with the 
mission of prot [...]
 <img src=/images/arrow-right.svg alt="Go to the case study"></a></div><div 
class=case-study-card><div class=case-study-card-img><img 
src=/images/logos/powered-by/booking.png loading=lazy></i></div><h3 
class=case-study-card-title>Mass Ad Bidding With Beam at Booking.com</h3><p 
class=case-study-card-description>Apache Beam powers Booking.com’s global ads 
bidding and performance infrastructure, supporting 1M+ queries monthly for 
workflows across multiple data systems scanning 2 PB+ of analy [...]
 <img src=/images/arrow-right.svg alt="Go to the case study"></a></div><div 
class=case-study-card><div class=case-study-card-img><img 
src=/images/logos/powered-by/credit-karma.png loading=lazy></i></div><h3 
class=case-study-card-title>Self-service Machine Learning Workflows and Scaling 
MLOps with Apache Beam</h3><p class=case-study-card-description>Apache Beam has 
future-proofed Credit Karma’s data and ML platform for scalability and 
efficiency, enabling MLOps with unified pipelines, proc [...]
 <img src=/images/arrow-right.svg alt="Go to the case study"></a></div><div 
class=case-study-card><div class=case-study-card-img><img 
src=/images/logos/powered-by/intuit.png loading=lazy></i></div><h3 
class=case-study-card-title>Powering Streaming and Real-time ML at 
Intuit</h3><p class=case-study-card-description>We feel that the runner 
agnosticism of Apache Beam affords flexibility and future-proofs our Stream 
Processing Platform as new runtimes are developed. Apache Beam enabled the de 
[...]
diff --git a/website/generated-content/case-studies/index.xml 
b/website/generated-content/case-studies/index.xml
index a79be11fd83..fb2ed36ef47 100644
--- a/website/generated-content/case-studies/index.xml
+++ b/website/generated-content/case-studies/index.xml
@@ -1,4 +1,185 @@
-<rss version="2.0" 
xmlns:atom="http://www.w3.org/2005/Atom";><channel><title>Apache Beam – Case 
Studies</title><link>/case-studies/</link><description>Recent content in Case 
Studies on Apache Beam</description><generator>Hugo -- 
gohugo.io</generator><atom:link href="/case-studies/index.xml" rel="self" 
type="application/rss+xml"/><item><title>Case-Studies: Efficient Streaming 
Analytics: Making the Web a Safer Place with Project 
Shield</title><link>/case-studies/projectshield/</link><pubDat [...]
+<rss version="2.0" 
xmlns:atom="http://www.w3.org/2005/Atom";><channel><title>Apache Beam – Case 
Studies</title><link>/case-studies/</link><description>Recent content in Case 
Studies on Apache Beam</description><generator>Hugo -- 
gohugo.io</generator><atom:link href="/case-studies/index.xml" rel="self" 
type="application/rss+xml"/><item><title>Case-Studies: High-Performance 
Quantitative Risk Analysis with Apache Beam at 
HSBC</title><link>/case-studies/hsbc/</link><pubDate>Tue, 20 Jun 2023 0 [...]
+&lt;!--
+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.
+-->
+&lt;div class="case-study-opinion">
+&lt;div class="case-study-opinion-img">
+&lt;img src="/images/logos/powered-by/hsbc.png"/>
+&lt;/div>
+&lt;blockquote class="case-study-quote-block">
+&lt;p class="case-study-quote-text">
+“Our data volume is huge and Apache Beam helps make it manageable. For each of 
the millions of trades per day, we generate a simulation of their market 
valuation evolution at granular level of future time increment, then by 
scanning multiple plausible market scenarios we aggregate this massive data 
into meaningful statistics. Apache Beam helps harness all of that data and 
makes data distribution much easier than before.”
+&lt;/p>
+&lt;div class="case-study-quote-author">
+&lt;div class="case-study-quote-author-img">
+&lt;img src="/images/case-study/hsbc/andrzej_golonka.jpg">
+&lt;/div>
+&lt;div class="case-study-quote-author-info">
+&lt;div class="case-study-quote-author-name">
+Andrzej Golonka
+&lt;/div>
+&lt;div class="case-study-quote-author-position">
+Lead Assistant Vice President @ HSBC
+&lt;/div>
+&lt;/div>
+&lt;/div>
+&lt;/blockquote>
+&lt;blockquote class="case-study-quote-block">
+&lt;p class="case-study-quote-text">
+“The Apache Beam Python SDK brought math to the orchestration level by 
providing an easy way for HSBC’s model development team to emulate 
sophisticated mathematical dependencies between nodes of business logic 
workflow in pipelines written in Python. We used to spend at least 6 months 
deploying even small changes to a system of equations in production. With the 
new team structure driven by Apache Beam, we now can deploy changes as quickly 
as within 1 week.”
+&lt;/p>
+&lt;div class="case-study-quote-author">
+&lt;div class="case-study-quote-author-img">
+&lt;img src="/images/case-study/hsbc/chup_cheng.jpg">
+&lt;/div>
+&lt;div class="case-study-quote-author-info">
+&lt;div class="case-study-quote-author-name">
+Chup Cheng
+&lt;/div>
+&lt;div class="case-study-quote-author-position">
+VP of XVA and CCR Capital Analytics @ HSBC
+&lt;/div>
+&lt;/div>
+&lt;/div>
+&lt;/blockquote>
+&lt;/div>
+&lt;div class="case-study-post">
+&lt;h1 
id="high-performance-quantitative-risk-analysis-with-apache-beam-at-hsbc">High-Performance
 Quantitative Risk Analysis with Apache Beam at HSBC&lt;/h1>
+&lt;h2 id="background">Background&lt;/h2>
+&lt;p>&lt;a href="https://www.hsbc.com/";>HSBC Holdings plc&lt;/a>, the parent 
company of HSBC, is headquartered in London. HSBC serves customers worldwide 
from offices in 62 countries and territories. With assets of $2,990bn as of 31 
March 2023, HSBC is one of the world’s largest banking and financial services 
organisations. HSBC’s &lt;a href="https://www.gbm.hsbc.com/";>Global Banking and 
Markets business&lt;/a> provides a wide range of financial services and 
products to multinational co [...]
+&lt;p>HSBC’s Chup Cheng, VP of XVA and CCR Capital Analytics, and Andrzej 
Golonka, Lead Assistant Vice President, shared how Apache Beam serves as a 
computation platform and a risk engine that helps HSBC manage counterparty 
credit risk and XVA across their customer investment portfolios, which arises 
from the trillions of dollars in trading volumes between numerous of 
counterparties every day. Apache Beam empowered HSBC to &lt;a 
href="https://2022.beamsummit.org/sessions/hpc-grid/";>integ [...]
+&lt;h2 id="risk-management-at-scale">Risk Management at Scale&lt;/h2>
+&lt;p>To realize the scale and value of the Apache Beam-powered data 
processing at HSBC, let us delve deeper into why Counterparty credit risk 
calculations at financial institutions require particularly extreme compute 
capacity.&lt;/p>
+&lt;p>The value of an investment portfolio moves along with the financial 
markets and is impacted by a variety of external factors. To neutralize the 
risks and determine the capital reserves required by regulations, investment 
banks need to estimate risk exposure and make corresponding adjustments to the 
value of individual trades and portfolios. &lt;a 
href="https://en.wikipedia.org/wiki/XVA";>XVA (X-Value Adjustment) model&lt;/a> 
plays a crucial role in analyzing counterparty credit risk [...]
+&lt;p>XVA calculations require a vast amount of computational capacity due to 
the extensive matrix data and long time horizons involved. To calculate MTM 
matrix for one trade, a valuation function needs to iterate hundreds of 
thousands of times through multiple SDE matrices that weigh a few megabytes and 
contain hundreds of thousands of elements each.&lt;/p>
+&lt;div class="post-scheme">
+&lt;a href="/images/case-study/hsbc/scheme-9.png" target="_blank" title="Click 
to enlarge">
+&lt;img src="/images/case-study/hsbc/scheme-9.png" alt="Monte Carlo Path">
+&lt;/a>
+&lt;/div>
+&lt;p>Calculating XVA on a multi-counterparties portfolio involves much more 
complex computations in a large system of equations. A valuation function goes 
through hundreds of GBs of SDE matrices, generates millions of trade-level MTM 
matrices, aggregates them to counterparty-level matrices, and then calculates 
the future exposure and XVA for each counterparty.&lt;/p>
+&lt;div class="post-scheme">
+&lt;a href="/images/case-study/hsbc/scheme-10.png" target="_blank" 
title="Click to enlarge">
+&lt;img src="/images/case-study/hsbc/scheme-10.png" alt="Calculating XVA">
+&lt;/a>
+&lt;/div>
+&lt;p>The technical challenge escalates when dealing with XVA sensitives to 
numerous market factors. To neutralize all market risks across counterparty 
portfolios, investment banks need to calculate XVA sensitivity for hundreds of 
market factors. There are two primary ways to compute XVA sensitivity:&lt;/p>
+&lt;ol>
+&lt;li>analytically through backpropagation to input&lt;/li>
+&lt;li>numerically through observing how gradients move for XVA&lt;/li>
+&lt;/ol>
+&lt;p>To obtain XVA variance, a valuation function must iterate hundreds of 
billions of times through the enormous system of equations, which is an 
extremely compute-intensive process.&lt;/p>
+&lt;p>The XVA model is indispensable for understanding counterparty credit 
risk in the financial industry, and its accurate computation is vital for 
assessing all in price of derivatives. With an extensive amount of data and 
complex calculations involved, efficient and timely execution of these 
calculations is essential for ensuring that traders can make well-informed 
decisions.&lt;/p>
+&lt;h2 id="journey-to-beam">Journey to Beam&lt;/h2>
+&lt;p>NOLA is HSBC’s internal data infrastructure for XVA computations. Its 
previous version - NOLA1 - was an on-premise solution that used a 10 TB file 
server as media, processing several petabytes of data in a single batch, going 
through a huge network of interdependencies within each system of equations, 
then repeating the process. HSBC’s model development team was creating new 
statistical models and building the Quantitative library while their IT team 
was fetching the necessary data [...]
+&lt;p>The 2007 to ‘08 financial crisis highlighted the need for robust and 
efficient computation of XVAs across the industry, and introduced additional 
regulations in the financial sector that required an exponentially higher 
amount of computations. HSBC, therefore, sought a numerical solution for 
calculating the XVA sensitivities for hundreds of market factors. Processing 
data in a single batch had become a blocker and a throughput bottleneck. The 
NOLA1 infrastructure and its intensive  [...]
+&lt;p>HSBC engineers started looking for a new approach that would allow for 
scaling their data processing, maximizing throughput, and meeting critical 
business timelines.&lt;/p>
+&lt;p>Then, HSBC’s engineering team selected Apache Beam as a risk engine for 
NOLA for its scalability, flexibility, and ability to process large volumes of 
data in parallel. They found Apache Beam to be a natural process executor for 
the transformational, directed acyclic graphing process of XVA computations. 
The &lt;a href="https://beam.apache.org/documentation/sdks/python/";>Apache Beam 
Python SDK&lt;/a> offered a simple API to build new data pipelines in Python, 
while its abstraction  [...]
+&lt;h2 id="data-distribution-easier-than-before">Data Distribution Easier than 
Before&lt;/h2>
+&lt;p>Apache Beam has greatly simplified data distribution for XVA 
calculations and allowed for handling the inter-correlated Monte Carlo 
simulations with distributed processing between workers.&lt;/p>
+&lt;p>The Apache Beam SDK enables users to build expressive DAGs and easily 
create stream or batch multi-stage pipelines in which parallel pipelined stages 
can be brought back together using &lt;a 
href="/documentation/programming-guide/#side-inputs">side inputs&lt;/a> or 
&lt;a 
href="/documentation/pipelines/design-your-pipeline/#merging-pcollections">joins&lt;/a>.
 Data movement is handled by the runner, with data expressed as PCollection 
objects, which are immutable parallel element coll [...]
+&lt;p>Apache Beam provides several methods for distributing C++ 
components:&lt;/p>
+&lt;ul>
+&lt;li>sideloading C++ components to custom worker container images (for 
example, custom Apache Beam or Cloud Dataflow containers) and then using DoFns 
to interact with C++ components out-of-the-box&lt;/li>
+&lt;li>bundling C++ with a JAR file in Apache Beam, where the C++ elements 
(binaries, configuration, etc.) are extracted to the local disk during the 
setup/teardown process in DoFn&lt;/li>
+&lt;li>including the C++ components in a &lt;a 
href="/documentation/programming-guide/#pcollections">PCollection&lt;/a> as a 
side input, which is then deployed to the local disk&lt;/li>
+&lt;/ul>
+&lt;p>The seamless integration of Apache Beam with C++ allowed HSBC’s 
engineers to reuse the prevalent analytics(relying on &lt;a 
href="https://www.nag.com/";>NAG&lt;/a> and &lt;a 
href="https://en.wikipedia.org/wiki/Math_Kernel_Library";>MKL&lt;/a> 
libraries)and select between the logic distribution methods depending on the 
use case and deployment environment. HSBC found protobufs especially useful for 
data exchange when PCollections carry the calls and input data to the C++ 
libraries from [...]
+&lt;div class="post-scheme">
+&lt;a href="/images/case-study/hsbc/scheme-11.png" target="_blank" 
title="Click to enlarge">
+&lt;img src="/images/case-study/hsbc/scheme-11.png" alt="beam DAG">
+&lt;/a>
+&lt;/div>
+&lt;p>HSBC migrated their XVA calculations to a batch Apache Beam pipeline. 
Every day, the XVA pipeline computes over multiple thousands of billions of 
valuations within just 1 hour, consuming around 2 GB of external input data, 
processing from 10 to 20 TB of data inside the system of equations, and 
producing about 4 GB of output reports. Apache Beam distributes XVA 
calculations into a number of PCollections with tasks, performs the necessary 
transformations independently and in parallel [...]
+&lt;p>Apache Beam provides powerful &lt;a 
href="/documentation/programming-guide/#transforms">transforms&lt;/a> and 
orchestration capabilities that helped HSBC engineers to optimize the 
analytical approach to XVA sensitivities calculation and enable the numerical 
one, which was not possible before. Instead of iterating a valuation function 
through the whole system of equations, HSBC’s engineers treat the system of 
equations as a computation graph, breaking it down into clusters with reus [...]
+&lt;p>The Apache Beam pipeline that performs analytical and numerical XVA 
sensitivities calculations runs daily in two separate batches. The first batch 
pipeline, which runs at midnight, determines the credit line consumption and 
capital utilisation for traders, directly affecting their trading volume the 
following day. The second batch, which completes before 8 am, calculates XVA 
sensitivities that could impact traders&amp;rsquo; risk management and hedging 
strategies. The pipeline cons [...]
+&lt;p>Apache Beam offers HSBC all the traits of a traditional risk engine and 
more, enabling HSBC to scale the infrastructure and maximize throughput with 
distributed processing.&lt;/p>
+&lt;blockquote class="case-study-quote-block case-study-quote-wrapped">
+&lt;p class="case-study-quote-text">
+Apache Beam makes data distribution much easier than before. The Monte Carlo 
method significantly increases the amount of data to be processed. Apache Beam 
helped us harness all of that data volume.
+&lt;/p>
+&lt;div class="case-study-quote-author">
+&lt;div class="case-study-quote-author-img">
+&lt;img src="/images/case-study/hsbc/andrzej_golonka.jpg">
+&lt;/div>
+&lt;div class="case-study-quote-author-info">
+&lt;div class="case-study-quote-author-name">
+Andrzej Golonka
+&lt;/div>
+&lt;div class="case-study-quote-author-position">
+Lead Assistant Vice President @ HSBC
+&lt;/div>
+&lt;/div>
+&lt;/div>
+&lt;/blockquote>
+&lt;h2 id="beam-as-a-platform">Beam as a Platform&lt;/h2>
+&lt;p>Apache Beam is more than a data processing framework. It is also a 
computational platform that enables experimentation, accelerates time-to-market 
for new development, and simplifies deployment.&lt;/p>
+&lt;p>Apache Beam&amp;rsquo;s dataset abstraction as PCollection increased 
HSBC’s model development efficiency by providing a way to organize component 
ownership and reduce organizational dependencies and bottlenecks. The model 
development team now owns data pipelines: implements new systems of equations, 
defines the data transfer within a system of equations in a black box mode, and 
sends it to the IT team. The IT team fetches, controls, and orchestrates the 
external data required by a  [...]
+&lt;blockquote class="case-study-quote-block case-study-quote-wrapped">
+&lt;p class="case-study-quote-text">
+In general, we used to spend at least 6 months deploying even small changes to 
a system of equations in production. With the new team structure driven by 
Apache Beam, we now can deploy changes as quickly as within 1 week.
+&lt;/p>
+&lt;div class="case-study-quote-author">
+&lt;div class="case-study-quote-author-img">
+&lt;img src="/images/case-study/hsbc/chup_cheng.jpg">
+&lt;/div>
+&lt;div class="case-study-quote-author-info">
+&lt;div class="case-study-quote-author-name">
+Chup Cheng
+&lt;/div>
+&lt;div class="case-study-quote-author-position">
+VP of XVA and CCR Capital Analytics @ HSBC
+&lt;/div>
+&lt;/div>
+&lt;/div>
+&lt;/blockquote>
+&lt;p>By leveraging the abstractions provided by the Apache Beam unified 
programming model, HSBC&amp;rsquo;s model development team can seamlessly 
create new data pipelines, choose an appropriate runner, and conduct 
experiments on Big Data without the underlying infrastructure. The Apache Beam 
model rules ensure the high quality of the experimental code and make it very 
easy to move the production-grade pipelines from experimentation to 
production.&lt;/p>
+&lt;blockquote class="case-study-quote-block case-study-quote-wrapped">
+&lt;p class="case-study-quote-text">
+With Apache Beam, it’s easy to experiment with “What if” questions. If we want 
to know the impact of changing some parameters, we can write a simple Apache 
Beam code, run the pipeline, and have the answer within minutes.
+&lt;/p>
+&lt;div class="case-study-quote-author">
+&lt;div class="case-study-quote-author-img">
+&lt;img src="/images/case-study/hsbc/andrzej_golonka.jpg">
+&lt;/div>
+&lt;div class="case-study-quote-author-info">
+&lt;div class="case-study-quote-author-name">
+Andrzej Golonka
+&lt;/div>
+&lt;div class="case-study-quote-author-position">
+Lead Assistant Vice President @ HSBC
+&lt;/div>
+&lt;/div>
+&lt;/div>
+&lt;/blockquote>
+&lt;p>One of the key advantages of Apache Beam for Monte Carlo simulations and 
counterparty credit risk analysis is its ability to run the same complex 
simulation logic in various environments, on-premise or in the cloud, with 
different runners. This flexibility is especially critical in situations 
requiring local risk analysis in different countries and compliance zones, 
where sensitive financial data and information cannot be transferred beyond the 
local perimeter. With Apache Beam, HS [...]
+&lt;h2 id="results">Results&lt;/h2>
+&lt;p>Apache Beam harnesses enormous volumes of financial market data and 
metrics, generates billions of trade valuations to scan plausible future 
scenarios reaching out around 70 years, and aggregates them into meaningful 
statistics, enabling HSBC to model their future scenarios and quantitatively 
account for risk in forecasting and decision-making.&lt;/p>
+&lt;p>With Apache Beam, HSBC’s engineers achieved a 2x increase in data 
processing performance and scaled their XVA batch pipeline by 100x compared to 
the original solution. The Apache Beam abstraction opened up a way to implement 
a numerical approach to XVA sensitivity calculation in production, which was 
not possible before. The batch Apache Beam pipeline calculates XVA 
sensitivities for hundreds of market factors, processing about 400 TB of 
internal data every day and up to 5 PB of da [...]
+&lt;p>Apache Beam portability enabled HSBC to use different runners in 
different regions depending on local data processing requirements and 
future-proof their data processing for regulatory changes.&lt;/p>
+&lt;p>Apache Beam provides seamless integration and out-of-the-box interaction 
with highly optimized computational components in C++, which saved HSBC the 
effort needed to rewrite the C++ analytics accumulated for years into 
Python.&lt;/p>
+&lt;p>The Apache Beam Python SDK brought math to the orchestration level by 
providing an easy way for HSBC’s model development team to build new Python 
pipelines. The new work structure driven by Apache Beam accelerated 
time-to-market by 24x, enabling HSBC’s teams to deploy changes and new models 
to production within just a few weeks.&lt;/p>
+&lt;p>By leveraging the versatile and scalable nature of Apache Beam for 
computing direct acyclic graphs that process large differential equations 
systems and Monte Carlo simulations, financial institutions can assess and 
manage counterparty credit risk efficiently, even in situations that demand 
localized analysis and strict compliance with data security regulations.&lt;/p>
+&lt;h2 id="learn-more">Learn More&lt;/h2>
+&lt;iframe class="video video--medium-size" width="560" height="315" 
src="https://www.youtube.com/embed/QoKWdOXyBw4"; frameborder="0" 
allowfullscreen>&lt;/iframe>
+&lt;br>&lt;br>
+&lt;div class="case-study-feedback" id="case-study-feedback">
+&lt;p class="case-study-feedback-title">Was this information useful?&lt;/p>
+&lt;div>
+&lt;button class="btn case-study-feedback-btn" 
onclick="sendCaseStudyFeedback(true, 'HSBC')">Yes&lt;/button>
+&lt;button class="btn case-study-feedback-btn" 
onclick="sendCaseStudyFeedback(false, 'HSBC')">No&lt;/button>
+&lt;/div>
+&lt;/div>
+&lt;/div>
+&lt;div 
class="clear-nav">&lt;/div></description></item><item><title>Case-Studies: 
Efficient Streaming Analytics: Making the Web a Safer Place with Project 
Shield</title><link>/case-studies/projectshield/</link><pubDate>Thu, 08 Jun 
2023 00:12:00 
+0000</pubDate><guid>/case-studies/projectshield/</guid><description>
 &lt;!--
 Licensed under the Apache License, Version 2.0 (the "License");
 you may not use this file except in compliance with the License.
@@ -2169,15 +2350,4 @@ 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.
 -->
-&lt;p>Developed at Spotify and built on top of Apache Beam for Python, Klio is 
an open source framework that lets researchers and engineers build smarter data 
pipelines for processing audio and other media files, easily and at 
scale.&lt;/p></description></item><item><title>Case-Studies: 
Linkedin</title><link>/case-studies/linkedin/</link><pubDate>Mon, 01 Jan 0001 
00:00:00 +0000</pubDate><guid>/case-studies/linkedin/</guid><description>
-&lt;!--
-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.
---></description></item></channel></rss>
\ No newline at end of file
+&lt;p>Developed at Spotify and built on top of Apache Beam for Python, Klio is 
an open source framework that lets researchers and engineers build smarter data 
pipelines for processing audio and other media files, easily and at 
scale.&lt;/p></description></item></channel></rss>
\ No newline at end of file
diff --git 
a/website/generated-content/images/case-study/hsbc/andrzej_golonka.jpg 
b/website/generated-content/images/case-study/hsbc/andrzej_golonka.jpg
new file mode 100644
index 00000000000..8e44fa6ed94
Binary files /dev/null and 
b/website/generated-content/images/case-study/hsbc/andrzej_golonka.jpg differ
diff --git a/website/generated-content/images/case-study/hsbc/chup_cheng.jpg 
b/website/generated-content/images/case-study/hsbc/chup_cheng.jpg
new file mode 100644
index 00000000000..8fbb8043352
Binary files /dev/null and 
b/website/generated-content/images/case-study/hsbc/chup_cheng.jpg differ
diff --git a/website/generated-content/images/case-study/hsbc/scheme-10.png 
b/website/generated-content/images/case-study/hsbc/scheme-10.png
new file mode 100644
index 00000000000..941559f44b5
Binary files /dev/null and 
b/website/generated-content/images/case-study/hsbc/scheme-10.png differ
diff --git a/website/generated-content/images/case-study/hsbc/scheme-11.png 
b/website/generated-content/images/case-study/hsbc/scheme-11.png
new file mode 100644
index 00000000000..354c99b444e
Binary files /dev/null and 
b/website/generated-content/images/case-study/hsbc/scheme-11.png differ
diff --git a/website/generated-content/images/case-study/hsbc/scheme-9.png 
b/website/generated-content/images/case-study/hsbc/scheme-9.png
new file mode 100644
index 00000000000..15b95c45470
Binary files /dev/null and 
b/website/generated-content/images/case-study/hsbc/scheme-9.png differ
diff --git a/website/generated-content/images/logos/powered-by/hsbc.png 
b/website/generated-content/images/logos/powered-by/hsbc.png
new file mode 100644
index 00000000000..b6cc7d369e3
Binary files /dev/null and 
b/website/generated-content/images/logos/powered-by/hsbc.png differ
diff --git a/website/generated-content/index.html 
b/website/generated-content/index.html
index 0a59247b813..15732981e28 100644
--- a/website/generated-content/index.html
+++ b/website/generated-content/index.html
@@ -24,7 +24,8 @@ function endSearch(){var 
search=document.querySelector(".searchBar");search.clas
 function blockScroll(){$("body").toggleClass("fixedPosition");}
 function openMenu(){addPlaceholder();blockScroll();}</script><div 
class="body__contained no__padding"><div id=hero-desktop 
class=hero-desktop><div class=hero-content><h3>Introducing Apache 
Beam</h3><h1>The Unified Apache Beam Model</h1><h2>The easiest way to do batch 
and streaming data processing. Write once, run anywhere data processing for 
mission-critical production workloads.</h2><a 
href=https://github.com/apache/beam><button><svg 
xmlns="http://www.w3.org/2000/svg"; width="16" height= [...]
 <span>Link to GitHub Repo</span></button></a></div></div><div id=hero-mobile 
class=hero-mobile><div class=hero-content><h3>Introducing Apache 
Beam</h3><h1>The Unified Apache Beam Model</h1><h2>The easiest way to do batch 
and streaming data processing. Write once, run anywhere data processing for 
mission-critical production workloads.</h2></div></div><div class=ctas><div 
class=ctas_row><a class=ctas_button href=/get-started/beam-overview/><img 
src=images/info_icon.svg> Learn more</a></div [...]
-You can try the Apache Beam examples at <a 
href=https://play.beam.apache.org/>Beam Playground (Beta)</a>.</p><br><br><div 
class=playground_or_image><a class=playground__mobile 
href=https://play.beam.apache.org/><img src=images/playground.png alt="beam 
playground"></a><div class=playground-wrapper><div 
class=playground-snippets><div class="language-java playground-snippet" 
data-sdk=java></div><div class="language-py playground-snippet" 
data-sdk=python></div><div class="language-go playgro [...]
+You can try the Apache Beam examples at <a 
href=https://play.beam.apache.org/>Beam Playground (Beta)</a>.</p><br><br><div 
class=playground_or_image><a class=playground__mobile 
href=https://play.beam.apache.org/><img src=images/playground.png alt="beam 
playground"></a><div class=playground-wrapper><div 
class=playground-snippets><div class="language-java playground-snippet" 
data-sdk=java></div><div class="language-py playground-snippet" 
data-sdk=python></div><div class="language-go playgro [...]
+<img src=/images/arrow-right.svg alt="Go to the case study"></a></div><div 
class=case-study-row-button-container><a 
href=https://github.com/apache/beam/blob/master/website/ADD_CASE_STUDY.md 
class=case-study-primary-button target=_blank rel="noopener noreferrer">Share 
your story</a></div><div class=quote-img-container><div class=quote-img><img 
src=images/logos/powered-by/hsbc.png alt="Quote 
Logo"></div></div></div></div></div><div class=swiper-slide><div 
class=wrap-slide><div class=quote- [...]
 <img src=/images/arrow-right.svg alt="Go to the case study"></a></div><div 
class=case-study-row-button-container><a 
href=https://github.com/apache/beam/blob/master/website/ADD_CASE_STUDY.md 
class=case-study-primary-button target=_blank rel="noopener noreferrer">Share 
your story</a></div><div class=quote-img-container><div class=quote-img><img 
src=images/logos/powered-by/project_shield.png alt="Quote 
Logo"></div></div></div></div></div><div class=swiper-slide><div 
class=wrap-slide><div cl [...]
 <img src=/images/arrow-right.svg alt="Go to the case study"></a></div><div 
class=case-study-row-button-container><a 
href=https://github.com/apache/beam/blob/master/website/ADD_CASE_STUDY.md 
class=case-study-primary-button target=_blank rel="noopener noreferrer">Share 
your story</a></div><div class=quote-img-container><div class=quote-img><img 
src=images/logos/powered-by/booking.png alt="Quote 
Logo"></div></div></div></div></div><div class=swiper-slide><div 
class=wrap-slide><div class=quo [...]
 <img src=/images/arrow-right.svg alt="Go to the case study"></a></div><div 
class=case-study-row-button-container><a 
href=https://github.com/apache/beam/blob/master/website/ADD_CASE_STUDY.md 
class=case-study-primary-button target=_blank rel="noopener noreferrer">Share 
your story</a></div><div class=quote-img-container><div class=quote-img><img 
src=images/logos/powered-by/credit-karma.png alt="Quote 
Logo"></div></div></div></div></div><div class=swiper-slide><div 
class=wrap-slide><div clas [...]
diff --git a/website/generated-content/sitemap.xml 
b/website/generated-content/sitemap.xml
index ee9ed18eec6..ce9b348bcc1 100644
--- a/website/generated-content/sitemap.xml
+++ b/website/generated-content/sitemap.xml
@@ -1 +1 @@
-<?xml version="1.0" encoding="utf-8" standalone="yes"?><urlset 
xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"; 
xmlns:xhtml="http://www.w3.org/1999/xhtml";><url><loc>/categories/blog/</loc><lastmod>2023-06-26T16:29:09+02:00</lastmod></url><url><loc>/blog/</loc><lastmod>2023-06-26T16:29:09+02:00</lastmod></url><url><loc>/categories/</loc><lastmod>2023-06-26T16:29:09+02:00</lastmod></url><url><loc>/blog/managing-beam-dependencies-in-java/</loc><lastmod>2023-06-26T16:29:09+02:00</lastmod>
 [...]
\ No newline at end of file
+<?xml version="1.0" encoding="utf-8" standalone="yes"?><urlset 
xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"; 
xmlns:xhtml="http://www.w3.org/1999/xhtml";><url><loc>/categories/blog/</loc><lastmod>2023-06-26T17:41:21-04:00</lastmod></url><url><loc>/blog/</loc><lastmod>2023-06-26T17:41:21-04:00</lastmod></url><url><loc>/categories/</loc><lastmod>2023-06-26T17:41:21-04:00</lastmod></url><url><loc>/blog/managing-beam-dependencies-in-java/</loc><lastmod>2023-06-26T17:41:21-04:00</lastmod>
 [...]
\ No newline at end of file


Reply via email to