mongoDB适用啥场合呢?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mongoDB适用啥场合呢?相关的知识,希望对你有一定的参考价值。

参考技术A 根据官方网站的描述,Mongo适合用于以下场景:
◆网站数据:Mongo非常适合实时的插入,更新与查询,并具备网站实时数据存储所需的复制及高度伸缩性。
◆缓存:由于性能很高,Mongo也适合作为信息基础设施的缓存层。在系统重启之后,由Mongo搭建的持久化缓存层可以避免下层的数据源过载。
◆大尺寸,低价值的数据:使用传统的关系型数据库存储一些数据时可能会比较昂贵,在此之前,很多时候程序员往往会选择传统的文件进行存储。
◆高伸缩性的场景:Mongo非常适合由数十或数百台服务器组成的数据库。Mongo的路线图中已经包含对MapReduce引擎的内置支持。
◆用于对象及JSON数据的存储:Mongo的BSON数据格式非常适合文档化格式的存储及查询。
自然,MongoDB的使用也会有一些限制,例如它不适合:
◆高度事务性的系统:例如银行或会计系统。传统的关系型数据库目前还是更适用于需要大量原子性复杂事务的应用程序。
◆传统的商业智能应用:针对特定问题的BI数据库会对产生高度优化的查询方式。对于此类应用,数据仓库可能是更合适的选择。本回答被提问者采纳

现在啥软件都有开源,BI 呢?

英文的不适用

开源现在很流行,从系统级到应用层面,都有各类开源软件供开发者使用,比如 Linux Android Mysql PostgreSQL Hadoop Apache Tamcat Birt等,在国内都很流行

然而,BI似乎是个例外,在国内还很难找到一个使用比较广泛的的开源产品

其实国外的开源BI也很多,比如

Superset Grafana Metabase Redash,这些都是在GitHub上排名靠前的开源BI,功能和外观都做的不错,在国外的用户基础也挺很大

但是,这些东西在中文世界却很难用得起来,小方面的原因是英文文档不全,会增加学习和使用的成本,更重要的原因是BI是一个界面为主导的软件,不像其他开源代码以功能和服务为主

界面为主,那就要求页面功能布局、风格等得吻合用户的需求才行,会涉及到很多需要改造的地方,基本每个页面都得改,但语言不同,修改的难度就会倍增

所以,虽然国外的开源BI功能外观都不差,还免费,在国外也比较流行,但国内大部分的软件开发商和用户还是宁愿去选择收费的商业BI

更详细的国外开源BI评测,可以参考:

主流开源 BI 产品对比

中文的有润乾

国外的不合用,国内的有没有呢

国内的开源BI很少,网上搜到的基本都是商用BI放出的烟雾弹广告,点进去看半天问半天,才知道根本没有开源这么一回事,都得收费,还挺贵,好几十万寻找开源的过程,太艰难了

中文世界中功能完备的开源BI,也就是润乾一家,以下这些模块全部开源

润乾这个开源BI的功能怎么样?直接从它的发布学习材料来看:

这些是润乾BI前端功能实践案例,选自 润乾报表开源 BI 学习资料

只是这个系列实践系列就有20篇之多,不能不说润乾开源BI的功能确实相当丰富。从连接数据源,到开始多维分析,到自定义修改页面,到语义层,到多表多库关联JOIN,到权限控制,到源码分析,到敏捷看板DBD,到通用查询,覆盖了BI的方方面面,有了这些实践案例,学习和改造也变得容易了,都有实际示例可以参考

我们从这些实践说明里挑一些大家比较关注的功能,重点看下

多维分析

多维分析能力,是BI软件最基础的看家本领,润乾BI不仅可以做基础的切片,钻取,旋转等操作,还可以做更高级的跨行组运算,如同比环比排名,等

润乾BI的跨行组运算是可以选择两个统计层次(比如在年内按月累计),而很多BI产品只能有一个层次的跨行组运算,甚至根本就不支持。

数据来源

润乾BI支持各类型的数据来源,给一句SQL能分析,给个Excel也可以,来个程序算出来的结果集也行,给常见的和不常见的各类数据库更可以,避免了分析只能针对特定的数据源,给个其他的就分析不了的窘境

一句SQL

一个Excel

JavaAPIWebService

语义权限

除了能分析上面的临时性、即时性数据外,润乾BI还有语义层可以定义使用频度较高的数据源,设置中文名称,做JOIN,增加指标等,让分析更轻松方便

还可以设置权限,可以精细的控制哪些人可以看到哪个表,哪个字段的数据

关联查询

这是润乾BI独有的功能,涉及JOIN的关联查询就连卖的很贵的商业BI一般都处理的不好

润乾的DQL引擎可以让多表关联查询不再错、不再晕,根据拖拽实时关联查询数据,轻松实现关联分析

至于 BI 软件大都解决不好关联分析的的难题,详情可以参考:

为什么 BI 软件都搞不定关联分析

敏捷看板

业务人员可以在分析页面快速制作DashBaord,敏捷看板,生成可视化报告

通用查询

业务人员可以灵活的在页面上拖拽设置查询条件,分组汇总等

系统平台

润乾BI虽然是开源的,可以被集成的软件,但他同时也提供了全面的系统管理功能,人员机构管理、资源管理、权限控制、任务调度等都有,没有系统的用户可以拿来直接用,改改就是自己的系统,有系统的可以忽略这些,还是只集成BI部分就可以

除了这些重点功能外,润乾BI还有很多其他细微独特的功能,篇幅原因我们就不一一列举了,从上面提到的这些重点功能已经可以看出,润乾的BI,功能已经非常齐全,还有其他商用BI没有的特色和亮点,相对于国外的开源BI,更具有中文页面好改造的优势,完整的文档和实践示例也更便于用户使用和学习

总结

一直以来国内的同学想找一个方便好用的开源BI都不是一件易事,国外的页面不好修改,国内的基本都收费,现在有了润乾开源BI了,同学们可以去试一下了,润乾是做报表起家,是报表行业的领头羊,报表功能好,BI功能也不差,还天然弥补了BI缺少报表能力的短板

润乾报表的新老用户,遍布各行各业,已经有很多在用润乾的开源BI了,因为报表自带BI,直接集成到系统里,改改页面,就成了自己系统的BI模块了

润乾报表资料

以上是关于mongoDB适用啥场合呢?的主要内容,如果未能解决你的问题,请参考以下文章

Redis数据库跟MongoDB数据库有啥区别呢?

接手老项目的痛——MongoDB学习及集群搭建

安装mongodb总是失败是啥原因?谢谢

MongoDB系列之适用场景和不适用场景

MongoDB 比较适用哪些业务场景?

mongodb bsondump 有啥作用