《说说你对Nosql的理解》遇到这个问题,找不到一想到要回答,脑子里就乱了,然后回答的时候就犹豫了。建议您阅读整篇文章。大家好,我是Mic,一名工作了14年的Java程序员。关于这个问题,面试官想调查什么?调查目的显然,这是一道没有标准答案的面试题。所以面试官问这个问题,无非就是考察你的技术积累和总结能力。因为只有对一种技术的理解足够深入,才能很好的表达出来。就像我们在总结逝去的青春时,虽然没有华丽的辞藻,却总能把那些情绪表达得那么深刻。问题分析Nosql现在已经不是一个新词了。它最早出现于1998年,当时Nosql被描述为一种轻量级、开源的关系型数据库,不提供SQL功能。2009年,Nosql被重新定义。此时Nosql主要指的是非关系型、分布式、无ACID的数据库设计模式。请注意,它不是一种技术,而是一种设计理念。随着MongoDB、Redis等技术的应用越来越广泛,大家对Nosql的理解也越来越透彻。从本质上讲,Nosql其实是为了弥补关系型数据库在某些特定场景下性能较差的缺点。高并发流量下网站性能的提升起到了非常重要的作用。针对不同的业务数据类型,Nosql也有不同的实现方式。比如用于K-V存储的Redis,用于文档存储的MongoDB,用于列式存储的ClickHouse,用于图存储的Neo4j,以及用于以时间为纬度的时序数据存储的InfluxDB。所以Nosql可以理解为既是Non-SQL又是NotonlySQL。Master:NoSQL可以理解为NotOnlySQL,其实是相对于传统关系型数据库,非关系型数据存储的统称。在分布式和高并发架构下,传统关系型数据库存在性能、可扩展性、存储大量数据等缺点。同时,随着网站流量的增长,这些缺点已经严重影响了网站的性能和对业务的影响。NoSQL强调非关系型、分布式、可扩展性、性能等特性的设计模式。从语义上看,它不需要通过标准化的SQL语句来获取数据。意味着不需要固定的二维表模式和元数据存储,可以有效避免SQL和表关联查询的操作。从而更好的实现横向扩展的特性。同时针对不同类型的数据,可以灵活使用更高效的存储形式,进一步提升性能。喜欢我的作品记得点赞收藏关注哦!!!需要Java面试合集,简历模板扫描下方!版权声明:除特别声明外,本博客所有文章均采用CCBY-NC-SA4.0许可协议。转载请注明来自Mic带你学建筑!如果本文对您有帮助,请给个关注和点赞。您的坚持是我不断创作的动力。欢迎关注同名微信公众号获取更多技术干货!
