Maison base de données tutoriel mysql Hive.GROUPINGSETS有BUG?

Hive.GROUPINGSETS有BUG?

Jun 07, 2016 pm 03:55 PM
bug hive avec

随着Hive 0.10版的发布,GROUPING SETS出现了,并提供了ROLL UP和CUBE这两个特殊场景的子句,真是喜闻乐见的特性

随着Hive 0.10版的发布,GROUPING SETS出现了,并提供了ROLL UP和CUBE这两个特殊场景的子句,真是喜闻乐见的特性啊。
不过最近在写两个HQL查询脚本的时候,我发现,对表达式进行GROUP BY并用GROUPING SETS自定义这些表达式的分组方式时,GROUPING SETS好像会出现解析异常:
FAILED: ParseException line 66:14 missing ) at ',' near ')' in subquery source
line 66:80 mismatched input ',' expecting ) near ')' in subquery source
Copier après la connexion
以下是GROUP子句的片段:
group by t1.my_month, t1.product, t1.usr_type, if(t3.earliest_logtime_monthly = '20140101', 'new_usr', 'old_usr'), if(t2.CTClass = 105, t1.ipcountry, t1.ipprovince), t1.ChannelID

grouping sets  ((t1.my_month, t1.usr_type, t1.ChannelID), (t1.my_month, t1.product, t1.usr_type, t1.ChannelID), (t1.my_month, if(t3.earliest_logtime_monthly = '20140101', 'new_usr', 'old_usr'), t1.ChannelID), (t1.my_month, t1.product, if(t3.earliest_logtime_monthly = '20140101', 'new_usr', 'old_usr'), t1.ChannelID), (t1.my_month, if(t2.Dim_CityClass = 105, t1.ipcountry, t1.ipprovince), t1.ChannelID), (t1.my_month, t1.product, if(t2.CTClass = 105, t1.ipcountry, t1.ipprovince), t1.ChannelID))
Copier après la connexion
去掉GROUPING SETS子句后脚本就正常,而且看了半天也没看出来GROUPING SETS子句里这样的组合方式有什么逻辑错误。
理论上,表达式和字段应该一样,可以出现在GROUPING SETS子句里并进行任意组合,对一些表达式的实测结果也表明GROUPING SETS里确实是支持表达式的。

这样的情况,使我怀疑GROUPING SETS子句的括号匹配逻辑没做得很完善,导致了括号配对抛出异常。不过,具体的问题,还是需要通过研究一下Hive实现源码来进一步确定这到底是不是一个BUG。

--------------------------------------------------------------------------------------------------------------------

2014-04-28

今天发现,好像是限定性名称的原因呢!就和Java的switch...case的case子句一样,case子句里的枚举值不能用限定性名称(EnumType.EnumValue1),只能用非限定性名称(EnumValue1)!难道grouping sets的Java实现涉及到switch...case子句?有待研究。

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Que signifie le bug du jeu ? Que signifie le bug du jeu ? Feb 18, 2024 am 11:30 AM

Que signifient les bugs du jeu ? Au cours du processus de jeu, nous rencontrons souvent des erreurs ou des problèmes inattendus, tels que des personnages bloqués, des tâches incapables de continuer, un scintillement de l'écran, etc. Ces phénomènes anormaux sont appelés bugs du jeu, c'est-à-dire des défauts ou des erreurs dans le jeu. Dans cet article, nous explorerons la signification des bugs de jeu et leur impact sur les joueurs et les développeurs. Les bugs du jeu font référence à des erreurs qui se produisent lors du développement ou du fonctionnement du jeu, entraînant un dysfonctionnement du jeu ou un comportement inattendu. Ces erreurs peuvent être dues à

Résumé du bug Apple iOS18 Résumé du bug Apple iOS18 Jun 14, 2024 pm 01:48 PM

Alors que la conférence WWDC 2024 d'Apple s'est terminée avec succès, non seulement macos15 a été annoncé, mais la mise à jour du nouveau système iOS18 d'Apple a attiré le plus d'attention. est nécessaire pour mettre à niveau Apple iOS18, quels types de bugs y a-t-il dans la dernière version d'Apple iOS18 ? Après évaluation d'une utilisation réelle, voici un résumé des bugs d'Apple iOS 18, jetons un coup d'œil. Actuellement, de nombreux utilisateurs d’iPhone se précipitent pour passer à iOS18. Cependant, divers bugs du système mettent les gens mal à l’aise. Certains blogueurs ont déclaré qu'il fallait être prudent lors de la mise à niveau vers iOS18 car "il y a tellement de bugs". Le blogueur a dit que si votre iPhone est

Que signifie le bagage système ? Que signifie le bagage système ? Nov 09, 2022 pm 02:40 PM

Le bagage système fait référence à un bug du système ; la signification originale du terme bug est "bug", et maintenant il peut être utilisé pour désigner des vulnérabilités existant sur l'ordinateur. La raison en est qu'il existe des failles dans la politique de sécurité du système et qu'il existe un danger. auxquels les attaquants peuvent accéder sans autorisation ; au sens large Sur Internet, les bugs peuvent être utilisés pour décrire des failles ou des défauts qui surviennent dans divers domaines.

Trier les erreurs et les problèmes Win11 Trier les erreurs et les problèmes Win11 Jan 13, 2024 pm 08:21 PM

Certaines personnes souhaitent mettre à jour Win11, mais elles ne savent pas s'il y a beaucoup de bugs dans Win11 et si la mise à jour posera des problèmes. En fait, il y a actuellement des bugs dans Win11, mais ils ont peu d'impact sur l'utilisation. Y a-t-il beaucoup de bugs dans Win11 ? Réponse : Il y a encore de nombreux bugs dans Win11. Ces bugs ont cependant peu d’impact sur l’utilisation quotidienne. Si l'utilisateur a des exigences élevées pour une utilisation quotidienne, il est recommandé de l'utiliser plus tard. Résumé des bogues de Win11 1. Gestionnaire de ressources 1. Parfois, un dépassement de mémoire se produit, entraînant une utilisation élevée de la mémoire du gestionnaire de ressources. 2. Cette situation entraînera une occupation de la mémoire de plus de 70 %, provoquant le blocage ou même le crash de l'ordinateur. 2. Conflit et crash 1. Certaines applications ne sont pas suffisamment compatibles, provoquant des conflits entre elles. 2. Bien qu'il existe relativement peu de procédures de conflit,

Utilisez le langage Hive in Go pour mettre en œuvre un entrepôt de données efficace Utilisez le langage Hive in Go pour mettre en œuvre un entrepôt de données efficace Jun 15, 2023 pm 08:52 PM

Ces dernières années, les entrepôts de données sont devenus partie intégrante de la gestion des données d'entreprise. L'utilisation directe de la base de données pour l'analyse des données peut répondre à des besoins de requêtes simples, mais lorsque nous devons effectuer une analyse de données à grande échelle, une seule base de données ne peut plus répondre aux besoins. À l'heure actuelle, nous devons utiliser un entrepôt de données pour traiter des données massives. . Hive est l'un des composants open source les plus populaires dans le domaine des entrepôts de données. Il peut intégrer le moteur informatique distribué Hadoop et les requêtes SQL et prendre en charge le traitement parallèle de données massives. En même temps, en langage Go, utilisez

Premiers pas avec PHP : PHP et Hive Premiers pas avec PHP : PHP et Hive May 20, 2023 am 08:33 AM

PHP est un langage de programmation côté serveur largement utilisé dans presque tous les secteurs. Dans cet article, nous explorerons le rôle particulier de PHP dans le traitement du Big Data. Dans certaines circonstances, PHP peut collaborer avec ApacheHive pour réaliser un traitement et une analyse des données en temps réel. Tout d’abord, présentons Hive. Hive est une solution d'entrepôt de données basée sur Hadoop. Il peut mapper des données structurées dans des requêtes SQL et exécuter les requêtes en tant que tâches MapReduce.

PHP implémente la plateforme open source d'analyse Big Data Hive PHP implémente la plateforme open source d'analyse Big Data Hive Jun 18, 2023 pm 02:47 PM

À mesure que le traitement des données prend de plus en plus d’importance, l’analyse du Big Data devient de plus en plus courante. Cependant, de nombreuses entreprises ne souhaitent pas dépenser beaucoup d’argent dans une plateforme d’analyse commerciale. Les solutions open source offrent à ces entreprises une option viable. Dans cet article, nous verrons comment implémenter la plateforme open source d'analyse Big Data Hive à l'aide de PHP. Hive est un système d'entrepôt de données basé sur Hadoop qui peut interroger et gérer des ensembles de données à grande échelle sur Hadoop via SQL. Il utilise le langage HiveQL de type SQL pour interroger

Quel est le cycle de vie d'un bug ? Quel est le cycle de vie d'un bug ? Nov 08, 2022 pm 02:17 PM

Le cycle de vie d'un BUG est le processus depuis la découverte d'un BUG jusqu'à la fermeture du BUG. Le processus spécifique est : 1. Découvrir le BUG, ​​​​c'est-à-dire découvrir les failles ou les défauts du logiciel ; Soumettez le bug et essayez de décrire les attributs et la reproduction du défaut, l'environnement, le type, le niveau, la priorité et les étapes de reproduction détaillées, les résultats et les attentes, etc. 3. Attribuez le bug, c'est-à-dire attribuez directement le problème au correspondant ; développeur ; 4. Analyser et confirmer qu'il s'agit d'un défaut ; 5. Traiter et corriger le BUG ; 6. Vérification de la régression ; 7. Fermer le BUG ;

See all articles