mirror of
				https://github.com/datahub-project/datahub.git
				synced 2025-10-31 02:37:05 +00:00 
			
		
		
		
	 6ece2d6469
			
		
	
	
		6ece2d6469
		
			
		
	
	
	
	
		
			
			Start adding java ETL examples, starting with kafka etl. We've had a few requests to start providing Java examples rather than Python due to type safety. I've also started to add these to metadata-ingestion-examples to make it clearer these are *examples*. They can be used directly or as a basis for other things. As we port to Java we'll move examples to contrib.
		
			
				
	
	
		
			145 lines
		
	
	
		
			9.6 KiB
		
	
	
	
		
			SQL
		
	
	
	
	
	
			
		
		
	
	
			145 lines
		
	
	
		
			9.6 KiB
		
	
	
	
		
			SQL
		
	
	
	
	
	
| WITH TL AS
 | |
| (
 | |
|   SELECT B1.CPC,
 | |
|     B1.CSC,
 | |
|     B1.CSN,
 | |
|     B1.CSC_P,
 | |
|     B1.CCC,
 | |
|     B1.NSD,
 | |
|     CASE 
 | |
|      WHEN B1.CSL = 4 THEN
 | |
|       B5.CSN
 | |
|      ELSE
 | |
|       B1.CSN
 | |
|     END AS GL_ATTR,
 | |
|     B1.CSL,
 | |
|     CASE WHEN B1.CSL = 4 THEN B4.CSN 
 | |
|          WHEN B1.CSL = 3 THEN B3.CSN
 | |
|          WHEN B1.CSL = 2 THEN B2.CSN
 | |
|          WHEN B1.CSL = 1 THEN B1.CSN
 | |
|     END AS FACCTNAME_LV1,
 | |
|     CASE WHEN B1.CSL = 4 THEN B3.CSN 
 | |
|          WHEN B1.CSL = 3 THEN B2.CSN
 | |
|          WHEN B1.CSL = 2 THEN B1.CSN
 | |
|     END AS FACCTNAME_LV2,
 | |
|     CASE WHEN B1.CSL = 4 THEN B2.CSN 
 | |
|          WHEN B1.CSL = 3 THEN B1.CSN
 | |
|     END AS FACCTNAME_LV3,
 | |
|     CASE WHEN B1.CSL = 4 THEN B1.CSN
 | |
|     END AS FACCTNAME_LV4
 | |
|   FROM (SELECT CPC, CSC, CSN, CSC_P, CCC
 | |
|         , NSD, CSL
 | |
|         FROM ODS.FVS
 | |
|         WHERE HDATASRC = 'A'
 | |
|         ) B1
 | |
|       LEFT JOIN 
 | |
|        (SELECT CPC, CSC, CSN, CSC_P, CCC
 | |
|         , NSD, CSL
 | |
|         FROM ODS.FVS 
 | |
|         WHERE HDATASRC = 'A'
 | |
|         ) B2
 | |
|         ON B1.CPC = B2.CPC
 | |
|        AND B1.CSC_P = B2.CSC
 | |
|       LEFT JOIN 
 | |
|        (SELECT CPC, CSC, CSN, CSC_P, CCC
 | |
|         , NSD, CSL
 | |
|         FROM ODS.FVS 
 | |
|         WHERE HDATASRC = 'A'
 | |
|         ) B3
 | |
|         ON B2.CPC = B3.CPC
 | |
|        AND B2.CSC_P = B3.CSC
 | |
|       LEFT JOIN 
 | |
|        (SELECT CPC, CSC, CSN, CSC_P, CCC
 | |
|         , NSD, CSL
 | |
|         FROM ODS.FVS 
 | |
|         WHERE HDATASRC = 'A'
 | |
|         ) B4
 | |
|         ON B3.CPC = B4.CPC
 | |
|        AND B3.CSC_P = B4.CSC
 | |
|       LEFT JOIN 
 | |
|        (SELECT CPC, CSC, CSN, CSC_P, CCC
 | |
|         , NSD, CSL
 | |
|         FROM ODS.FVS 
 | |
|         WHERE HDATASRC = 'A'
 | |
|         ) B5
 | |
|         ON B1.CPC = B5.CPC
 | |
|        AND B1.CSC_P = B5.CSC
 | |
| )
 | |
| INSERT OVERWRITE TABLE TMP.TFVDM1 PARTITION (HDATASRC = 'A')
 | |
| SELECT  qt_sequence("UUID", A.CAC)                          AS UUID,            
 | |
|         C.PH                                                                                                                    AS PH,            
 | |
|         A.CAC                                                                                                                                               AS PC,             
 | |
|         A.CPC                                                                                                                                             AS ASS,       
 | |
|         A.D_BIZ                                                                                                                                       AS BD,              
 | |
|               E.CH                                                                                                                                        AS CH,             
 | |
|         F.EH                                                                                                                                              AS EH,             
 | |
|         A.CSC                                                                                                                                     AS GL_CODE,                
 | |
|         CASE
 | |
|           WHEN A.CSN = ' ' THEN
 | |
|            A.C_KEY_NAME
 | |
|           ELSE
 | |
|            NVL(A.CSN,A.C_KEY_NAME)
 | |
|         END                                                                                                                                          AS GL_NAME,                
 | |
|         A.N_VALPRICE                                                                                                                                   AS ATPRICE,            
 | |
|         A.N_HLDAMT                                                                                                                                     AS ATQTY,              
 | |
|         A.N_HLDCST_LOCL                                                                                                                            AS ATCOST,             
 | |
|                 A.N_HLDCST                                                                                                                           AS ATCOST_ORICUR,      
 | |
|         A.N_HLDMKV_LOCL                                                                                                                              AS ATMKTVAL,           
 | |
|         A.N_HLDMKV                                                                                                                                     AS ATMKTVAL_ORICUR,    
 | |
|         A.N_HLDVVA_L                                                                                                                                 AS ATVAL_ADDED,        
 | |
|         A.N_HLDVVA                                                                                                                                   AS ATVAL_ADDED_ORICUR, 
 | |
|               A.N_VALRATE                                                                                                                            AS ATEXRATE,           
 | |
|         NULL                                                                                                                                                 AS COST_TO_AT_RIO,    
 | |
|         NULL                                                                                                                                         AS MKTVAL_TO_AT_RIO,  
 | |
|         B.NSD                                                                                                                                    AS IS_DETAIL_GL,           
 | |
|         A.C_PA_CODE                                                                                                                                    AS ATITEM,
 | |
|         A.C_IVT_CLSS                                                                                                                                 AS INVEST_CLASS,
 | |
|         A.C_ML_ATTR                                                                                                                                  AS ISSUE_MODE,
 | |
|         A.C_FEE_CODE                                                                                                             AS FEE_CODE,
 | |
|         A.C_SEC_VAR_MX                                                                                                                               AS SEC_KIND,                                                      
 | |
|         A.C_TD_ATTR                                            AS TRADE_ATTR,             
 | |
|         H.C_CA_ATTR                                            AS CASH_ACCOUNT,           
 | |
|         A.GL_LV1                                                                                                   AS GL_LV1,                 
 | |
|         B.FACCTNAME_LV1                                                                                                                              AS GL_NAME_LV1,            
 | |
|         B.FACCTNAME_LV2                                                                                                                              AS GL_NAME_LV2,            
 | |
|         B.FACCTNAME_LV3                                                                                                                              AS GL_NAME_LV3,            
 | |
|         B.FACCTNAME_LV4                                                                                                                          AS GL_NAME_LV4,            
 | |
|         NULL                                                                                                                                         AS GL_NAME_LV5,            
 | |
|         NULL                                                                                                                                         AS GL_NAME_LV6,            
 | |
|         A.CSC_T                                                                                                                                  AS GL_ATTR_CODE,           
 | |
|         CASE WHEN B.GL_ATTR = '<CA>' THEN A.CSN 
 | |
|                 ELSE B.GL_ATTR END                                                                                                                   AS GL_ATTR,                
 | |
|         NVL(B.CSN, A.C_KEY_NAME)                                                                             AS GL_FNAME,               
 | |
|         A.C_SEC_CODE                                           AS SEC_CODE_FA,            
 | |
|               NULL                                                                                                                                   AS SYMBOL_ORI,             
 | |
|         NULL                                                                                                                                         AS SYMBOL,                 
 | |
|         NULL                                                                                                                                         AS SEC_TYPE                          ,
 | |
|        FROM_UNIXTIME(UNIX_TIMESTAMP(CURRENT_TIMESTAMP()),'yyyy-MM-dd HH:mm:ss')                    AS HLOADTIME,              
 | |
|        '20190101'                                              AS HBATCHDATE              
 | |
|        FROM (SELECT SUBSTR(T.CSC, 1, 4) AS GL_LV1,
 | |
|                  T.* 
 | |
|           FROM ODS.FVRV T
 | |
|           WHERE T.D_BIZ IN (SELECT BD
 | |
|                            FROM CTL.CFD
 | |
|                           WHERE HDATASRC = 'A')
 | |
|             AND T.HDATASRC = 'A'
 | |
|          ) A
 | |
|        LEFT JOIN TL B
 | |
|           ON NVL(A.CSC_T, A.CSC) = B.CSC 
 | |
|          AND A.CPC = B.CPC
 | |
|        LEFT JOIN DW.PPCM C
 | |
|           ON A.CPC = C.ORI_SYS_PC 
 | |
|          AND C.ORI_SYS_HCODE = 'A' 
 | |
|          AND A.D_BIZ BETWEEN C.STDATE AND C.ENDDATE
 | |
|        LEFT JOIN DW.RCM E 
 | |
|           ON A.CCC = E.ORI_SYS_CR_CODE 
 | |
|          AND E.ORI_SYS_HCODE = 'A'
 | |
|        LEFT JOIN DW.REM F 
 | |
|           ON A.C_MKT_CODE = F.ORI_SYS_EXCH_CODE 
 | |
|          AND F.ORI_SYS_HCODE = 'A' 
 | |
|        LEFT JOIN (SELECT C_CA_CODE, MAX(C_CA_ATTR) AS C_CA_ATTR
 | |
|                    FROM ODS.FVC
 | |
|                   GROUP BY C_CA_CODE) H
 | |
|           ON A.C_CA_CODE = H.C_CA_CODE
 | |
| 
 |