2016-08-14 1 views
1

Voici le script spark que j'essaie d'exécuter. Il est exécuté avec succès sur DAS (3.0.1) Batch Analytics Console. Mais ne parvient pas à exécuter lorsqu'il est enregistré en tant que script dans l'analyse par lots.Le script WSO2 DAS Spark ne s'exécute pas

insert overwrite table CLASS_COUNT select ((timestamp/120000) * 120000) as time , vin , username , classType,   
sum(acceleCount) as acceleCount , sum(decceleCount) as decceleCount 
from ACCELE_COUNTS 
group by ((timestamp/120000) * 120000) ,classType, vin, username; 

Erreur:

ERROR: [1.199] failure: ``limit'' expected but identifier ACCELE_COUNTSgroup found insert overwrite table X1234_CLASS_COUNT select ((timestamp/120000) * 120000) as time , vin , username , classType, sum(acceleCount) as acceleCount , sum(decceleCount) as decceleCountfrom ACCELE_COUNTSgroup by ((timestamp/120000) * 120000) ,classType, vin, username^

Avant cela, je suis l'exécution suivante sans aucun problème.

CREATE TEMPORARY TABLE ACCELE_COUNTS 
USING CarbonAnalytics 
OPTIONS (tableName "KAMPANA_RECKLESS_COUNT_STREAM", 
    schema "timestamp LONG , vin STRING, username STRING, classType STRING, acceleCount INT,decceleCount INT"); 

CREATE TEMPORARY TABLE CLASS_COUNT 
USING org.wso2.carbon.analytics.spark.event.EventStreamProvider 
OPTIONS (receiverURL "tcp://localhost:7611", 
    username "admin", 
    password "admin", 
    streamName "DAS_RECKELSS_COUNT_STREAM", 
    version "1.0.0", 
    description "Events are published when product quantity goes beyond a certain level", 
    nickName "product alerts", 
    payload "time LONG,vin STRING,username STRING, classType STRING, acceleCount INT, decceleCount INT" 
); 

Répondre

0

Cela arrive que vous n'avez pas d'espaces entre

1) decceleCount et from

2) ACCELE_COUNTS ET group by

Donc, assurez-vous d'avoir des espaces entre les mots même lorsque le deuxième mot est dans une nouvelle ligne.