Sélectionner vos préférences de cookies

Nous utilisons des cookies essentiels et des outils similaires qui sont nécessaires au fonctionnement de notre site et à la fourniture de nos services. Nous utilisons des cookies de performance pour collecter des statistiques anonymes afin de comprendre comment les clients utilisent notre site et d’apporter des améliorations. Les cookies essentiels ne peuvent pas être désactivés, mais vous pouvez cliquer sur « Personnaliser » ou « Refuser » pour refuser les cookies de performance.

Si vous êtes d’accord, AWS et les tiers approuvés utiliseront également des cookies pour fournir des fonctionnalités utiles au site, mémoriser vos préférences et afficher du contenu pertinent, y compris des publicités pertinentes. Pour accepter ou refuser tous les cookies non essentiels, cliquez sur « Accepter » ou « Refuser ». Pour effectuer des choix plus détaillés, cliquez sur « Personnaliser ».

Ruche JSON SerDe

Mode de mise au point
Ruche JSON SerDe - Amazon Athena

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

La ruche JSON SerDe est couramment utilisée pour traiter des JSON données telles que des événements. Ces événements sont représentés sous forme de chaînes de texte JSON codé d'une seule ligne séparées par une nouvelle ligne. The Hive n'JSON SerDe autorise pas la duplication de clés map ou de noms de struct clés.

Note

Le SerDe s'attend à ce que chaque JSON document se trouve sur une seule ligne de texte, aucun caractère de fin de ligne ne séparant les champs de l'enregistrement. Si le JSON texte est dans un joli format d'impression, vous pouvez recevoir un message d'erreur tel que HIVECURSOR_ _ ERROR : La ligne n'est pas un JSON objet valide ou HIVECURSOR_ _ ERROR JsonParseException end-of-input : Inattendu : marqueur de fermeture attendu OBJECT lorsque vous essayez d'interroger la table après l'avoir créée. Pour plus d'informations, consultez la section Fichiers de JSON données dans la SerDe documentation OpenX sur. GitHub

L'exemple d'DDLénoncé suivant utilise le Hive JSON SerDe pour créer un tableau basé sur des exemples de données publicitaires en ligne. Dans la LOCATION clause, remplacez myregion s3://amzn-s3-demo-bucket.elasticmapreduce/samples/hive-ads/tables/impressionsavec l'identifiant de la région dans laquelle vous exécutez Athena (par exemple,s3://us-west-2.elasticmapreduce/samples/hive-ads/tables/impressions).

CREATE EXTERNAL TABLE impressions ( requestbegintime string, adid string, impressionid string, referrer string, useragent string, usercookie string, ip string, number string, processid string, browsercookie string, requestendtime string, timers struct < modellookup:string, requesttime:string >, threadid string, hostname string, sessionid string ) PARTITIONED BY (dt string) ROW FORMAT SERDE 'org.apache.hive.hcatalog.data.JsonSerDe' LOCATION 's3://amzn-s3-demo-bucket.elasticmapreduce/samples/hive-ads/tables/impressions';

Spécifiez les formats d'horodatage avec le Hive JSON SerDe

Pour analyser les valeurs de l'horodatage à partir d'une chaîne, vous pouvez ajouter le sous-champ WITH SERDEPROPERTIES à la clause ROW FORMAT SERDE et l'utiliser pour spécifier le paramètre timestamp.formats. Dans le paramètre, spécifiez une liste séparée par des virgules d'un ou plusieurs modèles d'horodatage, comme dans l'exemple suivant :

... ROW FORMAT SERDE 'org.apache.hive.hcatalog.data.JsonSerDe' WITH SERDEPROPERTIES ("timestamp.formats"="yyyy-MM-dd'T'HH:mm:ss.SSS'Z',yyyy-MM-dd'T'HH:mm:ss") ...

Pour en savoir plus, consultez la rubrique Horodatage dans la documentation Apache Hive.

Charger la table pour effectuer des requêtes

Après avoir créé la table, exécutez MSCK REPAIR TABLE pour charger la table et la rendre interrogeable à partir d'Athena :

MSCK REPAIR TABLE impressions

CloudTrail Journaux de requêtes

Vous pouvez utiliser la Hive JSON SerDe pour interroger les CloudTrail journaux. Pour plus d'informations et des exemples d'instructions CREATE TABLE, voir AWS CloudTrail Journaux de requêtes.

Rubrique suivante :

OpenX JSON SerDe

Rubrique précédente :

JSON SerDe bibliothèques
ConfidentialitéConditions d'utilisation du sitePréférences de cookies
© 2025, Amazon Web Services, Inc. ou ses affiliés. Tous droits réservés.