Speichern Sie JSON in HDFS mit python

Ich habe ein Python-Skript, das derzeit auf eine API zugreift, die JSON zurückgibt. Es nimmt dann den JSON-String und speichert ihn als Datei auf dem lokalen Dateisystem, wo ich ihn dann manuell in HDFS verschiebe. Ich möchte dies ändern, damit mein Python-Skript direkt in HDFS gespeichert wird, anstatt zuerst auf das lokale Dateisystem zuzugreifen. Ich versuche derzeit, die Datei mit HDFS- und DFS-Befehlen zu speichern, aber ich glaube nicht, dass der Kopierbefehl die richtige Methode ist, da es sich nicht um eine Datei, sondern um eine JSON-Zeichenfolge handelt, wenn ich versuche, sie zu speichern.

Current Code

import urllib2
import json
import os

f = urllib2.urlopen('RESTful_API_URL.json')
json_string = json.loads(f.read().decode('utf-8'))
with open('\home\user\filename.json', 'w') as outfile:
    json.dump(json_string,outfile)

Neuer Cod

f = urllib2.urlopen('RESTful_API_URL.json')
json_string = json.loads(f.read().decode('utf-8'))
os.environ['json_string'] = json.dump(json_string)
os.system('hdfs dfs -cp -f $json_string hdfs/user/test')

Antworten auf die Frage(4)

Ihre Antwort auf die Frage