From 328f63954153ff6b989cfe4d8ad5e2a67bdb0bf1 Mon Sep 17 00:00:00 2001 From: Ogheneochuko Pedro Date: Thu, 19 Dec 2024 00:25:03 +0100 Subject: [PATCH 1/2] feat: implement new data/streaming page --- secondary-navigation.yaml | 2 + static/files/forms-data.json | 67 ++++++ templates/data/sitemap.xml | 6 +- templates/data/streaming.html | 418 ++++++++++++++++++++++++++++++++++ 4 files changed, 492 insertions(+), 1 deletion(-) create mode 100644 templates/data/streaming.html diff --git a/secondary-navigation.yaml b/secondary-navigation.yaml index c29f19cd9..76fc014b0 100644 --- a/secondary-navigation.yaml +++ b/secondary-navigation.yaml @@ -53,6 +53,8 @@ data: path: /data/valkey - title: Docs path: /data/docs + - title: Streaming + path: /data/streaming kafka: title: Kafka diff --git a/static/files/forms-data.json b/static/files/forms-data.json index 081f940d4..9c09fdbd9 100644 --- a/static/files/forms-data.json +++ b/static/files/forms-data.json @@ -334,6 +334,73 @@ ] } ] + }, + "/data/streaming": { + "templatePath": "/data/streaming.html", + "isModal": true, + "modalId": "data-streaming-modal", + "formData": { + "title": "Talk to our Apache Kafka solution architects", + "formId": "5522", + "returnUrl": "/data/streaming#contact-form-success", + "product": "" + }, + "fieldsets": [ + { + "title": "Tell us more about your Kafka use case", + "id": "comments", + "isRequired": false, + "fields": [ + { + "type": "long-text", + "id": "comments", + "placeholder": "Anything you'd like to communicate about your needs or interests?" + } + ] + }, + { + "title": "How should we get in touch?", + "id": "about-you", + "noCommentsFromLead": true, + "fields": [ + { + "type": "text", + "id": "firstName", + "label": "First name", + "isRequired": true + }, + { + "type": "text", + "id": "lastName", + "label": "Last name", + "isRequired": true + }, + { + "type": "text", + "id": "company", + "label": "Company name", + "isRequired": true + }, + { + "type": "text", + "id": "title", + "label": "Job title", + "isRequired": true + }, + { + "type": "email", + "id": "email", + "label": "Work email", + "isRequired": true + }, + { + "type": "tel", + "id": "phone", + "label": "Mobile/cell phone number" + } + ] + } + ] } } } diff --git a/templates/data/sitemap.xml b/templates/data/sitemap.xml index f3b1ddaf2..ad7fa9871 100644 --- a/templates/data/sitemap.xml +++ b/templates/data/sitemap.xml @@ -56,8 +56,12 @@ https://canonical.com/data/postgresql monthly - + https://canonical.com/data/postgresql/what-is-postgresql monthly + + https://canonical.com/data/streaming + monthly + diff --git a/templates/data/streaming.html b/templates/data/streaming.html new file mode 100644 index 000000000..04b9dd4c9 --- /dev/null +++ b/templates/data/streaming.html @@ -0,0 +1,418 @@ +{% extends 'base_index.html' %} + +{% block meta_copydoc %} + https://docs.google.com/document/d/1SMYf92QesxoUN6GLMiM0qWmLPMpTl6CYC3852fFA0Xo/edit +{% endblock meta_copydoc %} + +{% block title %} + What is data streaming? Learn about data streaming - examples, technologies and use cases +{% endblock %} + +{% block meta_description %} + Get an introduction to data streaming - what it is, how you can benefit from it and how to implement it with Apache Spark and Apache Kafka. +{% endblock %} + +{% block body_class %} + is-paper +{% endblock body_class %} + +{% block content %} + +
+
+
+

What is Data streaming?

+
+
+
+

+ Data streaming is the continuous processing of data as it is generated. It is also known as event processing or stream processing. The benefit of data streaming is that analytics, insights and actions can occur immediately. Data streaming is used across industries like financial services, retail, media and entertainment, and telecommunications. +

+
+
+

+ Download the white paper +

+
+
+ {{ image(url="https://assets.ubuntu.com/v1/ff630c7a-hero-img.png", + alt="", + width="2464", + height="1027", + hi_def=True, + loading="lazy", + attrs={"class": "p-image-container__image"}) | safe + }} +
+
+
+ +
+
+
+
+

Data streaming explained

+
+
+

+ Data streams are never ending flows of data that can be transformed, analyzed or otherwise processed in real time whilst in motion. Data streams are generated by all sorts of events and systems, from network elements to financial transactions, website clicks and more. +

+
+
+
+ +
+
+
+
+
+

Overview
of stream data processing

+
+
+

+ Data streams can come from many sources and can be processed in different ways. Some example sources and forms of processing are listed below. +

+
+
+
+
+
+
+
+
+

Sources

+
+
+

Sources for data streams can include:

+
+
    +
  • IoT sensors
  • +
  • Server logs
  • +
  • Applications
  • +
  • Third party services
  • +
  • Network elements
  • +
+
+
+
+
+
+

Processing

+
+
+

Processing performed on data streams can include:

+
+
    +
  • Ingestion
  • +
  • Transformation
  • +
  • Aggregation
  • +
  • Combining data streams
  • +
+
+
+
+
+
+ +
+
+
+
+

Batch processing
versus data streaming

+
+
+

+ Batch processing is about processing sets of data. Batch processes are typically run on a schedule, for example once an hour, or once a week, which is different to data streaming, where processing typically takes place continuously as data arrives. +

+

+ Batch processing can be an efficient way to process data in bulk, but might not offer as timely results versus data streaming. +

+
+
+
+ +
+
+
+
+

Streaming use cases

+
+
+
+ +
+

+ Data streaming is widely used wherever immediate actions or insights are needed. Use cases are often found in online retail, financial fraud analysis, advertising and investment. +

+
+
+
+
+
+
+
+ {{ image(url="https://assets.ubuntu.com/v1/27734e9c-rt-advertising-auctions.png", + alt="", + width="568", + height="380", + hi_def=True, + loading="lazy", + attrs={"class": "p-image-container__image"}) | safe + }} +
+
+

+ Real time advertising auctions +

+
+
+
+ {{ image(url="https://assets.ubuntu.com/v1/82561ed5-high-freq-trading.png", + alt="", + width="568", + height="380", + hi_def=True, + loading="lazy", + attrs={"class": "p-image-container__image"}) | safe + }} +
+
+

+ High frequency trading +

+
+
+
+ {{ image(url="https://assets.ubuntu.com/v1/5cdb60ad-credit-card-fraud.png", + alt="", + width="568", + height="380", + hi_def=True, + loading="lazy", + attrs={"class": "p-image-container__image"}) | safe + }} +
+
+

+ Credit card fraud detection +

+
+
+
+ {{ image(url="https://assets.ubuntu.com/v1/9362fac5-network-intrusion-prevention.png", + alt="", + width="568", + height="380", + hi_def=True, + loading="lazy", + attrs={"class": "p-image-container__image"}) | safe + }} +
+
+

+ Network intrusion detection and prevention +

+
+
+
+
+
+
+
+ {{ image(url="https://assets.ubuntu.com/v1/ea5b4528-soar.png", + alt="", + width="568", + height="380", + hi_def=True, + loading="lazy", + attrs={"class": "p-image-container__image"}) | safe + }} +
+
+

+ Security operations automated response (SOAR) +

+
+
+
+ {{ image(url="https://assets.ubuntu.com/v1/76cb7cb8-predictive-maintenance.png", + alt="", + width="568", + height="380", + hi_def=True, + loading="lazy", + attrs={"class": "p-image-container__image"}) | safe + }} +
+
+

+ Predictive maintenance +

+
+
+
+ {{ image(url="https://assets.ubuntu.com/v1/dbd46bb1-ml-model-optimization.png", + alt="", + width="568", + height="380", + hi_def=True, + loading="lazy", + attrs={"class": "p-image-container__image"}) | safe + }} +
+
+

+ Machine learning model optimization +

+
+
+
+
+ +
+
+
+
+

Canonical solutions for data streaming

+
+
+
+
+
+
+
+

Apache Spark®

+
+

+ Canonical offers a sophisticated solution for large scale streaming data processing founded on Apache Spark, a free and open source framework for data processing from the Apache Software Foundation. +

+

+ Canonical's Charmed Spark solution includes containerized images for Apache Spark with up to 10 years of security maintenance and best-in-class support from Canonical, and advanced deployment and operations automation to help you get the most from deploying Apache Spark on Kubernetes. +

+ +
+
+
+
+
+
+

Apache Kafka®

+
+

+ Canonical offers an advanced solution for deploying and operating Apache Kafka, a free and open source event data processing hub developed by the Apache Software Foundation. +

+

+ Canonical's Charmed Kafka solution includes support for deploying, configuring, securing, managing, maintaining and monitoring Kafka on cloud VMs or on Kubernetes and includes packages for Apache Kafka maintained by Canonical, with up to 10 years of security maintenance and SLA-backed support available. +

+ +
+
+
+
+ +
+
+
+
+

Questions? Get answers

+
+
+

+ Do you have a data streaming project in mind and want to get advice on implementing Kafka or Spark? Contact us now to discuss your needs. +

+
+

+ + Contact us + +

+
+
+
+ +
+ +
+ +
+
+
+
+

+ Apache®, Apache Kafka, Kafka®, and the Kafka logo are either registered trademarks or trademarks of the Apache Software Foundation in the United States and/or other countries. +

+

+ Apache®, Apache Spark, Spark®, and the Spark logo are either registered trademarks or trademarks of the Apache Software Foundation in the United States and/or other countries. +

+
+
+
+ + + + {% include "/shared/forms/form-template.html" %} + +{% endblock %} From f672f5210109b62dfb258a2c78a7a3db1cfaa25a Mon Sep 17 00:00:00 2001 From: Ogheneochuko Pedro Date: Mon, 6 Jan 2025 10:20:58 +0100 Subject: [PATCH 2/2] fix: implement design review suggestions --- templates/data/streaming.html | 31 +++++++++++++++++++++---------- 1 file changed, 21 insertions(+), 10 deletions(-) diff --git a/templates/data/streaming.html b/templates/data/streaming.html index 04b9dd4c9..4d7ba2db9 100644 --- a/templates/data/streaming.html +++ b/templates/data/streaming.html @@ -35,7 +35,7 @@

What is Data streaming?

- {{ image(url="https://assets.ubuntu.com/v1/ff630c7a-hero-img.png", + {{ image(url="https://assets.ubuntu.com/v1/bca3146e-hero-img-updated.png", alt="", width="2464", height="1027", @@ -131,7 +131,7 @@

Batch processing
versus data streaming

-
+

@@ -149,14 +149,17 @@

Streaming use cases

referrerpolicy="strict-origin-when-cross-origin" allowfullscreen>
-

- Data streaming is widely used wherever immediate actions or insights are needed. Use cases are often found in online retail, financial fraud analysis, advertising and investment. -

+

+ Data streaming is widely used wherever immediate actions or insights are needed. Use cases are often found in online retail, financial fraud analysis, advertising and investment. +

-
+
+ +
+
{{ image(url="https://assets.ubuntu.com/v1/27734e9c-rt-advertising-auctions.png", @@ -285,7 +288,7 @@

Canonical solutions for data streaming

+ + {% include "/shared/forms/form-template.html" %}