1. Hadoop会有哪些重大故障,如何应对?
1)namenode单点故障:通过zookeeper搭建HA高可用,可自动切换namenode。
2)ResourceManager单点故障:可通过配置YARN的HA,并在配置的namenode上手动启动ResourceManager作为Slave,在Master 故障后,Slave 会自动切换为Master。
3)reduce阶段内存溢出:是由于单个reduce任务处理的数据量过多,通过增大reducetasks数目、优化partition 规则使数据分布均匀进行解决。
4)datanode内存溢出:是由于创建的线程过多,通过调整linux的maxuserprocesses参数,增大可用线程数进行解决。
5)集群间时间不同步导致运行异常:通过配置内网时间同步服务器进行解决。
数据如何导入HDFS中,又如何导入数据库中?
数据处理之前的导入:通过HDFS shell命令或者Java API程序导入到HDFS中,如果需要导入Hive中,则在创建Hive数据表的时候load HDFS上的目标文件路径。
数据处理完成之后的导出:假设是hive处理完成之后的数据,可通过sqoop导出到本地的MySQL数据库中。
列举你了解的海量数据的处理方法以及使用范围
- mapreduce: 大数据常用的分布式离线计算框架,核心思想为分而治之。
- 倒排索引:一种索引方法,用来存储在全文搜索下某个单词在一个文档或者一组文档中的存储位置的映射