datax⾯试题_2020年最新阿⾥⾯试题整理附答案
关于epoll和select的区别,哪些说法是正确的?
【A】epoll和select都是I/O多路复⽤的技术,都可以实现同时监听多个I/O事件的状态。
【B】epoll相⽐select效率更⾼,主要是基于其操作系统⽀持的I/O事件通知机制,⽽select是基于轮询机制。
【C】epoll⽀持⽔平触发和边沿触发两种模式。
【D】select能并⾏⽀持I/O⽐较⼩,且⽆法修改。
答案:ABC
从innodb的索引结构分析,为什么索引的key长度不能太长? key 太长会导致⼀个页当中能够存放的 key 的数⽬变少,间接导致索引树的页数⽬变多,索引层次增加,从⽽影响整体查询变更的效率。
MySQL的数据如何恢复到任意时间点?
恢复到任意时间点以定时的做全量备份,以及备份增量的 binlog ⽇志为前提。恢复到任意时间点⾸先将
全量备份恢复之后,再此基础上回放增加的 binlog 直⾄指定的时间点。
输⼊ ping IP 后敲回车,发包前会发⽣什么?
⾸先根据⽬标IP和路由表决定⾛哪个⽹卡,再根据⽹卡的⼦⽹掩码地址判断⽬的IP是否在⼦⽹内。如果不在则会通过ARP缓存查询IP的⽹卡地址,不存在的话会通过⼴播询问⽬的IP的mac地址,得到后就开始发包了,同时mac地址也会被ARP缓存起来。
请解释下为什么⿅晗发布恋情的时候,微博系统会崩溃,如何解决?
《 参考思路 》 A. 获取微博通过 pull ⽅式还是 push ⽅式 B. 发布微博的频率要远⼩于阅读微博 C. 流量明星的发微博,和普通博主要区分对待,⽐如在 sharding 的时候,也要考虑这个因素
mysql查询面试题及答案现有⼀批邮件需要发送给订阅顾客,且有⼀个集(集的节点数不定,会动态扩容缩容)来负责具体的邮件发送任务,如何让系统尽快地完成发送?请详述技术⽅案! A. 借助消息中间件,通过发布者订阅者模式来进⾏任务分配 B. master-slave 部署,由 master 来分配任务 C.不借助任何中间件,且所有节点均等。通过数据库的 updatereturning,从⽽实现节点之间任务的互斥
有⼀批⽓象观测站,现需要获取这些站点的观测数据,并存储到 Hive 中。但是⽓象局只提供了 api 查询,每次只能查询单个观测点。那么如果能够⽅便快速地获取到所有的观测点的数据? A. 通过 shell
或 python 等调⽤ api,结果先暂存本地,最后将本地⽂件上传到 Hive 中。 B. 通过 datax 的 httpReader 和 hdfsWriter 插件,从⽽获取所需的数据。 C. ⽐较理想的回答,是在计算引擎的 UDF 中调⽤查询api,执⾏UDF 的查询结果存储到对应的表中。⼀⽅⾯,不需要同步任务的导出导⼊;另⼀⽅⾯,计算引擎的分布式框架天⽣提供了分布式、容错、并发等特性。
给定⼀个链表,删除链表的倒数第 N 个节点,并且返回链表的头结点。给定⼀个链表: 1->2->3->4->5, 和 n = 2. 当删除了倒数第⼆个节点后,链表变为 1->2->3->5. 说明:给定的 n 保证是有效的。要求:只允许对链表进⾏⼀次遍历。
参考答案
我们可以使⽤两个指针⽽不是⼀个指针。第⼀个指针从列表的开头向前移动 n+1n+1 步,⽽第⼆个指针将从列表的开头出发。现在,这两个指针被 nn 个结点分开。我们通过同时移动两个指针向前来保持这个恒定的间隔,直到第⼀个指针到达最后⼀个结点。此时第⼆个指针将指向从最后⼀个结点数起的第 nn 个结点。我们重新链接第⼆个指针所引⽤的结点的 next 指针指向该结点的下下个结点。
代码⽰例 :
public ListNode removeNthFromEnd(ListNode head, int n)
{
ListNode dummy = new ListNode(0);
< = head;
ListNode first = dummy;
ListNode second = dummy;
// Advances first pointer so that the gap between first
and second is n nodes apart
for (int i = 1; i <= n + 1; i++) {
first = ;
}
// Move first to the end, maintaining the gap
powerbuilder还有人用吗文档软件
while (first != null) {
first = ;
second = ;
}
< = ;
;
}
复杂度分析:
时间复杂度:O(L),该算法对含有 L 个结点的列表进⾏了⼀次遍历。因此时间复杂度为 O(L)。空间复杂度:O(1),我们只⽤了常量级的额外空间。
假如给你⼀个新产品,你将从哪些⽅⾯来保障它的质量?可以从代码开发、测试保障、线上质量三个⽅⾯来保障。在代码开发阶段,有单元测试、代码Review、静态代码扫描等;测试保障阶段,有功能
测试、性能测试、⾼可⽤测试、稳定性测试、兼容性测试等;在线上质量⽅⾯,有灰度发布、紧急回滚、故障演练、线上监控和巡检等。
请评估⼀下程序的执⾏结果?
public class SynchronousQueueQuiz {
public static void main(String[] args) throws Exception {
BlockingQueue queue = new
SynchronousQueue<>();
System. out .print(queue.offer(1) + " ");
System. out .print(queue.offer(2) + " ");
韩漫webtoon中文版
System. out .print(queue.offer(3) + " ");
System. out .print(queue.take() + " ");
System. out .println(queue.size());
}
}
A. true true true 1 3sql2000只能装在winxp
B. true true true (阻塞)
C. false false false null 0
D. false false false (阻塞)
参考答案 D
总结
以上所述是⼩编给⼤家介绍的2020年最新阿⾥⾯试题整理附答案,希望对⼤家有所帮助,如果⼤家有任何疑问请给我留⾔,⼩编会及时回复⼤家的。在此也⾮常感谢⼤家对脚本之家⽹站的⽀持!如果你觉得本⽂对你有帮助,欢迎转载,烦请注明出处,谢谢!

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。