现在也没搞明白报表开发工程师是做什么的,明天上午就要面试了,先按照职位描述的内容进行复习。
了解hadoop
HDFS
HDFS采用master/slave架构。一个HDFS集群是由一个Namenode和一定数目的Datanodes组成。Namenode是一个中心服务器,负责管理文件系统的名字空间(namespace)以及客户端对文件的访问。集群中的Datanode一般是一个节点一个,负责管理它所在节点上的存储。HDFS暴露了文件系统的名字空间,用户能够以文件的形式在上面存储数据。从内部看,一个文件其实被分成一个或多个数据块,这些块存储在一组Datanode上。Namenode执行文件系统的名字空间操作,比如打开、关闭、重命名文件或目录。它也负责确定数据块到具体Datanode节点的映射。Datanode负责处理文件系统客户端的读写请求。在Namenode的统一调度下进行数据块的创建、删除和复制。

Namenode和Datanode被设计成可以在普通的商用机器上运行。这些机器一般运行着GNU/Linux操作系统(OS)。HDFS采用Java语言开发,因此任何支持Java的机器都可以部署Namenode或Datanode。由于采用了可移植性极强的Java语言,使得HDFS可以部署到多种类型的机器上。一个典型的部署场景是一台机器上只运行一个Namenode实例,而集群中的其它机器分别运行一个Datanode实例。这种架构并不排斥在一台机器上运行多个Datanode,只不过这样的情况比较少见。
集群中单一Namenode的结构大大简化了系统的架构。Namenode是所有HDFS元数据的仲裁者和管理者,这样,用户数据永远不会流过Namenode。
MapReduce
由一台机器作为Master,其他机器作为Slave,因为这些计算单元同时工作,所以也就出现了“集群”的概念。Master作为任务调度者,给多个Slave分配计算任务(Map),最后由Master汇集结果(Reduce),这其实也MapReduce思想所在。

了解hive
熟练掌握SQL
sql create PROCEDURE myStoredProcedure AS #或者 create PROCEDURE myStoredProcedure @{Parameter Name} {data type} AS
一个更加详细的例子(真心觉得一些简单的例子是快速上手的捷径,对简单的例子进行模仿即能快速实现突破)。
sql create PROCEDURE LatestTasks @Count int AS SET ROWCOUNT @Count SELECT TaskName AS LastestTasks, DateCreated FROM Task ORDER BY DateCreated DESC
上面已经建立好存储过程,如何执行它呢?可以执行或者调用EXEC,如果存储过程要求提供参数,将参数放在程序名的后面。
sql EXECUTE LatestTasks EXEC LatestTasks EXEC LatestTasks @Count = 5
修改存储过程的例子。 如果需要修改现有的存储过程,只需要换掉CREATE,使用ALTER。
sql ALTER PROCEDURE LatestTasks @Count int AS SET ROWCOUNT @Count SELECT TaskName AS "Lastest Tasks", Description,DateCreated FROM Tasks ORDER BY DateCreated DESC
SQL Server 系统存储过程
SQL Server包含了大量的系统存储过程,以帮助数据库管理任务。通过GUI执行的任务可以通过系统存储过程来完成。
- 配置安全账户
- 建立链接服务器
- 创建一个数据库维护计划
- 建立全文检索目录
- 添加远程登录
- 配置复制
- 配置调度作业等
SQL server命名约定
命名规则要保持一致,这样才会在需要使用存储过程时显得更加容易使用。
SQL 性能调优
个人觉得可以了,再找一本数据库原理的书看一看,然后睡觉,准备明天的面试。会更新后续的,因为没有在网上找到数据报表开发的相关职位描述,面试过后会总结一下经验供大家参考。
更新:面试已经结束,没有通过。自己业务能力不行,和岗位不匹配,因为没有接触hive、hadoop等大数据管理技术,SQL语言掌握的也不熟练。但是YY的实习生面试直接是部门主管面,HR简单的了解一下实习时间。所以整体还是很高效的。感谢我的朋友们,一直鼓励我边学边找实习,能够看到很多不同的事物。继续努力!!!
发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/178840.html原文链接:https://javaforall.net
