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

github-bot pushed a commit to branch asf-site
in repository https://gitbox.apache.org/repos/asf/dolphinscheduler-website.git


The following commit(s) were added to refs/heads/asf-site by this push:
     new 20826ea  Automated deployment: 43a311ee416ecccf3edf24a16caf7ea9e265bab6
20826ea is described below

commit 20826eaa76b8c7a1edd7b1b6b44428f18e22c8b1
Author: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
AuthorDate: Tue Nov 30 09:54:53 2021 +0000

    Automated deployment: 43a311ee416ecccf3edf24a16caf7ea9e265bab6
---
 .../blog/Lizhi case study(en) blog correction.html | 130 +++++++++++++++++++++
 .../blog/Lizhi case study(en) blog correction.json |   6 +
 2 files changed, 136 insertions(+)

diff --git a/en-us/blog/Lizhi case study(en) blog correction.html 
b/en-us/blog/Lizhi case study(en) blog correction.html
new file mode 100644
index 0000000..f495200
--- /dev/null
+++ b/en-us/blog/Lizhi case study(en) blog correction.html      
@@ -0,0 +1,130 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+  <meta charset="UTF-8">
+  <meta name="viewport" content="width=device-width, initial-scale=1.0, 
maximum-scale=1.0, user-scalable=no">
+  <meta name="keywords" content="Lizhi case study(en) blog correction">
+  <meta name="description" content="Lizhi case study(en) blog correction">
+  <title>Lizhi case study(en) blog correction</title>
+  <link rel="shortcut icon" href="/img/favicon.ico">
+  <link rel="stylesheet" href="/build/vendor.e328afe.css">
+  <link rel="stylesheet" href="/build/blog.md.fd8b187.css">
+</head>
+<body>
+  <div id="root"><div class="blog-detail-page" data-reactroot=""><header 
class="header-container header-container-dark"><div class="header-body"><a 
href="/en-us/index.html"><img class="logo" src="/img/hlogo_white.svg"/></a><div 
class="search search-dark"><span class="icon-search"></span></div><span 
class="language-switch language-switch-dark">中</span><div 
class="header-menu"><img class="header-menu-toggle" 
src="/img/system/menu_white.png"/><div><ul class="ant-menu whiteClass 
ant-menu-lig [...]
+<blockquote>
+<p>Editor's word: The online audio industry is a blue ocean market in China 
nowadays. According to CIC data, the market size of China’s online audio 
industry has grown from 1.6 billion yuan in 2016 to 13.1 billion yuan in 2020, 
with a compound annual growth rate of 69.4%. With the popularity of the 
Internet of Things, audio has permeated into various terminals mobiles, 
vehicles, smart hardware, home equipment, and other various scenarios, 
sequentially to maximize the accompanying advanta [...]
+</blockquote>
+<blockquote>
+<p>In recent years, domestic audio communities have successfully been listed 
one after another. Among them, Lizhi was listed on NASDAQ in 2020 as the first 
“online audio” stock, which has more than 200 million users at present. In the 
information age, the audio industry also faces the generation of massive UGC 
data on the platform. On one hand, the users and consumers of audio content 
expect high-efficiency information transmission; on the other hand, the 
internet audio platforms hope th [...]
+</blockquote>
+<h2>Background</h2>
+<div align=center>
+<img src="https://imgpp.com/images/2021/11/23/radio-g360707f44_1920.md.jpg"/>
+</div>
+<p>Lizhi is a fast-growing UGC audio community company that attaches great 
importance to AI and data analysis technology development. AI can find the 
right voice for each user among the massively fragmented audios, and build it 
into a sustainable ecological closed loop. And data analysis can guide the 
company’s fast-growing business. Both of the two fields need to process massive 
amounts of data and require a big data scheduling system.</p>
+<p>Before the beginning of 2020, Lizhi used the Azkaban scheduling system. 
Although the big data scheduling SQL/shell/python scripts and other big 
data-related modules can complete the entire AI process, it is not easy and 
reusable enough. The machine learning platform is a set of systems built 
specifically for AI, which abstracts the AI development paradigm, i.e. data 
acquisition, data preprocessing, model training, model prediction, model 
evaluation, and model release into modules. Eac [...]
+<h2>Challenges During Machine Learning Platform Development</h2>
+<p>During the machine learning platform development, Lizhi has some clear 
requirements for the scheduling system:</p>
+<ol>
+<li>
+<p>It should be able to store and calculate massive data, such as screening 
samples, generating portraits, feature preprocessing, distributed model 
training, etc.;</p>
+</li>
+<li>
+<p>The DAG execution engine is required, and the processes such as data 
acquisition -&gt; data preprocessing -&gt; model training -&gt; model 
prediction -&gt; model evaluation -&gt; model release should be executed in 
series with DAG.</p>
+</li>
+</ol>
+<p>In the development by Azkaban, the team encountered some challenges:</p>
+<p>Challenge 1: The development model is cumbersome, which requires the user 
to package scripts and build DAG dependencies, and there is no implementation 
of DAG drag and drop;</p>
+<p>Challenge 2: The modules are not rich enough, and the scripted AI modules 
are not universal enough, thus the team need to develop modules repeatedly, 
which is unnecessary and error-prone;</p>
+<p>Challenge 3: Stand-alone deployment, the system is unstable and prone to 
failures. Besides, Task jams can easily cause downstream tasks to fail.</p>
+<h2>Turn to DolphinScheduler</h2>
+<p>After stepping on numerous pits in the old system, the Lizhi machine 
learning team, including recommendation system engineers Haibin Yu, Yanbin Lin, 
Huanjie Xie, and Yifei Guo, decided to adopt DolphinScheduler.</p>
+<p>Currently, 1,600+ processes and 12,000+ tasks (IDC) are running smoothly on 
DolphinScheduler every day.</p>
+<p>Haibin Yu said that the majority of the users of the scheduling system are 
recommendation algorithms engineers&gt; data analysts&gt; risk control 
algorithms engineers&gt; business developers (importance decreased in order). 
Not all of them are masters of data management operations, and DolphinScheduler 
perfectly meets their needs for a simple, easy-to-use, drag-and-drop scheduling 
system:</p>
+<ol>
+<li>
+<p>Distributed decentralized architecture and fault tolerance mechanism to 
ensure the high availability of the system;</p>
+</li>
+<li>
+<p>Visual DAG drag-and-drop UI, easy to use, and iterates quickly;</p>
+</li>
+<li>
+<p>It supports various modules, and can simply develop and integrate its 
modules;</p>
+</li>
+<li>
+<p>The community is active, hence there are no worries about the project 
supports;</p>
+</li>
+<li>
+<p>It is very close to the operating mode of the machine learning platform, 
using DAG to drag and drop UI programming.</p>
+</li>
+</ol>
+<h2>Use Case</h2>
+<p>After selecting the DolphinScheduler, the Lizhi machine learning platform 
carries out re-development based on it and applies the achievements to actual 
business scenarios, which are mainly about recommendation and risk control. 
Recommendation scenarios cover recommendation of voice, anchor, live broadcast, 
podcast, friend, etc., and risk control scenarios cover risk control in 
payment, advertising, and comment, etc.
+At the technical level of the platform, Lizhi optimizes the extended modules 
for the five paradigms of machine learning, i.e. obtaining training samples, 
data preprocessing, model training, model evaluation, and model release.</p>
+<p>A simple xgboost case:</p>
+<div align=center>
+<img 
src="https://imgpp.com/images/2021/11/30/32db43420c7c44e28ff2fb7be27ec79c.md.png"/>
+</div>
+<h3>1. Obtaining training samples</h3>
+<p>At present, Lizhi does not directly select data from Hive, and joins the 
union, splitting the sample afterward, but directly processes the sample by 
shell nodes.</p>
+<h3>2. Data preprocessing</h3>
+<p>Transformer&amp; custom preprocessing configuration file, use the same 
configuration for online training, and feature preprocessing is performed after 
the feature is obtained. It contains the itemType and its feature set to be 
predicted, the user’s userType and its feature set, as well as the associated 
and crossed itemType and its feature set. Define the transformer function for 
each feature preprocessing, supports custom transformer and hot update, 
xgboost, and tf model feature prep [...]
+<div align=center>
+<img src="https://imgpp.com/images/2021/11/30/1afaee9a4142648f0.md.jpg"/>
+</div>
+<h3>3. Xgboost training</h3>
+<p>It supports w2v, xgboost, tf model training modules. The training modules 
are first packaged with TensorFlow or PyTorch and then packaged into 
DolphinScheduler modules.
+For example, in the xgboost training process, use Python to package the 
xgboost training script into the xgboost training node of DolphinScheduler, and 
show the parameters required for training on the interface. The file exported 
by “training set data preprocessing” is input to the training node through 
HDFS.</p>
+<div align=center>
+<img src="https://imgpp.com/images/2021/11/23/3.md.png"/>
+</div>
+<h3>4. Model release</h3>
+<p>The release model will send the model and preprocessing configuration files 
to HDFS and insert records into the model release table. The model service will 
automatically identify the new model, update the model, and provide online 
prediction services to the external.</p>
+<div align=center>
+<img src="https://imgpp.com/images/2021/11/30/2c4b9ff8072e348ee.md.jpg"/>
+</div>
+<p>Haibin Yu said that due to historical and technical limitations, Lizhi has 
not yet built a machine learning platform like Ali PAI, but the practice has 
proved that similar platform functions can be achieved based on 
DolphinScheduler.</p>
+<p>In addition, Lizhi has also carried out many re-developments based on 
DolphinScheduler to make the scheduling system more in line with actual 
business needs, such as:</p>
+<ol>
+<li>
+<p>Pop-up the window of whether to set timing when defining the workflow</p>
+</li>
+<li>
+<p>Add display pages for all workflow definitions to facilitate searching</p>
+</li>
+</ol>
+<p>a) Add the workflow definition filter and jump to the workflow instance 
page, and use a line chart to show the change of its running time
+b) The workflow instance continues to dive to the task instance</p>
+<ol start="3">
+<li>Enter parameters during runtime to configure the disabled task nodes</li>
+</ol>
+<h2>Machine Learning Platform based on Scheduling System May Lead the Future 
Trend</h2>
+<p>Deep learning is a leading trend in the future. Lizhi has developed new 
modules for deep learning models. The entire tf process has been completed yet, 
and LR and GBDT model-related modules are also in the plan. The latter two deep 
learning models are relatively more simple, easier to get started, faster to 
iterate, and can be used in generally recommended scenarios. After 
implementation, the Lizhi machine learning platform can be more complete.
+Lizhi believes that if the scheduling system can be improved in terms of 
kernel stability, drag-and-drop UI support, convenient modules' expansion, task 
plug-in, and task parameter transfer, building the machine learning platform 
based on the scheduling system may become a common practice in the industry.</p>
+</section><footer class="footer-container"><div 
class="footer-body"><div><h3>About us</h3><h4>Do you need feedback? Please 
contact us through the following ways.</h4></div><div 
class="contact-container"><ul><li><img class="img-base" 
src="/img/emailgray.png"/><img class="img-change" src="/img/emailblue.png"/><a 
href="/en-us/community/development/subscribe.html"><p>Email 
List</p></a></li><li><img class="img-base" src="/img/twittergray.png"/><img 
class="img-change" src="/img/twitterblue.png [...]
+  <script 
src="//cdn.jsdelivr.net/npm/[email protected]/dist/react-with-addons.min.js"></script>
+  <script 
src="//cdn.jsdelivr.net/npm/[email protected]/dist/react-dom.min.js"></script>
+  <script>window.rootPath = '';</script>
+  <script src="/build/vendor.24099eb.js"></script>
+  <script src="/build/blog.md.6f0aa52.js"></script>
+  <script>
+    var _hmt = _hmt || [];
+    (function() {
+      var hm = document.createElement("script");
+      hm.src = "https://hm.baidu.com/hm.js?4e7b4b400dd31fa015018a435c64d06f";;
+      var s = document.getElementsByTagName("script")[0];
+      s.parentNode.insertBefore(hm, s);
+    })();
+  </script>
+  <!-- Global site tag (gtag.js) - Google Analytics -->
+  <script async 
src="https://www.googletagmanager.com/gtag/js?id=G-899J8PYKJZ";></script>
+  <script>
+    window.dataLayer = window.dataLayer || [];
+    function gtag(){dataLayer.push(arguments);}
+    gtag('js', new Date());
+
+    gtag('config', 'G-899J8PYKJZ');
+  </script>
+</body>
+</html>
\ No newline at end of file
diff --git a/en-us/blog/Lizhi case study(en) blog correction.json 
b/en-us/blog/Lizhi case study(en) blog correction.json
new file mode 100644
index 0000000..f37b05e
--- /dev/null
+++ b/en-us/blog/Lizhi case study(en) blog correction.json      
@@ -0,0 +1,6 @@
+{
+  "filename": "Lizhi case study(en) blog correction.md",
+  "__html": "<h1>A Formidable Combination of Lizhi Machine Learning 
Platform&amp; DolphinScheduler Creates New Paradigm for Data Process in the 
Future</h1>\n<blockquote>\n<p>Editor's word: The online audio industry is a 
blue ocean market in China nowadays. According to CIC data, the market size of 
China’s online audio industry has grown from 1.6 billion yuan in 2016 to 13.1 
billion yuan in 2020, with a compound annual growth rate of 69.4%. With the 
popularity of the Internet of Things, a [...]
+  "link": "/dist/en-us/blog/Lizhi case study(en) blog correction.html",
+  "meta": {}
+}
\ No newline at end of file

Reply via email to