DataWorks DataStudio, bir iş akışına veri aktarım düğümleri eklemenize olanak tanır ve basit aktarım, birleştirilmiş aktarım, betik tabanlı aktarım, koşullu aktarım ve MaxCompute veri aktarımı olmak üzere beş aktarım yöntemini destekler. Bu eğitimde her bir yöntem gösterilmektedir.
Arka plan
Bir DataWorks iş sürecine veri aktarım düğümü ekleyebilirsiniz. İş süreci verileri işledikten sonra düğüm, sonuçları almak için basit bir sorgu çalıştırır. Görev zamanlamasına göre düğüm daha sonra verileri DingTalk, Lark, WeCom, Microsoft Teams veya e-posta gibi hedeflere iletir.
Yaklaşım
Sonraki aktarım iş akışları için test verilerini hazırlamak amacıyla bir düğüm ekleyin.
-
Test verilerini işlemek ve sorgulamak için veri sorgulama, atama ve diğer veri işleme düğümleri ekleyin.
NotTest verilerini hazırlama ve sorguları işleme düğümlerini iş ihtiyaçlarınıza göre uyarlayabilirsiniz. Bu eğitimde veri aktarımının nasıl yapılacağını göstermek için bir MySQL düğümü kullanılmaktadır.
Veri sorgulama düğümünden çıkan parametreleri almak için bir veri aktarım düğümü ekleyin. Düğüm daha sonra bağlam parametreleri olarak geçirilen verileri DingTalk, Lark, WeCom, Microsoft Teams veya e-postaya aktarır.
Aktarım yöntemleri
Bu eğitimde bir iş akışında veri aktarım düğümlerini kullanmaya yönelik beş yöntem ele alınmaktadır: Basit Aktarım, Birleştirilmiş Aktarım, Betik Tabanlı Aktarım, Koşullu Aktarım ve MaxCompute Veri Aktarımı.
Basit Aktarım: Yukarı akıştaki bir iş akışı bir SQL sorgusu çalıştırır ve sonuçları Input and Output Parameters kullanarak bir veri aktarım düğümüne iletir.
Birleştirilmiş Aktarım: Birden çok yukarı akış iş akışı SQL sorguları çalıştırır ve sonuçlarını Input and Output Parameters kullanarak tek bir veri aktarım düğümüne iletir.
Betik Tabanlı Aktarım: Bir yukarı akış Assignment Node verileri bir betik kullanarak işler ve ardından sonuçları Input and Output Parameters kullanarak bir aktarım düğümüne iletir. Daha fazla bilgi için bkz. Atama düğümü.
Koşullu Aktarım: Bir yukarı akış iş akışı, verileri yapılandırılmış koşullara göre değerlendirmek için bir Branch Node kullanır ve uygun verileri Input and Output Parameters kullanarak bir veri aktarım düğümüne iletir. Daha fazla bilgi için bkz. Dal düğümü.
MaxCompute Veri Aktarımı: Bir MaxCompute veri kaynağından veri aktarır. MaxCompute'u sorgulamak ve ardından sonuçları aktarmak için bir atama düğümü kullanabilirsiniz.
Önkoşullar
Başlamadan önce aşağıdakilere sahip olduğunuzdan emin olun:
Bir DataWorks çalışma alanı. Ayrıntılar için bkz. Çalışma alanı oluşturma.
Bir ApsaraDB RDS for MySQL örneği ve çalışma alanınızda bir MySQL veri kaynağı. Ayrıntılar için bkz. Veri kaynağı yönetimi.
-
Çalışma alanınızda bir MaxCompute veri kaynağı. Ayrıntılar için bkz. MaxCompute hesaplama kaynağını ilişkilendirme.
NotBu eğitimde örnek olarak bir MySQL veri kaynağı ve bir MaxCompute veri kaynağı kullanılmaktadır. İş ihtiyaçlarınıza göre diğer türdeki veri kaynaklarını ekleyebilirsiniz.
Sunucusuz kaynak grubu. Yalnızca sunucusuz kaynak grupları veri aktarım düğümlerini çalıştırabilir. Satın alma ve kullanma hakkında bilgi edinmek için bkz. Sunucusuz kaynak gruplarını kullanma.
Sınırlamalar
-
Veri aktarım özelliği aşağıdaki sınırlamalara sahiptir:
DingTalk için veri boyutu 20 KB'yi aşamaz.
Lark için veri boyutu 20 KB'yi aşamaz ve görseller 10 MB'ten küçük olmalıdır.
WeCom için her sohbet botu dakikada en fazla 20 mesaj gönderebilir.
Microsoft Teams için veri boyutu 28 KB'yi aşamaz.
E-posta için her veri aktarım görevi yalnızca tek bir e-posta gövdesini destekler. Ek sınırlamalar için e-posta hizmetinizin SMTP sınırlamalarına bakın.
Veri aktarım özelliği yalnızca aşağıdaki bölgelerdeki DataWorks çalışma alanlarında kullanılabilir: China (Hangzhou), China (Shanghai), China (Beijing), China (Shenzhen), China (Chengdu), China (Hong Kong), Singapore, Malaysia (Kuala Lumpur), US (Silicon Valley), US (Virginia) ve Germany (Frankfurt).
Hazırlık
İş akışı oluşturma
DataWorks konsolu üzerinde oturum açın. Hedef bölgede sol gezinme bölmesinde seçeneğine tıklayın. Açılır listeden bir çalışma alanı seçin ve Go to Data Development öğesine tıklayın.
Data Studio panelinde Workflow üzerine sağ tıklayın ve Create Workflow seçeneğini belirleyin. İş akışı için bir ad girin. Bu örnekte iş akışının adı
Data Push Demoolarak belirlenmiştir.
Düğüm oluşturma
Data Push Demo iş akışını oluşturduktan sonra iş akışı tuvalini açmak için iş akışı adına çift tıklayın. Aşağıdaki tabloda ihtiyacınız olan aktarım yöntemine bağlı olarak ilgili düğümleri oluşturmak için
simgesine tıklayın. Oluşturduğunuz düğümlere tabloda belirtildiği şekilde tam olarak aynı isimleri verin.
Aktarım yöntemi | Düğüm adı | Düğüm türü | Açıklama |
| MySQL düğümü | Test verilerinden geçen ayki toplam satışları sorgular ve sonucu bağlam parametresi olarak dal düğümüne iletir. | |
| Branch Node | MySQL düğümünden çıkan parametreyi alır, bir koşula göre değerlendirir ve sonuca bağlı olarak verileri farklı MySQL düğümlerine bağlam parametreleri olarak yönlendirir. | |
| MySQL düğümü | Dal düğümünden 'hedef karşılandı' çıktısını alır, ilgili verileri sorgular ve sonucu bağlam parametresi olarak Veri Aktarım düğümüne iletir. | |
| Dal düğümünden 'hedef karşılanmadı' çıktısını alır, ilgili verileri sorgular ve sonucu bağlam parametresi olarak Veri Aktarım düğümüne iletir. | ||
| Data Push düğümü | 'Hedef karşılandı' çıktısını alır ve giriş bağlam parametresindeki verileri hedefe aktarır. | |
| 'Hedef karşılanmadı' çıktısını alır ve giriş bağlam parametresindeki verileri hedefe aktarır. | ||
| MySQL düğümü | En iyi üç kategori için geçen haftaki toplam satışları sorgular ve sonucu bağlam parametresi olarak atama düğümüne iletir. | |
| Assignment Node | Python kullanarak MySQL düğümünden çıkan parametreyi alır, bunu bir listeye dönüştürür ve listeyi bağlam parametresi olarak Veri Aktarım düğümüne iletir. | |
| Data Push düğümü | Atama düğümünden gelen listeyi alır ve hedefe aktarır. | |
| MySQL düğümü |
| |
| |||
| Data Push düğümü | İki MySQL düğümünden aynı anda çıkan parametreleri alır ve giriş bağlam parametrelerindeki verileri hedefe aktarır. | |
| MySQL düğümü | Test verilerinden dünkü toplam satışları sorgular ve sonucu bağlam parametresi olarak Veri Aktarım düğümüne iletir. | |
| Data Push düğümü | MySQL düğümünden çıkan parametreyi alır ve giriş bağlam parametresindeki verileri hedefe aktarır. | |
| Batch Synchronization düğümü | Veri Entegrasyonu kullanarak verileri MySQL'den bir ODPS veri kaynağına eşzamanlar. | |
| Assignment Node | ODPS veri kaynağından veri sorgular ve sonucu bağlam parametresi olarak Veri Aktarım düğümüne iletir. | |
| Data Push düğümü | Atama düğümünden gelen sorgu sonucunu alır ve hedefe aktarır. |
Veri hazırlama
Veri aktarım akışını yapılandırın
DataWorks, iş mantığınıza uygun birkaç dağıtım yöntemi sunar: koşullu dağıtım, betik tabanlı dağıtım, birleştirilmiş dağıtım, basit dağıtım ve MaxCompute veri dağıtımı. Bu eğitimde, çeşitli veri kaynakları için yöntemleri göstermek amacıyla MySQL kullanılır ve MaxCompute'dan veri dağıtmaya yönelik özel bir örnek sağlanır.
Koşullu veri aktarımı
1. Adım: Aktarım iş akışını oluşturun
İş akışı tuvalini açmak için Data_Push_Demo iş akışına çift tıklayın. Aşağıdaki şekilde gösterildiği gibi düğümleri sırayla bağlayarak koşullu bir veri aktarım iş akışı oluşturun. İş akışı, verileri Query_Last_Month_Sales_Total düğümünden Check_Sales_Target düğümüne yönlendirir. Check_Sales_Target düğümü daha sonra akışı, "uyumlu" dalı (Last_Month_Sales_Target_Met ve Push_Top_3_Categories_Target_Met düğümlerini içerir) ve "uyumsuz" dalı (Last_Month_Sales_Target_Not_Met ve Push_Bottom_3_Categories_Target_Not_Met düğümlerini içerir) olmak üzere iki dala ayırır.

2. Adım: SQL sorgu düğümünü yapılandırın
Test verilerini sorgulamak için SQL sorgu düğümünü yapılandırın. Sorgu sonucu, Input and Output Parameters kullanılarak aşağı akış dal düğümüne bir çıkış parametresi (outputs) olarak iletilir.
-
Query_Last_Month_Sales_Totaldüğümüne çift tıklayın ve aşağıdaki SQL kodunu girin.-- Calculate the total sales for the previous month SELECT SUM(sales) AS sales_amount FROM orders WHERE datetime BETWEEN DATE_FORMAT(CURRENT_DATE - INTERVAL 1 MONTH, '%Y-%m-01 00:00:00') AND DATE_FORMAT(LAST_DAY(CURRENT_DATE - INTERVAL 1 MONTH), '%Y-%m-%d 23:59:59'); -
SQL kodunu girdikten sonra sağ taraftaki Scheduling Settings seçeneğine tıklayın. Özellikler bölmesinde aşağıdaki parametreleri yapılandırın.
Scheduling Time:
08:00.Resource Group for Scheduling: Sunucusuz kaynak grubunuzu seçin.
Upstream Nodes: Add Root Node seçeneğini belirleyin.
Output Parameters: Input and Output Parameters altında, sorgu sonucunu aşağı akış düğümüne iletmek için bir çıkış parametresi eklemek üzere Output Parameters yanındaki Add assignment parameter seçeneğine tıklayın.
3. Adım: Dal düğümünü yapılandırın
Bir dal düğümünde, Input and Output Parameters içindeki Input Parameters kullanarak üst akış SQL sorgu düğümünden gelen outputs çıkış parametresini alırsınız. Düğüm daha sonra koşullu bir değerlendirme yapar ve koşulu karşılayan verileri Output Parameters kullanarak dışarı aktarır.
-
Check_Sales_Targetdüğümüne çift tıklayın. "Uyumlu" ve "uyumsuz" olmak üzere iki dal oluşturmak için Add Branch seçeneğine tıklayın. Dalların yapılandırmasını aşağıdaki gibi yapın.
Parametre
Uyumlu dal
Uyumsuz dal
Condition${inputs[0][0]}>=500000${inputs[0][0]}<500000
Associated Node Output
Uyumlu
Uyumsuz
Description
Geçen ayki toplam satışlar uyumludur.
Geçen ayki toplam satışlar uyumsuzdur.Not[0][0] ifadesi, koşul için belirli veri noktasını konumlandırmak amacıyla iki boyutlu bir dizi referansıdır.
Üst akış düğümü bir SQL sorgu düğümü olduğunda, parametredeki koşullu veriyi konumlandırmak için iki boyutlu bir dizi kullanın.
Üst akış düğümü bir Python düğümü olduğunda, tek boyutlu bir dizi kullanın.
-
Condition Checkdüğümünü açmak için çift tıklayın. Sağ tarafta Scheduling Settings seçeneğine tıklayın ve açılan iletişim kutusunda aşağıdaki ayarları yapılandırın.Parametre türü
Açıklama
Schedule
Scheduling Frequency
GünScheduling Time
08:00Rerun
Başarılı ve başarısız çalıştırmalardan sonra yeniden çalıştırmalara izin verilir.
Resource Group
Resource Group for Scheduling
Sunucusuz kaynak grubunuzu seçin.
NotBir veri aktarım düğümünü ilk kez kullandığınızda, zamanlama kaynak grubunu yükseltmek için bir destek bileti göndermeniz gerekir.
Output Name of Current Node
Dalları yapılandırdıktan sonra, çıkış adları otomatik olarak ayrıştırılır ve buraya eklenir. Output Name, dal için tanımlanan Associated Node Output ile eşleşmelidir.
Input and Output Parameters
Input Parameters
Parameter name:
inputsValue Source: Üst akış düğümü
Query last month's total salesöğesinden,outputsçıkış parametresini seçin.Output Parameters
Sistem varsayılan olarak
outputsöğesini ekler. Yapılandırmayı tamamladıktan sonra,
Check_Sales_Targetdüğümünü kaydetmek için
simgesine tıklayın.
4. Adım: Dal SQL düğümlerini yapılandırın
Bu eğitimde, dal SQL sorgu düğümü Last_Month_Sales_Target_Met_Data ve Last_Month_Sales_Target_Not_Met_Data olmak üzere iki düğüme ayrılmıştır. Branch Node bağlam parametrelerini Last_Month_Sales_Target_Met_Data ve Last_Month_Sales_Target_Not_Met_Data düğümlerine aktarmanız gerekir. Ardından, Input and Output Parameters bölümündeki Output Parameters kullanarak SQL sorgu sonucunu dal düğümünden ilgili hedefe ulaşıldı ve hedefe ulaşılmadı Data Push düğümlerine aktarın.
-
Düzenleyicilerini açmak için
Last_Month_Sales_Target_MetveLast_Month_Sales_Target_Not_Metdüğümlerine çift tıklayın ve her biri için aşağıdaki SQL kodunu girin.Geçen ayki satış hedefine ulaşıldı
SET @all_cat_sales_volume_month := 0.0; SELECT SUM(sales) INTO @all_cat_sales_volume_month FROM orders WHERE datetime BETWEEN DATE_FORMAT(CURRENT_DATE - INTERVAL 1 MONTH, '%Y-%m-01 00:00:00') AND DATE_FORMAT(LAST_DAY(CURRENT_DATE - INTERVAL 1 MONTH), '%Y-%m-%d 23:59:59'); -- Create a temporary table CREATE TEMPORARY TABLE IF NOT EXISTS temp_array ( category VARCHAR(255), sales DOUBLE, all_cat_sales_volume_month DOUBLE ); -- Query and write to the temporary table INSERT INTO temp_array (category, sales, all_cat_sales_volume_month) SELECT category, SUM(sales) AS amount, @all_cat_sales_volume_month FROM orders WHERE datetime BETWEEN DATE_FORMAT(CURRENT_DATE - INTERVAL 1 MONTH, '%Y-%m-01 00:00:00') AND DATE_FORMAT(LAST_DAY(CURRENT_DATE - INTERVAL 1 MONTH), '%Y-%m-%d 23:59:59') GROUP BY category ORDER BY amount DESC limit 3; -- Query the data for the top three compliant categories SELECT category, sales, all_cat_sales_volume_month FROM temp_array;Last month sales target not met
SET @all_cat_sales_volume_month := 0.0; SELECT SUM(sales) INTO @all_cat_sales_volume_month FROM orders WHERE datetime BETWEEN DATE_FORMAT(CURRENT_DATE - INTERVAL 1 MONTH, '%Y-%m-01 00:00:00') AND DATE_FORMAT(LAST_DAY(CURRENT_DATE - INTERVAL 1 MONTH), '%Y-%m-%d 23:59:59'); -- Create a temporary table CREATE TEMPORARY TABLE IF NOT EXISTS temp_array ( category VARCHAR(255), sales DOUBLE, all_cat_sales_volume_month DOUBLE ); -- Query and write to the temporary table INSERT INTO temp_array (category, sales, all_cat_sales_volume_month) SELECT category, SUM(sales) AS amount, @all_cat_sales_volume_month FROM orders WHERE datetime BETWEEN DATE_FORMAT(CURRENT_DATE - INTERVAL 1 MONTH, '%Y-%m-01 00:00:00') AND DATE_FORMAT(LAST_DAY(CURRENT_DATE - INTERVAL 1 MONTH), '%Y-%m-%d 23:59:59') GROUP BY category ORDER BY amount ASC limit 3; -- Query the data for the bottom three non-compliant categories SELECT category, sales, all_cat_sales_volume_month FROM temp_array; -
SQL kodunu girdikten sonra sağ taraftaki Scheduling Settings seçeneğine tıklayın. Özellikler bölmesinde aşağıdaki parametreleri yapılandırın.
Scheduling Time:
08:00.Resource Group for Scheduling: Sunucusuz kaynak grubunuzu seçin.
-
Parent Nodes: İş akışı Step 1: Build the push workflow adımında oluşturulduğundan yukarı akış bağımlılığının doğru olduğunu doğrulayın.
Last_Month_Sales_Target_Met düğümü için yukarı akış düğümünün çıkış adı Compliant olmalıdır.
Last_Month_Sales_Target_Not_Met düğümü için yukarı akış düğümünün çıkış adı Non-compliant olmalıdır.
Output Parameters: Input and Output Parameters bölümünde Output Parameters yanındaki Add assignment parameter seçeneğine tıklayarak bir çıkış parametresi ekleyin.
simgesine tıklayarak Last_Month_Sales_Target_MetveLast_Month_Sales_Target_Not_Metdüğümlerini kaydedin.
Step 5: Configure the branch data push nodes
İki veri gönderme düğümü oluşturmanız gerekir. Her düğüm için Input and Output Parameters bölümündeki Input Parameters değerlerini sırasıyla Last_Month_Sales_Target_Met_Data ve Last_Month_Sales_Target_Not_Met_Data dallanma SQL sorgu düğümlerinden gelen outputs parametresini alacak şekilde yapılandırın. Ardından bu parametreleri Gövde (Body) kısmında kullanarak ilgili hedeflere gönderin.
-
Push_Top_3_Categories_Target_MetvePush_Bottom_3_Categories_Target_Not_Metdüğümlerine çift tıklayın. Düğüm düzenleyicisinde Scheduling Settings seçeneğine tıklayın ve Scheduling Settings bölmesinde aşağıdaki ayarları yapın.Parametre türü
Değer
Açıklama
Scheduling Parameter
Parameter name
curdate
Parameter Value
$[yyyymmddhh:mi:ss]Schedule
Scheduling Frequency
Day
Scheduling Time
08:00NotBu öğreticide verilerin hedefe saat 08:00'de gönderilmesini sağlamak için örnek olarak 08:00 kullanılmıştır. İhtiyacınıza göre farklı bir saat yapılandırabilirsiniz.
Rerun
Başarılı ve başarısız çalıştırmalardan sonra yeniden çalıştırmaya izin verilir.
Resource Group
Resource Group for Scheduling
Sunucusuz kaynak grubunuzu seçin.
NotBir veri gönderme düğümünü ilk kez kullandığınızda zamanlama kaynak grubunu yükseltmek için bir destek talebi göndermeniz gerekir.

Input and Output Parameters
Input Parameters
Bir giriş parametresi eklemek için Add seçeneğine tıklayın:
Parametre Adı:
inputs.Değer Kaynağı:
Push Top 3 Sales Goal CategoriesdüğümündeLast Month's Sales Goal Datadüğümünün çıkış parametresi olanoutputsdeğerini seçin.Push Bottom Three Underperforming CategoriesdüğümündeLast Month's Underperforming Sales Datadüğümünden gelenoutputsçıkış parametresini seçin.
Push_Top_3_Categories_Target_Metdüğümü
Push_Bottom_3_Categories_Target_Not_Metdüğümü
-
Scheduling Settings yapılandırıldıktan sonra veri gönderme içeriğini aşağıdaki gibi ayarlayın.
Destination: Destination açılır listesinden hedefinizi seçin. Hedefiniz listede yoksa listenin altındaki Create Destination seçeneğine tıklayarak yeni bir hedef oluşturun.
Lark bot Webhook'unun nasıl alınacağı hakkında bilgi için Lark Webhook tetikleyicisi yapılandırma konusuna bakın.
Teams Webhook'unun nasıl alınacağı hakkında bilgi için Microsoft Teams iş akışlarını kullanarak gelen bir Webhook oluşturma konusuna bakın.
Title:
Push_Top_3_Categories_Target_MetvePush_Bottom_3_Categories_Target_Not_Met.-
Body: İhtiyaca göre yapılandırın. Ayrıntılar için bkz. Gönderim içeriğini yapılandırma.
NotGövde kısmında yukarı akış SQL sorgu düğümünden gelen giriş parametrelerine döndürülen alan adlarını yer tutucu olarak kullanarak başvurabilirsiniz.
Push_Top_3_Categories_Target_Met örneği

Push_Bottom_3_Categories_Target_Not_Met örneği

Parametre
Açıklama
Type
DingTalk, Lark, WeCom, Microsoft Teams ve E-posta desteklenir.
Object
İş ihtiyaçlarınıza göre özel bir ad girin.
Webhook
DingTalk, Lark, WeCom veya Microsoft Teams sohbet botları için Webhook URL'sini veya E-posta için SMTP ayrıntılarını ilgili platformdan edinin.
Not Yapılandırmayı tamamladıktan sonra
simgesine tıklayarak Push_Top_3_Categories_Target_MetvePush_Bottom_3_Categories_Target_Not_Metdüğümlerini kaydedin.
Step 6: Test the conditional push workflow
Koşullu gönderim iş akışını yapılandırdıktan sonra göndermeden ve dağıtmadan önce test edin.
Data_Push_Demoiş akışı sayfasını açmak için çift tıklayın.-
Query Last Month's Total Salesdüğümünü seçin, sağ tıklayın ve Geçerli düğümü ve aşağı akış düğümlerini çalıştır seçeneğini belirleyin. Çalıştırmanın tamamlanmasını bekleyin.NotBir görev başarısız olursa başarısız olan düğüme sağ tıklayın ve günlüğü görüntülemek için View Log seçeneğini belirleyin.
Betik ile veri gönderimi
Step 1: Build the workflow
İş akışı tuvalini açmak için DataPushDemo iş akışına çift tıklayın. Bir betik veri gönderimi iş akışı oluşturmak için SalesAmountPreWeek, Top3CategoryList ve Top3CategoriesPreWeek düğümlerini sırayla bağlayın.

Step 2: Configure the SQL query node
Test verilerini sorgulamak için bir SQL sorgu düğümü yapılandırabilir ve Input and Output Parameters kullanarak SQL sorgu düğümü için outputs çıkış parametresini oluşturabilirsiniz. Bu sayede SQL sorgu sonucunu bir atama düğümüne aktarabilirsiniz.
-
Düzenleyicisini açmak için
SalesAmountPreWeekdüğümüne çift tıklayın ve aşağıdaki SQL kodunu girin.-- Query the top three categories by sales from the previous week SELECT category, SUM(sales) AS amount FROM orders WHERE datetime BETWEEN DATE_FORMAT(DATE_SUB(CURDATE(), INTERVAL 1 WEEK), '%Y-%m-%d 00:00:00') AND DATE_FORMAT(DATE_SUB(CURDATE(), INTERVAL 1 DAY), '%Y-%m-%d 23:59:59') GROUP BY category ORDER BY amount DESC limit 3; -
SQL kodunu girdikten sonra sağ taraftaki Scheduling Settings seçeneğine tıklayın. Özellikler bölmesinde aşağıdaki parametreleri yapılandırın.
Scheduling Time:
08:00.Resource Group for Scheduling: Sunucusuz kaynak grubunuzu seçin.
Upstream Nodes: Add Root Node seçeneğini belirleyin.
Output Parameters: Input and Output Parameters bölümünde sorgu sonucunu alt düğüme aktarmak üzere bir çıkış parametresi eklemek için Output Parameters yanındaki Add assignment parameter seçeneğine tıklayın.

Query last week's sales datadüğümündeki
Kaydet simgesine tıklayın.
3. Adım: Atama düğümünü yapılandırın
Atama düğümü, yukarı akıştaki SQL sorgusu düğümünden gelen outputs parametresini almak için Input and Output Parameters altındaki Input Parameters öğesini kullanır. Düğüm bu verileri işler, Output Parameters için yeni bir değer oluşturur ve bunu veri itme düğümüne iletir.
-
Top3CategoryListatama düğümüne çift tıklayın. Düğüm düzenleyicisine aşağıdaki Python kodunu girin.def main(): from datetime import date today = date.today() formatted_date = today.strftime('%Y-%m-%d') msg = 'Stat date: ' + formatted_date + ' \\n\\n ' \ '- 1: ${inputs[0][0]}, sales: ${inputs[0][1]} \\n\\n ' \ '- 2: ${inputs[1][0]}, sales: ${inputs[1][1]} \\n\\n ' \ '- 3: ${inputs[2][0]}, sales: ${inputs[2][1]} \\n\\n ' print(msg) if __name__ == "__main__": import sys main() -
Kodu girdikten sonra sağ taraftaki Scheduling Settings seçeneğine tıklayın. Açılan bölmede aşağıdaki parametreleri yapılandırın.
Scheduling Time:
08:00.Resource Group for Scheduling: Zamanlama kaynak grubunuzu seçin.
-
Input and Output Parameters.
-
Input Parameters:
Parameter name:
inputs.Value Source: Yukarı akıştaki
SalesAmountPreWeekdüğümündenoutputsparametresini seçin.
Output Parameters: Sistem tarafından otomatik olarak oluşturulur.
-
Top 3 Sales in Organization Listatama düğümünü kaydetmek için
simgesine tıklayın.
4. Adım: Veri itme düğümünü yapılandırın
Yukarı akıştaki atama düğümünden gelen outputs parametresini almak için Input and Output Parameters altındaki Input Parameters öğesini yapılandırın. Ardından, bu parametreyi mesaj gövdesinde kullanarak hedefe itin.
-
Push Top 3 Categories of Last Weekadlı veri itme düğümüne çift tıklayın, Scheduling Settings seçeneğine tıklayın ve Scheduling Settings panelinde ayarları aşağıdaki gibi yapılandırın.Parametre türü
Parametre içeriği
Açıklama
Scheduling Parameter
Parameter name
curdate.
Parameter Value
$[yyyymmddhh:mi:ss].Schedule
Scheduling Frequency
Daily.
Scheduling Time
08:00.NotBu öğreticide, verilerin hedefe saat 08:00'de itildiğinden emin olmak için örnek olarak 08:00 kullanılmıştır. İhtiyaçlarınıza göre farklı bir saat yapılandırabilirsiniz.
Rerun
Düğüm başarılı veya başarısız olduktan sonra yeniden çalıştırılabilir.
Resource Group
Resource Group for Scheduling
Zamanlama kaynak grubunuzu seçin.
NotBir veri itme düğümünü ilk kez kullandığınızda, zamanlama kaynak grubunu yükseltmek için bir destek bileti göndermeniz gerekir.

Input and Output Parameters
Input Parameters
Bir giriş parametresi eklemek için Add seçeneğine tıklayın:
Parametre Adı:
inputs.Değer kaynağı: Yukarı akış düğümü
Top 3 sales categories last weeküzerinden çıkış parametresioutputsöğesini seçin.
-
Scheduling Settings öğesini yapılandırdıktan sonra, veri itme içeriğini aşağıdaki gibi yapılandırın.
Destination: Destination açılır listesinden bir hedef seçin. Hedefiniz listede yoksa, eklemek için listenin alt kısmındaki Create Destination seçeneğine tıklayın.
Lark bot Webhook'unu nasıl alacağınız hakkında bilgi için Lark Webhook tetikleyicisini yapılandırma konusuna bakın.
Teams Webhook'unu nasıl alacağınız hakkında bilgi için Microsoft Teams iş akışlarını kullanarak gelen Webhook oluşturma konusuna bakın.
Title:
Top 3 categories by sales for the previous week.-
Body: Mesaj gövdesini ihtiyaca göre yapılandırın. Ayrıntılar için bkz. İtme içeriğini yapılandırma.
NotGövde içinde, yukarı akıştaki SQL sorgusu düğümünden döndürülen alan adlarını yer tutucu olarak kullanarak giriş parametrelerine başvurabilirsiniz.

Parametre
Açıklama
Type
DingTalk, Lark, WeCom, Teams ve E-posta'yı destekler.
Object
İş ihtiyaçlarınıza göre özel bir ad belirtin.
Webhook
DingTalk, Lark, WeCom veya Teams botları için Webhook URL'sini ve e-posta için SMTP sunucu ayrıntılarını ilgili platformlardan edinin.
Not Yapılandırmayı tamamladıktan sonra,
Push Top Three Categories of Last Weekitme düğümünü kaydetmek için
simgesine tıklayın.
5. Adım: Komut dosyası veri itme iş akışını test edin
Komut dosyası veri itme iş akışını yapılandırdıktan sonra, gönderip dağıtmadan önce test edin.
İş akışı tuvalini açmak için
DataPushDemoiş akışına çift tıklayın.-
SalesAmountPreWeekdüğümüne sağ tıklayın ve Run Current Node and Its Descendant Nodes seçeneğini belirleyin. İşlemin tamamlanmasını bekleyin.NotBir görev başarısız olursa, başarısız olan düğüme sağ tıklayın ve günlüğü görüntülemek için View Log seçeneğini belirleyin.

Basit veri itme
1. Adım: İtme iş akışını oluşturun
Data_Push_Demo_Workflow öğesine çift tıklayın. İş akışı tuvalinde birden çok mevcut düğüm görebilirsiniz. MySQL sorgu düğümü Query_Yesterday_Sales_Total öğesini yukarı akış düğümü olarak sürükleyin ve aşağı akıştaki veri itme düğümü Push_Yesterday_Sales_Total ile bağlayın. Bu işlem, aşağıdaki şekilde gösterildiği gibi basit bir veri itme iş akışı oluşturur.

2. Adım: SQL sorgusu düğümünü yapılandırın
SQL sorgusu sonucunu veri itme düğümüne ileten bir outputs parametresi oluşturmak için Input and Output Parameters öğesini kullanın.
-
Query_Yesterday_Sales_Totaldüğümüne çift tıklayın ve aşağıdaki SQL kodunu girin.-- Create a temporary table named temp_array CREATE TEMPORARY TABLE IF NOT EXISTS temp_array ( total_amount DOUBLE ); -- Write the total sales from yesterday into the temp_array table INSERT INTO temp_array (total_amount) SELECT SUM(sales) FROM orders WHERE datetime BETWEEN DATE_FORMAT(DATE_SUB(CURDATE(), INTERVAL 1 DAY), '%Y-%m-%d 00:00:00') AND DATE_FORMAT(DATE_SUB(CURDATE(), INTERVAL 1 DAY), '%Y-%m-%d 23:59:59'); -- Query the temp_array table select total_amount FROM temp_array; -
SQL kodunu girdikten sonra sağ taraftaki Scheduling Settings seçeneğine tıklayın. Özellikler bölmesinde aşağıdaki parametreleri yapılandırın.
Scheduling Time:
08:00.Resource Group for Scheduling: Mevcut bir Serverless kaynak grubu seçin.
Upstream Nodes: Add Root Node seçeneğini belirleyin.
Output Parameters: Input and Output Parameters bölümünde, bir çıkış parametresi eklemek için Output Parameters yanındaki Add assignment parameter seçeneğine tıklayın. Böylece aşağı akış düğümleri bu değere erişebilir.

Query_Yesterday_Sales_Totaldüğümünü kaydetmek için
Kaydet simgesine tıklayın.
3. Adım: Veri aktarımı düğümünü yapılandırın
Üst akıştaki SQL sorgu düğümünden gelen outputs parametresini almak için Input and Output Parameters bölümündeki Input Parameters öğesini yapılandırın. Bu parametreyi daha sonra mesaj gövdesinde kullanabilir ve hedefe aktarabilirsiniz.
-
Push_Yesterday_Sales_Totalveri aktarımı düğümüne çift tıklayın. Düğüm düzenleyicisinde sağ taraftaki Scheduling Settings seçeneğine tıklayın. Scheduling Settings bölmesinde aşağıdaki parametreleri yapılandırın.Parametre türü
Ayrıntılar
Görsel
Scheduling Parameter
Parameter name
curdate
Parameter Value
$[yyyymmddhh:mi:ss]Schedule
Scheduling Frequency
Günlük
Scheduling Time
08:00NotBu eğitimde, verilerin hedefe saat 08:00'da aktarıldığından emin olmak için örnek olarak 08:00 kullanılmıştır. İhtiyacınıza göre farklı bir saat yapılandırabilirsiniz.
Rerun
Düğüm, başarılı veya başarısız bir çalıştırmadan sonra yeniden çalıştırılabilir.
Resource Group
Resource Group for Scheduling
Mevcut bir zamanlama kaynak grubu seçin.
NotBir veri aktarımı düğümünü ilk kez kullandığınızda, zamanlama kaynak grubunu yükseltmek için bir destek talebi göndermeniz gerekir.

Input and Output Parameters
Input Parameters
Bir giriş parametresi eklemek için Add seçeneğine tıklayın:
Parameter name:
inputs.Value Source: Üst akıştaki
Query_Yesterday_Sales_Totaldüğümündenoutputsparametresini seçin.
-
Scheduling Settings yapılandırıldıktan sonra, veri aktarımı içeriğini aşağıdaki gibi yapılandırın.
-
Destination: Destination açılır listesinden bir hedef seçin. Hedefiniz listede yoksa Create Destination seçeneğine tıklayın.
Parametre
Açıklama
Type
Desteklenen türler arasında DingTalk, Feishu, WeCom, Teams ve E-posta bulunur.
Object
İş ihtiyaçlarınıza göre özel bir ad girin.
Webhook
DingTalk, Feishu veya WeCom botları ya da Microsoft Teams iş akışı için Webhook URL'sini ilgili platformlardan edinin. E-posta için SMTP ayrıntılarını edinin.
NotLark bot Webhook'unu nasıl alacağınız hakkında bilgi için bkz. Lark Webhook tetikleyicisi yapılandırma.
Teams Webhook'unu nasıl alacağınız hakkında bilgi için bkz. Microsoft Teams iş akışlarını kullanarak gelen Webhook oluşturma.
Title:
Push_Yesterday_Sales_Total.-
Body: Mesaj gövdesini ihtiyacınıza göre yapılandırın. Daha fazla bilgi için bkz. Aktarım içeriğini yapılandırma.
NotGövde içinde, üst akıştaki SQL sorgu düğümünün döndürülen alan adlarını yer tutucu olarak kullanarak giriş parametrelerine başvurabilirsiniz.

-
Push_Yesterday_Sales_Totalveri aktarımı düğümünü kaydetmek için
Kaydet seçeneğine tıklayın.
4. Adım: Basit aktarım iş akışını test edin
Basit veri aktarımı iş akışını yapılandırdıktan sonra, dağıtım için göndermeden önce test edin.
İş akışı tuvalini açmak için
Data_Push_Demo_Workflowöğesine çift tıklayın.-
Query_Yesterday_Sales_Totaldüğümünü seçin, sağ tıklayın ve Run current node and its downstream nodes seçeneğini belirleyin. Çalıştırmanın tamamlanmasını bekleyin.NotBir görev başarısız olursa, başarısız olan düğüme sağ tıklayın ve günlüğü görüntülemek için View Log seçeneğini belirleyin.

Birleşik veri aktarımı
1. Adım: İş akışını oluşturun
Data Push Demo Flow iş akışı tuvalini açmak için çift tıklayın. Tuvalde, üst akış düğümleri olan Query Yesterday's Total Sales ve Query Yesterday's Sales Growth düğümlerini, alt akış düğümü Push Yesterday's Total Sales and Growth düğümüne sürükleyip bağlayarak aşağıdaki şekilde gösterildiği gibi birleşik bir veri aktarımı iş akışı oluşturun.
Query yesterday's total sales düğümü, basit veri aktarımı iş akışında kullanılanla aynı olabilir.

2. Adım: SQL sorgu düğümünü yapılandırın
Test verilerini sorgulamak ve SQL sorgu sonucunu bir veri aktarımı düğümüne ileten outputs çıkış parametresini oluşturmak için bir SQL sorgu düğümü yapılandırabilir ve Input and Output Parameters kullanabilirsiniz.
-
Query Yesterday's Sales Growthdüğümüne tıklayın ve aşağıdaki SQL sorgu kodunu yazın.-- Create the temporary table temp_array1 to store data from the day before yesterday CREATE TEMPORARY TABLE IF NOT EXISTS temp_array1 ( category VARCHAR(255), sales DOUBLE ); -- Write data from the day before yesterday to temp_array1 INSERT INTO temp_array1 (category, sales) SELECT category, SUM(sales) FROM orders WHERE datetime BETWEEN DATE_FORMAT(DATE_SUB(CURDATE(), INTERVAL 2 DAY), '%Y-%m-%d 00:00:00') AND DATE_FORMAT(DATE_SUB(CURDATE(), INTERVAL 2 DAY), '%Y-%m-%d 23:59:59') GROUP BY category; -- Create the temporary table temp_array2 to store yesterday's data CREATE TEMPORARY TABLE IF NOT EXISTS temp_array2 ( category VARCHAR(255), sales DOUBLE ); -- Write yesterday's data to temp_array2 INSERT INTO temp_array2 (category, sales) SELECT category, SUM(sales) FROM orders WHERE datetime BETWEEN DATE_FORMAT(DATE_SUB(CURDATE(), INTERVAL 1 DAY), '%Y-%m-%d 00:00:00') AND DATE_FORMAT(DATE_SUB(CURDATE(), INTERVAL 1 DAY), '%Y-%m-%d 23:59:59') GROUP BY category; -- Create the result temporary table to store yesterday's sales growth CREATE TEMPORARY TABLE IF NOT EXISTS result ( category VARCHAR(255), diff DOUBLE ); -- Write the growth data to the result table INSERT INTO result (category, diff) SELECT temp_array2.category AS category, temp_array2.sales - temp_array1.sales AS diff FROM temp_array1 LEFT JOIN temp_array2 ON temp_array1.category = temp_array2.category; -- Query the growth data from the result temporary table SELECT category, diff FROM result; -
SQL kodunu girdikten sonra sağ taraftaki Scheduling Settings seçeneğine tıklayın. Özellikler bölmesinde aşağıdaki parametreleri yapılandırın.
Scheduling Time:
08:00.Resource Group for Scheduling: Mevcut bir sunucusuz kaynak grubu seçin.
Upstream Nodes: Add Root Node seçeneğini belirleyin.
Output Parameters: Input and Output Parameters bölümünde, alt akış düğümlerinin giriş parametreleri için değer olarak çıkış parametreleri eklemek üzere Output Parameters yanındaki Add assignment parameter seçeneğine tıklayın.

Query Yesterday's Sales Growthdüğümünü kaydetmek için
Kaydet seçeneğine tıklayın.
Adım 3: Veri gönderme düğümünü yapılandırın
Yukarı akıştaki Query Yesterday's Total Sales ve Query Yesterday's Sales Growth düğümlerinden gelen outputs çıkış parametresini almak için, Input Parameters alanındaki Input and Output Parameters öğesini kullanın. Bu sayede söz konusu parametreleri Gövde (Body) kısmında kullanarak hedefe gönderebilirsiniz.
-
Push Yesterday's Total Sales and Growthadlı veri gönderme düğümüne çift tıklayın. Düğüm sayfası açıldığında Scheduling Settings seçeneğine tıklayın ve Scheduling Settings panelinde aşağıdaki ayarları belirtin.Parametre türü
Açıklama
Örnek
Scheduling Parameter
Parameter name
curdate
Parameter Value
$[yyyymmddhh:mi:ss]Schedule
Scheduling Frequency
Day
Scheduling Time
08:00NotBu eğitimde, verilerin saat 08:00'de hedefe gönderilmesini sağlamak amacıyla örnek olarak 08:00 kullanılmıştır. İhtiyacınıza göre farklı bir saat yapılandırabilirsiniz.
Rerun
Düğüm, önceki çalıştırmanın başarılı olup olmadığından bağımsız olarak yeniden çalıştırılabilir.
Resource Group
Resource Group for Scheduling
Mevcut bir kaynak grubu seçin.
NotBir veri gönderme düğümünü ilk kez kullandığınızda, zamanlama kaynak grubunu yükseltmek için bir destek talebi oluşturmanız gerekir.

Input and Output Parameters
Input Parameters
Bu düğüm için giriş parametreleri eklemek üzere Add seçeneğine tıklayın:
Parametre 1:
Parameter name:
inputs1.Value Source: Yukarı akış düğümü
Query Yesterday's Total Salesöğesininoutputsçıkış parametresini seçin.
Parametre 2:
Parameter name:
inputs2.Value Source: Yukarı akış düğümü
Query Yesterday's Sales Growthöğesindenoutputsçıkış parametresini seçin.

-
Scheduling Settings ayarlarını yaptıktan sonra veri gönderme içeriğini aşağıdaki gibi yapılandırın.
Destination: Destination açılır listesinden bir hedef seçin. İstediğiniz hedef listede yoksa, açılır listenin sağ alt köşesindeki Create Destination seçeneğine tıklayarak yeni bir hedef oluşturun.
Lark bot Webhook'unu nasıl alacağınız hakkında bilgi için bkz. Lark Webhook tetikleyicisi yapılandırma.
Teams Webhook'unu nasıl alacağınız hakkında bilgi için bkz. Microsoft Teams iş akışlarını kullanarak gelen bir Webhook oluşturma.
Title:
Push Yesterday's Total Sales and Growth-
Body: Gövdeyi (Body) ihtiyaca göre yapılandırın. Daha fazla bilgi için bkz. Gönderme içeriğini yapılandırma.
NotGövde kısmında, yukarı akıştaki SQL sorgu düğümünden gelen giriş parametrelerine, döndürülen alan adlarını yer tutucu olarak kullanarak başvurabilirsiniz.
Parametre
Açıklama
Type
Desteklenen türler arasında DingTalk, Lark, WeCom, Microsoft Teams ve E-posta bulunur.
Object
İş gereksinimlerinize göre özel bir ad belirtin.
Webhook
DingTalk, Lark, WeCom veya Microsoft Teams sohbet botları için Webhook URL'sini ya da E-posta için SMTP ayrıntılarını ilgili platformdan alın.
Not Yapılandırma tamamlandığında,
Push Yesterday's Total Sales and Growthgönderme düğümünü kaydetmek için
Kaydet seçeneğine tıklayın.
Adım 4: Birleştirilmiş gönderme iş akışını test edin
Birleştirilmiş gönderme iş akışını test etmeden önce basit gönderme iş akışı yapılandırmasını tamamlamanız gerekir. Bu yapılandırma, sonraki dağıtım aşaması için bir ön koşuldur.
İş süreci diyagramı sayfasını açmak için
Data Push Demo Flowöğesine çift tıklayın.-
Push Yesterday's Total Sales and Growthdüğümünü seçin, sağ tıklayın ve Run Till Current Node seçeneğine tıklayın; ardından çalıştırmanın tamamlanmasını bekleyin.NotBir görev başarısız olursa, başarısız olan düğüme sağ tıklayın ve günlüğü görüntülemek için View Log seçeneğine tıklayın.

MaxCompute'ten veri gönderme
Adım 1: Veri gönderme akışını oluşturun
Data Push Demo Flow öğesine çift tıklayın. İş akışı tuvalinde oluşturulan düğümleri görebilirsiniz. Bir Batch Synchronization düğümünü sürükleyerek Assignment Node öğesinin yukarı akış düğümü olarak konumlandırın. Sync MySQL data to ODPS, Query ODPS data ve Push ODPS data düğümlerini sırayla bağlayın.
2. Adım: Toplu senkronizasyon düğümünü yapılandırın
Synchronize MySQL data to ODPS düğümünü, Verileri hazırlama aşamasında MySQL'e yazılan test verilerini sonraki adımlarda kullanmak üzere ODPS veri kaynağına aktaracak şekilde yapılandırın.
-
Toplu senkronizasyon düğümünü yapılandırmak için
Synchronize data from MySQL to ODPSdüğümüne çift tıklayın.Parametre
Yapılandırma
Örnek
Source
Data Source
MySQL

Data Source Name
Oluşturduğunuz MySQL veri kaynağını seçin.
My Resource Group
Sunucusuz bir kaynak grubu seçin.
Destination
Destination
MaxCompute (ODPS)
Data Source Name
Çalışma alanına bağlı MaxCompute veri kaynağını seçin.
Yapılandırmayı tamamladığınızda sistem, veri kaynağı ile kaynak grubu arasındaki bağlantıyı otomatik olarak test eder. Test başarılı olduktan sonra İleri'yi tıklayarak kaynak ve hedef ayrıntılarını yapılandırın.
-
Kaynağı ve hedefi yapılandırın.
Parametre
Yapılandırma
Örnek
Data Source
Data Sources
Varsayılan ayarları koruyun:
MySQL.
Oluşturduğunuz MySQL veri kaynağını seçin.

Table
orderstablosunu seçin.Data Filter
İhtiyaca göre yapılandırabilirsiniz. Bu eğitim için boş bırakın.
Shard Key
Bölme anahtarı olarak kaynak tablodan bir sütun kullanabilirsiniz. Birincil anahtarı veya dizinlenmiş bir sütunu kullanmanızı öneririz.
Data Preview
MySQL veri kaynağından alınan verileri ön izleyerek beklentilerinizi karşılayıp karşılamadığını doğrulayın.
Destination
Data Sources
Varsayılan ayarları koruyun:
MaxCompute (ODPS).
Çalışma alanına bağlı MaxCompute veri kaynağını seçin.

Tunnel Resource Group
Bu parametre Tunnel Kotasını belirtir. Varsayılan değer "Public transmission resources" olup MaxCompute için ücretsiz kotadır.
Table
Hedef tabloyu oluşturmak için Generate Destination Table Schema öğesine tıklayın.
Partition Information
Günlük artımlı verileri yüklemek için tarihe dayalı bir bölüm yapılandırın. Örneğin,
ptbölümünü${bizdate}olarak ayarlayın.Write Method
Yazmadan önce mevcut verileri temizle ( existing data before writing (Insert Overwrite))
Kaynağı ve hedefi yapılandırdıktan sonra alanları Map Fields with the Same Name seçeneğiyle eşleyebilirsiniz.

-
Kanal kontrolünü yapılandırın.
Expected Maximum Concurrency: Çalışma zamanındaki gerçek eşzamanlılık, kaynak sınırlamaları veya görevin doğası nedeniyle bu değerden düşük veya buna eşit olabilir. Ücretlendirme gerçek eşzamanlılığa göre yapılır. Bu eğitim için 2 eşzamanlılık yeterlidir.
Bandwidth Throttling: Kaynak veya hedef üzerindeki okuma/yazma yükünü korumak için hız sınırlaması kullanabilirsiniz. Hız sınırlaması yapılandırmazsanız sistem donanımın desteklediği maksimum aktarım performansını sağlar. Bu eğitimde hız sınırlaması yapılandırılmamıştır.
Policy for Dirty Data Records: Kirli verilere izin verilmez.
Distributed Execution: Bu özellik varsayılan olarak devre dışıdır. Etkinleştirmek için en az 8 eşzamanlılık gerekir.

-
Zamanlama özelliklerini yapılandırın.
Entegrasyon görevini yapılandırdıktan sonra sayfanın sağ tarafındaki Properties seçeneğine tıklayın. Properties panelinde aşağıdaki parametreleri yapılandırın.
-
Scheduling Parameter:
Parameter name:
bizdateParameter Value:
$[yyyymmdd-1]
Scheduling Time:
08:00Rerun: Açılır listeden Allow Regardless of Running Status seçeneğini belirleyin.
Resource Group for Scheduling: Oluşturduğunuz zamanlama kaynak grubunu seçin.
Dependencies: Toplu senkronizasyon görevi için üst akış bağımlılığı olarak kullanmak üzere çalışma alanı kök düğümünü seçin.
-
Synchronize MySQL data to ODPStoplu senkronizasyon düğümünü kaydetmek için
Save simgesine tıklayın.
3. Adım: Atama düğümünü yapılandırın
ODPS veri kaynakları, bir ODPS SQL düğümü kullanarak veri sorgulamayı ve verileri Input and Output Parameters aracılığıyla bir veri gönderme düğümüne çıkarmayı desteklemez. ODPS verilerini sorgulamak için bir atama düğümü kullanmanız ve ardından verileri veri gönderme düğümüne çıkarmak için Input and Output Parameters özelliğini etkinleştirmeniz gerekir.
-
Yapılandırma sayfasını açmak için
Query ODPS datadüğümüne çift tıklayın.Düzenleyicinin üst kısmındaki Language açılır listesinden ODPS SQL seçeneğini belirleyin.
-
ODPS SQL kodunu girin.
-- Create a subquery with a ranking to calculate the descending order of sales within each partition (pt). -- The DENSE_RANK() function assigns a unique rank to each row within a partition. -- Rows with equal sales values receive the same rank, and no rank numbers are skipped. -- -- Subquery details: -- 1. Select the required columns from the 'orders' table: order_id, category, sales, datetime, and pt (business date). -- 2. Use DENSE_RANK() OVER (PARTITION BY pt ORDER BY sales DESC): -- PARTITION BY pt specifies that ranking is performed separately for each unique value in the pt column. -- ORDER BY sales DESC sorts rows within each partition by sales in descending order. -- The 'rank' column stores the sales rank of each row within its partition. -- -- Main query details: -- The main query selects records from the ranked subquery where the rank is 3 or less. -- This ensures that for each business date, only the top three orders by sales are retrieved. SELECT order_id, -- Select the order ID category, -- Select the product category sales, -- Select the sales amount datetime, -- Select the order time pt -- Select the business date FROM ( SELECT order_id, category, sales, datetime, pt, DENSE_RANK() OVER (PARTITION BY pt ORDER BY sales DESC) AS rank -- Calculate sales rank within each pt partition FROM orders WHERE pt = '${bizdate}' -- Filter records for the specified business date ) AS ranked_orders WHERE rank <= 3 -- Keep only the top three records by sales for each pt partition
-
SQL kodunu girdikten sonra sağ taraftaki Scheduling Settings seçeneğine tıklayın. Properties bölmesinde aşağıdaki parametreleri yapılandırın.
Scheduling Time:
08:00.Resource Group for Scheduling: Daha önce oluşturduğunuz sunucusuz bir kaynak grubunu seçin.
Parent Nodes: Üst düğümün bir
MySQL to ODPStoplu senkronizasyon düğümü olup olmadığını kontrol edin.-
Input and Output Parameters: Alt düğümlerin giriş parametresi değeri olarak kullanmak üzere bir çıkış parametresi eklemek için çıkış parametrelerinin yanındaki Add seçeneğine tıklayın.

ODPS data querydüğümünü kaydetmek için
Save simgesine tıklayın.
Adım 4: Veri aktarım düğümünü yapılandırın
Üst akış atama düğümünden outputs parametresini almak ve bu parametreleri gövde kısmında kullanarak hedefe aktarmak için, Input Parameters bölümündeki Input and Output Parameters ayarlarını yapılandırın.
-
ODPS Data Pushadlı veri aktarım düğümüne çift tıklayın, Scheduling sekmesine tıklayın ve Scheduling panelinde aşağıdaki ayarları yapılandırın.Parametre türü
Yapılandırma
Örnek
Scheduling Parameter
Parameter name
curdate
Parameter Value
$[yyyymmddhh:mi:ss]Schedule
Scheduling Frequency
DD
Scheduling Time
08:00NotBu eğitimde, verilerin hedefe saat 08:00'da aktarıldığından emin olmak için örnek olarak 08:00 kullanılmıştır. İhtiyacınıza göre farklı bir saat yapılandırabilirsiniz.
Rerun
Allow Regardless of Running Status.
Resource Group
Resource Group for Scheduling
Veri aktarımı özelliğinin yayınlanma tarihinden sonra oluşturulmuş bir kaynak grubu seçin. Kaynak grubunuz bu tarihten önce oluşturulduysa, yükseltme için bir destek talebi oluşturun.
NotVeri aktarım düğümü özelliği 28 Haziran 2024 tarihinde yayınlanmıştır. Daha fazla DataWorks sürüm notu için bkz. Release History.

Input and Output Parameters
Input Parameters
Bu düğüm için giriş parametreleri eklemek üzere Add öğesine tıklayın:
Parameter name:
inputsValue Source: Üst akıştaki
ODPS Data Querydüğümünün outputs çıkış parametresini seçin.

-
Scheduling Settings ayarlarını yapılandırdıktan sonra, veri aktarım içeriğini aşağıdaki gibi yapılandırın.
Destination: Destination açılır listesinden gerekli hedefi seçin. Hedef mevcut değilse, açılır listenin sağ alt kısmındaki Create Destination seçeneğine tıklayarak yeni bir hedef oluşturabilirsiniz.
Lark bot Webhook'unu nasıl alacağınız hakkında bilgi için bkz. Configure a Lark Webhook trigger.
Teams Webhook'unu nasıl alacağınız hakkında bilgi için bkz. Use Microsoft Teams workflows to create an incoming Webhook.
Title:
ODPS Data Push-
Body: Gerektiği şekilde yapılandırın. Ayrıntılar için bkz. Aktarım içeriğini yapılandırma.
NotMesaj gövdesinde, üst akış atama düğümünün sorgu sonucundaki alan adlarını doğrudan yer tutucu olarak kullanabilirsiniz.
Parametre
Açıklama
Type
Desteklenen hedefler arasında DingTalk, Lark, WeChat Work, Microsoft Teams ve E-posta bulunur.
Object
İş gereksinimlerinize göre özel bir ad belirtin.
Webhook
DingTalk, Lark, WeChat Work veya Microsoft Teams botları için webhook URL'sini ya da e-posta için SMTP ayrıntılarını ilgili platformlardan almanız gerekir.
Not Yapılandırmayı tamamladıktan sonra, veri aktarım düğümünü kaydetmek için
Save simgesine tıklayın.
Adım 5: MaxCompute veri aktarım akışını test edin
Veri aktarım akışındaki tüm düğümleri yapılandırdıktan sonra, akışı gönderip dağıtmadan önce test etmeniz gerekir.
Data_Push_Demoiş akışı sayfasını açmak için çift tıklayın.-
Sync Data from MySQL to ODPSdüğümünü seçin, sağ tıklayın ve Geçerli düğümü ve alt akış düğümlerini çalıştır seçeneğini belirleyin; çalıştırmanın tamamlanmasını bekleyin.NotBir görev başarısız olursa, başarısız olan düğüme sağ tıklayın ve günlüğü görüntülemek için View Log seçeneğini belirleyin.

Gönderme ve yayınlama
Veri aktarım akışını yapılandırdıktan sonra, tüm veri aktarım akışlarının doğru çalıştığını doğrulamak için Data Push Demo Example iş süreci diyagramına çift tıklayın. Testler başarılı olduktan sonra akışları gönderin ve yayınlayın.
Veri aktarım akışının düzenleme sayfasında, iş sürecini çalıştırmak için
simgesine tıklayın.Veri aktarım akışındaki tüm düğümlerde
simgesi göründükten sonra, akışı göndermek için
simgesine tıklayın.Submission iletişim kutusunda, gönderilecek düğümleri seçin ve Ignore I/O Inconsistency Alerts onay kutusunu işaretleyin.
Submission seçeneğine tıklayın.
Akışı gönderdikten sonra, düğümlerini yayınlama sayfasında yayınlayabilirsiniz. Daha fazla bilgi için bkz. Görevi Yayınlama.
Sonraki adımlar
Bir veri aktarımı, yapılandırılan zamanlama döngüsünde çalışır. İşlem Merkezi'nden, yayınlanmış bir veri aktarımının görev düğümlerini yönetebilirsiniz. Ayrıntılar için bkz. Zamanlanan görevlerde temel işlemler.
simgesinin üzerine gelin ve yeni bir ad hoc sorgu sekmesi açmak için