如何将MySQL数据从hdfs加载到pyspark

时间:2019-11-13 00:58:18

标签: mysql pyspark sqoop

我用sqoop将表从mysql导入到hdfs位置/ user / cloudera / table1,现在应该是什么命令才能将该表加载到pyspark代码中。我只是在编写如下的简单代码。我正在使用cloudera CDH 5.13。谢谢

public class MealActivity2 extends AppCompatActivity implements CustomAdapterListener {

    ...

    @Override
    protected void onCreate(Bundle savedInstanceState) {
       super.onCreate(savedInstanceState);
       setContentView(R.layout.activity_meal2);

       ...

       customAdapter = new CustomAdapter(this, this);

    }

    @Override
    public void itemClick() {
    // you can do .notifyDataSetChanged() here 
    }

1 个答案:

答案 0 :(得分:1)

默认情况下,Sqoop以文本格式导入数据,或者我们可以使用(--as-textfile)选项显式设置数据。

参考:Sqoop Documentation 阅读7.2.8。文件格式以便更好地理解。

要使用hdfs cat命令手动查看文件格式。

ls用于列出路径下的文件。 打开所选文件的猫。

您也可以在以下命令中使用hdfs代替hadoop。

hadoop fs -ls /user/cloudera/table1
hadoop fs -cat /user/cloudera/table1/samplefile.txt

注意:如果数据为可读格式,则为文本格式。

要从pyspark中的hdfs导入数据,可以使用textFile选项。

textFile = sc.textFile("hdfs://namenodehost/user/cloudera/table1/samplefile.txt")
textFile.first()

引用:reading-a-file-in-hdfs-from-pyspark