项目中采用了这两种方案。首先采用的Spark-Core,从云端读取Avro类型的数据。存入HBase数据库。但是由于业务逻辑关系,HBase的region不好分。此处贴一个博客https://www.cnblogs.com/duanxz/p/3154487.html提供参考
另一个方案是SparkSQL,是现在的技术趋势。但是效果反而差一倍。
经过分析,得出结论,Core适合读取结构复杂,多重map嵌套的数据。比如Avro这种数据复杂的文件类型。
SparkSQL适合读取结构简单的数据,比如parquet。
此外,Avro和parquet本身也有性能差别。