我用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
}
答案 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()