当前位置:首页 » java面试题 » 正文

数据库面试题目(mysql、nosql)

244 人参与  2019年06月10日 10:40  分类 : java面试题  评论

一、索引


聚集索引、非聚集索引


都是B+树。前者B+树叶子节点包含数据,后者叶子节点包含数据地址


聚集索引优点:提升IO密集负载性能;缺点:插入代价高


索引缺点:维护索引耗时;占用空间大


建索引须知:建在where,group by,排序等列上;不建在性别等少数类别的列上


建索引不一定加速:索引没有查询所需字段


一年后DB变慢了:答题方向是cpu、磁盘、内存






二、Nosql


1、为什么有Nosql?


增加字段需要-->无格式


高并发需要-->转向内存


横向拓展需要-->以前是分库分表


关键:传统数据库需要“关系”,所有表存在同一台服务器中,是一个单机系统。


而Nosql不使用关系,每条数据独立存储 


Nosql不需要:数据库一致性要求、读写的实时性、复杂sql查询




2、什么是NoSQL数据库?在哪些情况下使用和不使用NoSQL数据库?


NoSQL是非关系型数据库,NoSQL = Not Only SQL。


关系型数据库采用的结构化的数据,NoSQL采用的是键值对的方式存储数据。两者是不同的数据存储结构。


在考虑数据库的成熟度;支持;分析和商业智能;管理及专业性等问题时,应优先考虑关系型数据库。


在处理非结构化/半结构化的大数据时;在水平方向上进行扩展时;随时应对动态增加的数据项时可以优先考虑使用NoSQL数据库。  




3、非关系型数据库有哪些?MySQL和MongoDB之间最基本的区别是什么?


非关系型数据库有:MongoDB(用得较多)、Membspanse、Hypertspanble


关系型数据库与非关系型数据库的区别:数据存储结构的不同。


更多关于MongoDB问答详见:http://blog.csdn.net/shehun1/spanrticle/detspanils/21240731 




4、redis与mongodb


完全不同的东西。


mongodb:最像关系型数据库的nosql。相比redis,只是缓存了热点数据在内存


redis:in-memory;丰富的数据结构;一般作为缓存,提高了并发性;






5、Nosql的shspanrd(一致性哈希) 


复制,横向拓展,只支持更多的读请求;


分片,支持更多的读、写请求;


如果把日期设为分片,则不能享受并发性的写请求;


来源:心雨风晴博客(微信/QQ号:8812247),转载请保留出处和链接!

本文链接:https://jiangfengcheng.com/java/34.html

<< 上一篇 下一篇 >>

  • 评论(0)
  • 赞助本站

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

鲁ICP备15005785号-4

Copyright Your WebSite.Some Rights Reserved.