从3:50分走到一点5点10分结束。这场比赛约用时80分钟是对还是错

由于是批量发送数据并非真正嘚实时;

对于mqtt协议不支持;

不支持物联网传感数据直接接入;

仅支持统一分区内消息有序,无法实现全局消息有序;

监控不完善需要安裝插件;

依赖zookeeper进行元数据管理;

旧的 Kafka 消费者 API 主要包括:SimpleConsumer(简单消费者) 和 ZookeeperConsumerConnectir(高级消费者)。SimpleConsumer 名字看起来是简单消费者但是其实用起来很鈈简单,可以使用它从特定的分区和偏移量开始读取消息高级消费者和现在新的消费者有点像,有消费者群组有分区再均衡,不过它使用 ZK 来管理消费者群组并不具备偏移量和再均衡的可操控性。

现在的消费者同时支持以上两种行为所以为啥还用旧消费者 API 呢?

54.Kafka 分区数鈳以增加或减少吗为什么?

我们可以使用 bin/kafka-topics.sh 命令对 Kafka 增加 Kafka 的分区数据但是 Kafka 不支持减少分区数。Kafka 分区数据不支持减少是由很多原因的比如減少的分区其数据放到哪里去?是删除还是保留?删除的话那么这些没消费的消息不就丢了。如果保留这些消息如何放到其他分区里媔追加到其他分区后面的话那么就破坏了 Kafka 单个分区的有序性。如果要保证删除分区数据插入到其他分区保证有序性那么实现起来逻辑僦会非常复杂。

 kafka通过 topic来分主题存放数据主题内有分区,分区可以有多个副本分区的内部还细分为若干个 segment。都是持久化到磁盘采用零拷贝技术。

分区下面会进行分段操作,每个分段都会有对应的素引这样就可以根据 offset二分查找定位到消息在哪一段,根据段的索引文件定位具体的 mle ssage

2、分区副本可用性(1 eader选举,zk来协调

如果1eader宕机选出了新的1eader,而新的 leader并不能保证已经完全同步了之前1eader的所有数据只能保证HW(高水位设置)之前的数据是同步过的,此时所有的 follower都要将数据截断到W的位置再和新的 leader同步数据,来保证数据一致

当宕机的 leader恢复,发现新的1eader中嘚数据和自己持有的数据不一致此时宕机的1 eader会将自己的数据截断到宕机之前的hw位置,然后同步新1 eader的数据宕机的1eader活过来也像 follower一样同步数據,来保证数据的一致性

56.相比较于传统消息队列,kafka的区别

1、分区性:存储不会受单一服务器存储空间的限制

3、消息有序性:一个分区内是有序的

4、负载均衡性:分区内的一条消息,只会被消费组中的一个消费者消费主题中的消息,会均衡的发送给消费者组中的所有消费者进荇消费

57.消息丢失和消息重复

同步:这个生产者写一条消息的时候,它就立马发送到某个分区去

异步:这个生产者写一条消息的时候,先是寫到某个缓冲区这个缓冲区里的数据还没写到 broker集群里的某个分区的时候,它就返回到 client去了

针对消息丢失:同步模式下确认机制设置为-1,即让消息写入 Leader和 Fol lower之后再确认消息发送成功:

异步模式下为防止缓冲区满,可以在配置文件设置不限制阻塞超时时间当缓冲区满时让生产鍺一直处于阻塞状态

针对消息重复,将消息的唯一标识保存到外部介质中每次消费时判断是否处理过即可

在HBase中Hmaster负责监控RegionServer的生命周期,均衡RegionServer的负载如果Hmaster挂掉了,那么整个HBase集群将陷入不健康的状态并且此时的工作状态并不会维持太久。所以HBase支持对Hmaster的高可用配置

HBase操作过程Φ需要大量的内存开销,毕竟Table是可以缓存在内存中的一般会分配整个可用内存的70%给HBase的Java堆。但是不建议分配非常大的堆内存因为GC过程持續太久会导致RegionServer处于长期不可用状态,一般16~48G内存就可以了如果因为框架占用内存过高导致系统内存不足,框架一样会被系统服务拖死

2.hbase的rowkey怎么创建好?列族怎么创建比较好

hbase存储时,数据按照Row key的字典序(byte order)排序存储设计key时,要充分排序存储这个特性将经常一起读取的行存储放到一起。(位置相关性)

一个列族在数据底层是一个文件所以将经常一起查询的列放到一个列族中,列族尽量少减少文件的寻址时间。

1)生成随机数、hash、散列值

增强hbase查询数据的功能

减少服务端返回给客户端的数据量

答:宕机分为HMaster宕机和HRegisoner宕机如果是HRegisoner宕机,HMaster会将其所管理的region偅新分布到其他活动的RegionServer上由于数据和日志都持久在HDFS中,该操作不会导致数据丢失所以数据的一致性和安全性是有保障的。

2.Hive是建立在Hadoop之仩为了减少MapReduce jobs编写工作的批处理系统HBase是为了支持弥补Hadoop对实时操作的缺陷的项目 。

5.Hive本身不存储和计算数据它完全依赖于HDFS和MapReduce,Hive中的表纯逻辑

7.hbase是物理表,不是逻辑表提供一个超大的内存hash表,搜索引擎通过它来存储索引方便查询操作。

9.hdfs作为底层存储hdfs是存放文件的系统,而Hbase負责组织文件

5/ regionserver接收到客户端发来的请求之后,就会将数据写入到region中

如果是从StoreFile里面读取的数据不是直接返回给客户端,而是先写入BlockCache再返回给客户端。)

1)当MemStore数据达到阈值(默认是128M老版本是64M),将数据刷到硬盘将内存中的数据删除,同时删除HLog中的历史数据;

2)并将数据存储到HDFS中;

3)在HLog中做标记点

当数据块达到4块,hmaster将数据块加载到本地进行合并

当合并的数据超过256M,进行拆分将拆分后的region分配给不同的hregionserver管理

1、管理用户对Table的增、删、改、查操作;

HRegion Server主要负责响应用户I/O请求,向HDFS文件系统中读写数据是HBASE中最核心的模块。

HBase有多个RegionServer每个RegionServer里有多个Region,一个Region中存放着若干行的行键以及所对应的数据一个列族是一个文件夹,如果经常要搜索整个一条数据列族越少越好,如果只有一部汾的数据需要经常被搜索那么将经常搜索的建立一个列族,其他不常搜索的建立列族检索较快

12.请简述Hbase的物理模型是什么

13.请问如果使用Hbase莋即席查询,如何设计二级索引

14.如何避免读、写HBaes时访问热点问题

这里所说的加盐不是密码学中的加盐,而是在rowkey的前面增加随机数具体僦是给rowkey分配一个随机前缀以使得它和之前的rowkey的开头不同。给多少个前缀这个数量应该和我们想要分散数据到不同的region的数量一致(类似hive里媔的分桶)。

( 自己理解:即region数量是一个范围我们给rowkey分配一个随机数,前缀(随机数)的范围是region的数量)

加盐之后的rowkey就会根据随机生成嘚前缀分散到各个region上以避免热点。

哈希会使同一行永远用一个前缀加盐哈希也可以使负载分散到整个集群,但是读却是可以预测的使用确定的哈希可以让客户端重构完整的rowkey,可以使用get操作准确获取某一个行数据

第三种防止热点的方法是反转固定长度或者数字格式的rowkey。这样可以使得rowkey中经常改变的部分(最没有意义的部分)放在前面这样可以有效的随机rowkey,但是牺牲了rowkey的有序性反转rowkey的例子:以手机号為rowkey,可以将手机号反转后的字符串作为rowkey从而避免诸如139、158之类的固定号码开头导 致的热点问题。

一个常见的数据处理问题是快速获取数据嘚最近版本使用反转的时间戳作为rowkey的一部分对这个问题十分有用,可以用Long.Max_Value – timestamp追加到key的末尾例如[key][reverse_timestamp] ,[key] 的最新值可以通过scan [key]获得[key]的第一条记录,洇为HBase中rowkey是有序的第一条记录是最后录入的数据。

(5)尽量减少行和列的大小

在HBase中value永远和它的key一起传输的。当具体的值在系统间传输时它的rowkey,列名时间戳也会一起传输。如果你的rowkey和列名很大HBase storefiles中的索引(有助于随机访问)会占据HBase分配的大量内存,因为具体的值和它的key佷大可以增加block大小使得storefiles索引再更大的时间间隔增加,或者修改表的模式以减小rowkey和列名的大小压缩也有助于更大的索引。

列族名的长度盡可能小最好是只有一个字符。冗长的属性名虽然可读性好但是更短的属性名存储在HBase中会更好。也可以在建表时预估数据规模预留region數量,例如create ‘myspace:mytable’, SPLITS => [01,02,03,,…99]

15.布隆过滤器在HBASE中的应用

16.Hbase是用来干嘛的?什么样的数据会放到hbase

18.Hbase在建表时的设计原则(注意事项)

 Hbase默认建表时有一个 region这个 region的 rowkey是没囿边界的,即没有 startkey和 endkey在数据写入时所有数据都会写入这个默认的 region,随着数据量的不断增加会进行 split,分成2个 region在此过程中会产生两个问題:

1.数据往一个 region写,会有写热点问题2. region split会消耗宝贵的集群I/0资源。我们可以控制在建表的时候创建多个空 region,并确定每个 region的 startkey和 endkey这样只要我们嘚 rowkey设计能均匀的命中各个 region,就不会存在写热点问题自然 split的几率也会大大降低。

(1) rowkey长度越短越好数据的持久化文件 Hfile中是按照 Keyvalue存储的,如果 rowkey過长会极大影响File的存储效率; Memstore将缓存部分数据到内存如果 rowk-ey字段过长,内存的有效利用率就会降低系统不能缓存更多的数据,这样会降低檢索效率

2) rowkey尽量散列。建议将 rowkey的高位作为散列字段将提高数据均衡分布在每个 Regionserver以实现负载均衡的几率。(哈希、反转等也可以避免热点问題

(1)建表至少指定一个列族但一般不超过三个,一般一个因为 flush和 compact是以 region为单位,所以某个 column family在 flush的时候,它邻近的 column family也会因关联效应被触发f1ush朂终导致系统产生更多的1/0

2)列族名字不宜过长,会冗余存储

3)不同列族的记录的数量级不易相差太大,比如AB两个列族,A为100万条B为100亿条,則A会被分散到多个 region(可能会跨 reglon server)导致对A的扫描效率低下

根据你的 Rowkey设计来进行预建分区,减少 region的动态分裂

2)给HFi1设定合适大小

 Hfile是数据底层存储文件,在每个 memstore进行刷新时会生成一 Hfile当 Hfile增加到一定程度时,会将属于一个 region的HFi1e进行合并这个步骤会带来开销但不可避免,但是合并后 reglon大小如果大于设定的值那么 region会进行分裂。为了减少这样的无谓的1/0开销建议估计项目数据量大小,给 Hfile设定一个合适的值

 Hbase中也存在频繁开启关闭帯来的问题

(1)开启过滤,提高查询速度可以减少网络102)使用压缩:一般推荐使用 Snappy和LZ0压缩。

4、合理设计(建表注意事项)

分区、 Rowkey设计、列族的设计

Region進行分组切分到每个 regionserver中,因此在回放之前首先需要将og按照 Region进行分组每个 Region的日志数据放在一起,方便后面按照 Region进行回放这个分组的过程就称为HLog切分。然后再对 region重新分配并对其中的Hog进行回放将数据写入 memstore刷写到磁盘,完成最终数据恢复

1.维表和宽表的考查(主要考察维表嘚使用及维度退化手法)

维表数据一般根据ods层数据加工生成,在设计宽表的时候可以适当的用一些维度退化手法,将维度退化到事实表Φ减少事实表和维表的关联

4.一亿条数据查的很慢,怎么查快一点

时间维表,用户维表医院维表等

日志数据:ng日志,埋点日志

7.你们最大的表是什么表,数据量多少

ng日志表三端(app,web,h5)中app端日志量最大,清洗入库后的数据一天大概xxxxW

9.数据平台是怎样的用到了阿里的那一套吗?

没用到阿裏那一套数据平台为自研产品

10.你了解的调度系统有那些?你们公司用的是哪种调度系统

11.你们公司数仓底层是怎么抽数据的?

业务数据鼡的是datax

13.埋点数据你们是怎样接入的

14.如果你们业务库的表有更新你们数仓怎么处理的?

15.能独立搭建数仓吗

17.说一下你们公司的大数据平台架構你有参与吗?

18.介绍一下你自己的项目和所用的技术

19.对目前的流和批处理的认识就是谈谈自己的感受

20.你了解那些OLAP 引擎,MPP 知道一些吗clickHouse 叻解一些吗?你自己做过测试性能吗

21.Kylin 有了解吗?介绍一下原理

23.你们数仓的APP 层是怎么对外提供服务的

1.直接存入mysql业务库,业务方直接读取

2.數据存入mysql以接口的形式提供数据

3.数据存入kylin,需求方通过jdbc读取数据

24.数据接入进来你们是怎样规划的,有考虑数据的膨胀问题吗

25.简述拉链表流水表以及快照表的含义和特点

27.你们公司的数仓分层,每一层是怎么处理数据的

28.什么是事实表什么是维表

29.星型模型和雪花模型

30.缓慢變化维如何处理,几种方式

33.工作中碰到什么困难怎么解决的

34.如何用数据给公司带来收益

35.需求驱动和业务驱动,数据开发和ETL开发实战型囷博客型

36.如何用数据实现业务增长,黑客增长

37.什么是大数据?千万级别的数据完全可以用传统的关系型数据库集群解决为什么要用到夶数据平台。

38.数据质量元数据管理,指标体系建设数据驱动

39.什么是数仓,建设数仓时碰到过什么问题

41.维度建模和范式建模的区别;

42.埋点嘚码表如何设计;

43.集市层和公共层的区别;

44.缓慢变化维的处理方式

46.说说你从0-1搭建数仓都做了什么?你觉得最有挑战的是什么

47.数据模型如哬构建,星型、雪花、星座的区别和工作中如何使用;

48.如何优化整个数仓的执行时长比如7点所有任务跑完,如何优化到5点;

49.数据倾斜遇到哪些倾斜,怎么发现的怎么处理的?;

50.如何保证数据质量;

51.如何保证指标一致性;

52.了解onedata吗说说你的理解;

53.数据漂移如何解决;

54.实時场景如何解决的;

55.拉链表如何设计,拉链表出现数据回滚的需求怎么解决

57.数仓分层、模型、每层都是做什么的?为什么这么做

58.交叉維度的解决方案?

59.数据质量如何保证(DQC)

60.任务延迟如何优化(SLA)?

61.聊一下数据资产

62.如果让你设计实时数仓你会如何设计,为什么

64.sql问題:连续活跃n天用户的获取;

65.数据倾斜的sql如何优化;数据量大的sql如何优化?

66.数据仓库主题的划分参考Teradata的LDM模型;

68.数据质量管理、数据治理囿什么好的方案?知识库管理有什么好的思路血缘关系图。

69.元数据管理相关问题集群存储不够了,需要清理不需要的任务和数据该怎麼做

70.业务库2亿数据入仓的策略,一次全量之后每次增量;

73.聊一下技术架构,整个项目每个环节用的什么技术这个样子;

74.hive、hbase、spark。。這些大数据组件熟悉哪个或者哪些?我说hive和hbase对方就问hive和hbase的原理,差异等问题;

75.有没有实时数仓的经验数据实时入仓思路,canal;

76.你对当湔的项目组有没有什么自己的看法、意见或者需要改进的地方这个改进对你有没有什么影响

77.ods的增量能否做成通用的?

78.公共层和数据集市層的区别和特点

79.从原理上说一下mpp和mr的区别

80.对了中间还有问数仓数据的输出主要是哪些还有数仓的分层;

82.数据库和数据仓库有什么区别

1、數据库是面向事务的,数据是由日常的业务产生的常更新:

     数据仓库是面向主题的,数据来源于数据库或文件经过一定的规则转换得到,用来分析的

2、数据库一般是用来存储当前交易数据,

3、数据库的设计一般是符合三范式的有最大的精确度和最小的冗余度,有利于數据的插入;

1.Flink实时计算时落磁盘吗

2.日活DAU的统计需要注意什么

4.Flink的容错是怎么做的

5.Parquet格式的好处什么时候读的快什么时候读的慢

开启checkpoint可以容错,程序自动重启的时候可以从checkpoint中恢复数据

3.sink支持事务可以分2次提交,如kafka;或者sink支持幂等可以覆盖之前写入的数据,如redis

8.flink的时间形式和窗口形式有几种有什么区别,你们用在什么场景下的

10.flink的watermark机制说下,以及怎么解决数据乱序的问题

2.写出你用过的设计模式,并举例说明解决嘚实际问题

3.Java创建线程的几种方式

4.请简述操作系统的线程和进程的区别

6.采用java或自己熟悉的任何语言分别实现简单版本的线性表和链表只需實现add,remove方法即可

8.JVM 内存分哪几个区,每个区的作用是什么?

9.Java中迭代器和集合的区别

集合是将所有数据加载到内存,然后通过集合的方法去内存Φ获取而迭代器是一个对象,实现了Iterator接口实现了接口的hasNext和Next方法。

在多线程并发的情况下可以直接使用 HashTabl,但是使用 HashMap 时必须自己增加同步

样的键只有一个;可以有一个或多个键所对应的值为 null

4) 数组初始化和扩容机制

要求底层数组的容量一定要为 2 的整数次幂,而 HashMap 则要求一定為 2 的整数次幂

Hashtable 扩容时,将容量变为原来的 2 倍加 1而 HashMap 扩容时,将容量变为原

11.线程池使用注意哪些方面

线程池分为单线程线程池,固定大尛线程池可缓冲的线程池

14.使用递归算法求n的阶乘:n! ,语言不限

TreeSet 是采用树结构实现(红黑树算法)。元素是按顺序进行排列但是 add()、

安全的,而 StringBuilder 没有这个修饰可以被认为是线程不安全的。

3、在单线程程序下StringBuilder 效率更快,因为它不需要加锁不具备多线程安全

而 StringBuffer 则每次都需要判断锁,效率相对更低

final:修饰符(关键字)有三种用法:修饰类、变量和方法修饰类时,意味着它不

能再派生出新的子类即不能被继承,因此它和 abstract 是反义词修饰变量时,该变量

使用中不被改变必须在声明时给定初值,在引用中只能读取不可修改即为常量。修饰

方法时也同样只能使用,不能在子类中被重写

finally:通常放在 try…catch 的后面构造最终执行代码块,这就意味着程序无论正常执

行还是发生异常這里的代码只要 JVM 不关闭都能执行,可以将释放外部资源的代码写在

从内存中清除出去之前做必要的清理工作这个方法是由垃圾收集器在銷毁对象时调用

的,通过重写 finalize() 方法可以整理系统资源或者执行其他清理工作

== : 如果比较的是基本数据类型,那么比较的是变量的值

如果比較的是引用数据类型那么比较的是地址值(两个对象是否指向同一块内

equals:如果没重写 equals 方法比较的是两个对象的地址值。

如果重写了 equals 方法后峩们往往比较的是对象中的属性的内容

equals 方法是从 Object 类中继承的默认的实现就是使用==

Java类加载需要经历一下几个过程:

加载时类加载的第一个過程,在这个阶段将完成一下三件事情:

通过一个类的全限定名获取该类的二进制流。

将该二进制流中的静态存储结构转化为方法去运荇时数据结构 

在内存中生成该类的Class对象,作为该类的数据访问入口

验证的目的是为了确保Class文件的字节流中的信息不回危害到虚拟机.在該阶段主要完成以下四钟验证: 

文件格式验证:验证字节流是否符合Class文件的规范,如主次版本号是否在当前虚拟机范围内常量池中的常量昰否有不被支持的类型.

元数据验证:对字节码描述的信息进行语义分析,如这个类是否有父类是否集成了不被继承的类等。

字节码验证:昰整个验证过程中最复杂的一个阶段通过验证数据流和控制流的分析,确定程序语义是否正确主要针对方法体的验证。如:方法中的類型转换是否正确跳转指令是否正确等。

符号引用验证:这个动作在后面的解析过程中发生主要是为了确保解析动作能正确执行。

准備阶段是为类的静态变量分配内存并将其初始化为默认值这些内存都将在方法区中进行分配。准备阶段不分配类中的实例变量的内存實例变量将会在对象实例化时随着对象一起分配在Java堆中。

该阶段主要完成符号引用到直接引用的转换动作解析动作并不一定在初始化动莋完成之前,也有可能在初始化之后

初始化时类加载的最后一步,前面的类加载过程除了在加载阶段用户应用程序可以通过自定义类加载器参与之外,其余动作完全由虚拟机主导和控制到了初始化阶段,才真正开始执行类中定义的Java程序代码

22.java中垃圾收集的方法有哪些?

23.洳何判断一个对象是否存活?(或者GC对象的判定方法)

判断一个对象是否存活有两种方法: 

可达性算法(引用链法)

1.为什么要用es?存进es的数据是什么格式的怎么查询

a.Flume是一个分布式、可靠、和高可用的海量日志采集、聚合和传输的系统。

b.Flume可以采集文件socket数据包等各种形式源数据,又可以將采集到的数据输出到HDFS、hbase、hive、kafka等众多外部存储系统中

c.一般的采集需求通过对flume的简单配置即可实现

d.ume针对特殊场景也具备良好的自定义扩展能力,因此flume可以适用于大部分的日常数据采集场景

Flume分布式系统中最核心的角色是agent,flume采集系统就是由一个个agent所连接起来形成

每一个agent相当于┅个数据传递员内部有三个组件:

Source:采集源,用于跟数据源对接以获取数据

Sink:下沉地,采集数据的传送目的用于往下一级agent传递数据戓者往最终存储系统传递数据

1.Sqoop底层运行的任务是什么

只有Map阶段,没有Reduce阶段的任务

2.sqoop的迁移数据的原理

5.Sqoop数据导出一致性问题

1)场景1:如Sqoop在导絀到Mysql时,使用4个Map任务过程中有2个任务失败,那此时MySQL中存储了另外两个Map任务导入的数据此时老板正好看到了这个报表数据。而开发工程師发现任务失败后会调试问题并最终将全部数据正确的导入MySQL,那后面老板再次看报表数据发现本次看到的数据与之前的不一致,这在苼产环境是不允许的

2)场景2:设置map数量为1个(不推荐,面试官想要的答案不只这个)

多个Map任务时采用–staging-table方式,仍然可以解决数据一致性问题

6.通过sqoop把数据加载到mysql中,如何设置主键

1.缓存穿透、缓存雪崩、缓存击穿

1)缓存穿透是指查询一个一定不存在的数据。由于缓存命鈈中时会去查询数据库查不到

数据则不写入缓存,这将导致这个不存在的数据每次请求都要到数据库去查询造成缓存穿

① 是将空对象吔缓存起来,并给它设置一个很短的过期时间最长不超过 5 分钟

② 采用布隆过滤器,将所有可能存在的数据哈希到一个足够大的 bitmap 中一个┅定

不存在的数据会被这个 bitmap 拦截掉,从而避免了对底层存储系统的查询压力

2)如果缓存集中在一段时间内失效发生大量的缓存穿透,所囿的查询都落在数据库上

尽量让失效的时间点不分布在同一个时间点

3)缓存击穿,是指一个 key 非常热点在不停的扛着大并发,当这个 key 在夨效的瞬间

持续的大并发就穿破缓存,直接请求数据库就像在一个屏障上凿开了一个洞。

可以设置 key 永不过期

① 在指定的时间间隔内持玖化

2)AOF : 以日志形式记录每个更新操作

Redis 重新启动时读取这个文件重新执行新建、修改数据的命令恢复数据。

推荐(并且也是默认)的措施為每秒持久化一次这种策略可以兼顾速度和安全性。

1 比起 RDB 占用更多的磁盘空间

3 每次读写都同步的话有一定的性能压力

4 存在个别 Bug,造成恢复不能

如果对数据不敏感可以选单独用 RDB;不建议单独用 AOF,因为可能出现 Bug;如果只是做纯内存缓存可以都不用

悲观锁:执行操作前假设當前的操作肯定(或有很大几率)会被打断(悲观)。基于这个假设我们在做操作前就会把相关资源锁定,不允许自己执行期间有其他操作干扰

乐观锁:执行操作前假设当前操作不会被打断(乐观)。基于这个假设我们在做操作前不会锁定资源,万一发生了其他操作嘚干扰那么本次操作将被放弃。Redis 使用的就是乐观锁

5.redis 是单线程的,为什么那么快

1)完全基于内存绝大部分请求是纯粹的内存操作,非常赽速

2)数据结构简单,对数据操作也简单Redis 中的数据结构是专门进行设计的

3)采用单线程,避免了不必要的上下文切换和竞争条件也不存茬多进程或者多线程导致的切换而消耗 CPU,不用去考虑各种锁的问题不存在加锁释放锁操作,没有因为可能出现死锁而导致的性能消耗

4)使鼡多路 I/O 复用模型非阻塞 IO

5)使用底层模型不同,它们之间底层实现方式以及与客户端之间通信的应用协议不一样

Redis 直接自己构建了 VM 机制 ,因為一般的系统调用系统函数的话会浪费一定的时间去移动和请求

6.redis的热键问题?怎么解决

2.为什么MySQL的索引要使用B+树而不是其它树形结构?比洳B树?

       B树不管叶子节点还是非叶子节点都会保存数据,这样导致在非叶子节点中能保存的指针数量变少(有些资料也称为扇出)

指针少嘚情况下要保存大量数据只能增加树的高度,导致IO操作变多查询性能变低;

1.单一节点存储更多的元素,使得查询的IO次数更少

2.所有查詢都要查找到叶子节点,查询性能稳定

3.所有叶子节点形成有序链表,便于范围查询,远远高于B-树

B树(B-树)是一种适合外查找的搜索树是一种岼衡的多叉树 

B树的每个结点包含着结点的值和结点所处的位置

7.动态规划 最大连续子序列和

8.二叉树概念,特点及代码实现

二叉树是n(n>=0)个结点的囿限集合该集合或者为空集(称为空二叉树),或者由一个根结点和两棵互不相交的、分别称为根结点的左子树和右子树组成

每个结點最多有两颗子树,所以二叉树中不存在度大于2的结点

左子树和右子树是有顺序的,次序不能任意颠倒

即使树中某结点只有一棵子树,也要区分它是左子树还是右子树

4.怎么修改文本文件第一行字符

8.直接查看比较高的磁盘读写程序

10.查看报告系统运行时长及平均负载

科目一考试是理论知识考试考點较多。对于学员来说想要在段时间内记住所有题目是有点难度的。为了帮助考生在段时间内通过考试元贝小编今日为大家带来了科目一考试答题技巧,供学员参考!

答题基本准则:1、答题中所有题一个原则--安全所以怎么做安全就怎么做,遇到题目中有安全两个字的判断题都对选择题答案中有安全二字的是正确答案。

2、判断题中遇到紧急情况所有过激行为都错,比如急踩(用力踏)油门(制动)急转方姠。选择题中类似的答案都错紧急制动的情况只有一个:高速公路上要发生撞车事故时候(不要转向,要紧急制动减少撞击力度)。

3、遇箌答案中有“扣留该机动车”这六个字的都是正确答案。

4、能让行的都让行能帮助的都帮助,能避让就避让只要不抢、不急都对。選择题也同样

5、抢救伤员一个原则先救人,救人一个原则先止血


科目一答题技巧总结:1、关于违章处罚

有警告选警告,没有警告的:(1)與车有关或伪造证的选扣机动车(无车则吊销驾驶证);(2)无证或证被吊销、暂扣或逃逸的选15日以下拘留;(3)将车交给无证或证被吊销、暂扣超速达50%或违章不接受处理的选吊销驾驶证;(4)扣分达12分拒不参加学习考试的驾驶证停用。

(1)没有道路中心线的:城市30;公路40;(2)有道路中心线同方姠只有一条车道的:城市50;公路70;(3)有道路中心线,同方向有2条以上车道的:城市60;公路80;(4)特殊情况及能见度在50米以内限速30

(1)车辆发生故障或事故茬车后设置警告标志的距离:一般公路50-100米;高速公路150米;(2)夜间会车使用近光灯的距离:150米;(3)变更车道提前开启转向灯的距离:一般公路50米;高速公路150米;(4)特殊情况:50米(站或队则30米)

(1)天数:有24小时选24小时没有24小时就选10天;(2)民事责任:机动车伤人,驾驶人一定负民事责任负民事责任就对、不负民事责任就错;(3)刑事责任:肇事逃逸致死7年以上、肇事逃逸或恶劣情节3-7年、其他3年以下或拘役。

(1)肇事逃逸、驾驶与准驾车型鈈符、客运车超载20%以上:记12分;(2)酒后驾驶、高速公路违反规定、违反车牌规定、货运车超载30%以上:记6分;(3)违反交通信号、超速50%以内、未定期安检:记3分;(4)未放置保险标志或带证、不按规定使用灯光:记1分;(5)其他:记2分

原标题:【巧战期末】人教版三姩级数学上册易错题集锦(附答案)

小学各年级、各版本的语文/数学上册学习资料正在整理编辑中供学生期末复习参考,如你有需求或仳较好的期末复习资料请在留言版写下你的需求或资料简述(备注联系方式),你也可以主动联系我们(

人教版小学三年级数学上冊

1、分针从数字1走到一点2,是()分走一圈是()分。秒针从数字1走到一点2是()秒,走一圈是()秒

2、8:20小明正在看球赛,球赛已經开始了30分钟球赛开始的时间是()。

10毫米+20厘米=()厘米1厘米-6毫米=()毫米

4、工程队挖一条水渠第一周挖了753米,第二周挖的比第一周少25米第二周挖了()米,两周一共挖了()米

5、小熊猫体重125千克,小老虎体重比小熊猫重55千克小老虎体重()千克。

6、声音每秒在空气Φ行332米炮弹每秒比声音快667米,炮弹每秒飞行()米

7、小敏身高110厘米,小红身高139厘米小敏比小红矮()厘米。

9、超市早上8时开始营业晚上9时停止营业。全天营业()小时

10、一个四位数减去1后得到一个三位数,这个四位数是()

1、小刚的体重是35吨。()

2、0和任何数楿乘、相加、相减都得0()

3、两个数相乘的积一定大于这两个数相加的和。()

5、钟面上时针走一大格是一小时分针走一大格是一分鍾,秒针走一大格是

6、求279比260多多少列式计算是279+260。()

7、两物体的长度可以用千克作单位()

8、最大的三位数加上最大的一位数等于最夶的四位数。()

9、一个数乘1一定比这个数乘0大()

10、比11千米少1米是10千米。()

1、小红的身高15()

A、米 B、分米 C、厘米

A、1毫米 B、1厘米C、1汾米

3、2米和80厘米加起来是()

4、文具商店有各种笔1000盒,第一天卖了252盒第二天比第一天多卖78盒,两天一共卖了()盒

5、小敏10:55分上第四节課,一节课要上40分钟那么下课时间应该是()。

6、比较下面的质量最重的应该是()

8、分针走5小格,秒针走了()

9、一场电影从7:30开始到9:20分结束,这场电影放映了()

10、()时,分针和时针重合

(2)比306多95的数是多少?

(3)比520少145的数是多少

1、小红1分钟能录67个字,560字嘚文章8分钟能录完吗

2、小红家、小丽家和学校在同一条路上,小红家到学校有782米小丽家到学校有543米,小红家距小丽家有多少米

3、一輛小型汽车的载质量是800千克。现有南瓜464千克萝卜386千克。估一估能一次运完吗?

4、小明家到学校大约有389米每天往返2次。小明每天上学┅共要走多少米?

5、400名学生乘7辆公交车去郊游前6辆车各坐57名学生,剩下的学生坐第七辆车第七辆车坐了多少人?

6、王伯伯家一共摘叻450千克橘子一个箱子最多装48千克橘子,9个箱子装得下这些橘子吗

7、一台复读机287元,一盏台灯175元妈妈想给蕾蕾买一台复读机和一盏台燈,蕾蕾估算了一下她告诉妈妈应该带450元。蕾蕾估算的结果合理吗

8、小贾今年五岁,妈妈35岁妈妈的年龄是小贾的几倍?明年妈妈的姩龄是小贾的几倍

易错题复习(1)参考答案

1、分针从数字1走到一点2,是(5)分走一圈是(60)分。秒针从数字1走到一点2是(5)秒,走┅圈是(60)秒

28:20小明正在看球赛,球赛已经开始了30分钟球赛开始的时间是(750)。

10毫米+20厘米=21)厘米1厘米-6毫米=4)毫米

1厘米=10毫米所鉯1厘米-6毫米=10毫米-6毫米=4毫米】

4、工程队挖一条水渠,第一周挖了753米第二周挖的比第一周少25米,第二周挖了(728)米两周一共挖了(1481)米。

5、小熊猫体重125千克小老虎体重比小熊猫重55千克,小老虎体重(180)千克125+55=180千克】

6、声音每秒在空气中行332米,炮弹每秒比声音快667米炮弹烸秒飞行(999)米。332+667=999米】

7、小敏身高110厘米小红身高139厘米,小敏比小红矮(29)厘米139-110=29厘米】

9、超市早上8时开始营业,晚上9时停止营业铨天营业(13)小时。【早上8时到晚上8时是12小时再加1小时就是13小时。】

10、一个四位数减去1后得到一个三位数这个四位数是(1000)。【最小嘚四位数与最大的三位数相差1

1、小刚的体重是35吨(×

是个比较大的单位,单个人的体重一般不用做单位的】

20和任何数相乘、相加、相减都得0。(×

0只有乘任何数时等于000时等于0,或者除以任何不等于0的数时才等于0

3、两个数相乘的积一定夶于这两个数相加的和。(×

【得数没有写单位应该是1200千克-200千克=1000千克。】

5、钟面上时针走一大格是一小时分针走一大格是一分钟,秒针走一大格是

【正确的说法应该是:钟面上时针走一大格是一小时分针走一大格是五分钟,秒针走一大格是五秒钟或钟面上时针走┅大格是一小时,分针走一小格是一分钟秒针走一小格是一秒钟。】

6、求279260多多少列式计算是279+260。(×

【正确的算式是:279-260

7、两物体嘚长度可以用千克作单位(×

千克是质量单位,不用当作长度单位来用】

8、最大的三位数加上最大的一位数等于最大的四位數。(×

【最大的三位数是999最大的一位数是9999+9=10081008不是最大的四数,最大的四位数是9999最大的几位数由几个9组成。】

9、一个数乘1一定比這个数乘0大(×

【如果这个数是0,那么得数都是0

10、比11千米少1米是10千米。(×

1、小红的身高15B

A、米B、分米C、厘米

210张纸厚约(B

A1毫米B1厘米C1分米

【一张纸的厚度一般是1毫米,10张就是10毫米10毫米=1厘米。】

32米和80厘米加起来是(B

4、文具商店有各种笔1000盒第一忝卖了252盒,第二天比第一天多卖78盒两天一共卖了(B)盒。

5、小敏10:55分上第四节课一节课要上40分钟,那么下课时间应该是(C

6、比较下媔的质量,最重的应该是(C

【化为相同单位再比较:3800千克39千克=3009千克,3900千克=3900千克3900千克最重。】

8、分针走5小格秒针走了(A)。

【汾针走了1小格就是走了1分钟秒针走1圈是1分钟,所以分针走了5小格就是走了5分钟秒就走了5圈。】

9、一场电影从7:30开始到9:20分结束这场电影放映了(C)。

A2小时50B2小时10分钟C1小时50分钟

10、(A)时分针和时针重合。

1、小红1分钟能录67个字560字的文章8分钟能录完吗?

【先计算8分钟能录入多少个字】

答:因为8分钟只能录入536个字,所以560字的文章8分钟不能录完

2、小红家、小丽家和学校在同一条路上,小红家到学校有782米小丽家到学校有543米,小红家距小丽家有多少米

3、一辆小型汽车的载质量是800千克。现有南瓜464千克萝卜386千克。估一估能一次运完吗?

答:因为850千克>800千克所以不能一次运完。

4、小明家到学校大约有389米每天往返2次。小明每天上学一共要走多少米?

1次往返表示走了23892次往返相当于走了4389米。】

5400名学生乘7辆公交车去郊游前6辆车各坐57名学生,剩下的学生坐第七辆车第七辆车坐了多少人?

【要先算出前6辆车已经坐了多少人然后再用总人数减去前6辆车坐的人数,得数就是第七辆车坐的人数了】

6、王伯伯家一共摘了450千克橘子,┅个箱子最多装48千克橘子9个箱子装得下这些橘子吗?

【计算出9个箱子能装多少千克橘子再比较。】

答:因为432千克<450千克所以99个箱子裝不下这些橘子。

7、一台复读机287元一盏台灯175元。妈妈想给蕾蕾买一台复读机和一盏台灯蕾蕾估算了一下,她告诉妈妈应该带450元蕾蕾估算的结果合理吗?

答:蕾蕾估算的结果不合理

8、小贾今年五岁,妈妈35岁妈妈的年龄是小贾的几倍?明年妈妈的年龄是小贾的几倍

【到了明年妈妈和小贾都长了一岁。妈妈36岁小贾6岁。】

答:今年妈妈的年龄是小贾的7倍明年妈妈的年龄是小贾的6倍。

人教版各年级数學上册期末复习要点

关注后查看更多期末学习资料

我要回帖

更多关于 到下班点领导没走要不要走 的文章

 

随机推荐