如何使用 cpython 从 DataTap 读取数据?
How can I read data from DataTap using cpython?
我想使用 cpython 从 DataTap 读取数据。
在 spark 中,我可以做类似的事情:
df = spark.read.csv("dtap://MaprClus2/tmp/airline-safety.csv")
如果我使用的是 cpython,例如当我没有 pyspark Jupyter 内核时,我该如何做?
一个选项是使用子进程调用 hadoop
cli 命令:
from subprocess import check_output
import pandas as pd
from io import BytesIO
def hdfs_read(fpath):
out = check_output(['hadoop', 'fs', '-cat', fpath])
return BytesIO(out)
data = hdfs_read("dtap://MaprClus2/tmp/airline-safety.csv")
# row 1 contains hadoop cli warning so remove it
pd.read_csv(data, sep=",", skiprows=1)
我想使用 cpython 从 DataTap 读取数据。
在 spark 中,我可以做类似的事情:
df = spark.read.csv("dtap://MaprClus2/tmp/airline-safety.csv")
如果我使用的是 cpython,例如当我没有 pyspark Jupyter 内核时,我该如何做?
一个选项是使用子进程调用 hadoop
cli 命令:
from subprocess import check_output
import pandas as pd
from io import BytesIO
def hdfs_read(fpath):
out = check_output(['hadoop', 'fs', '-cat', fpath])
return BytesIO(out)
data = hdfs_read("dtap://MaprClus2/tmp/airline-safety.csv")
# row 1 contains hadoop cli warning so remove it
pd.read_csv(data, sep=",", skiprows=1)