1. FineReport和FineBI的区别
一,产品差别:
1、数据引擎方面
FineReport:能跨系统直连数据库,通过SQL创建数据集取数制作报表;
FineBI:直接对接数据库的实时数据与抽取数据的spider计算引擎,用户可以根据数据量、实时性要求、使用频次等,自由选择实时或 抽取的方式。
2、报表方面
FineReport:CS设计器设计开发报表模板,用户可任意制作所需要的展示效果。比如满足一定条件单元格展示、前端JS交互、超级链接、图形展示等。支持灵活定制各种中国式复杂报表;
FineBI:主要提供自助式的OLAP多维数据分析模式;纯BS端自定义拖拽分析报表,业务人员可根据报表需求自行拖拽生成各类分析报表。效果取决于设计者的分析能力。
3、FineBI的使用主要面向业务人员可以自己设计报表进行分析,向自主分析得出结果,辅助企业业务决策;FineReport可以用来出固定格式的周报、月报、适合作为正式汇报材料;
4、报表系统和BI的使用对象和目的都不相同。
FR属于报表工具,报表是企业信息化必不可少统计分析工具,主要实现一些企业固定的月报,季报,关键数据的统计分析,旨在统计或者告诉决策者:过去发生了什么,什么正在发生。 报表系统更着重于短期的运作支持。
BI属于商业智能工具,侧重于数据分析,改变之前传统做表的方式,交互性更好,性能更加强大,旨在将企业中现有的数据转化为知识,帮助企业做出明智的业务经营决策。BI关注长期的战略决策,甚至更着重于商业趋势和业务单元的联系而非具体的数据和精确度本身,BI并不是用来代替着眼于日常运做的报表系统的。
5、如果把FineReport和FineBI的最终数据分析结果都比喻为一场盛宴的话,FineReport可以比喻为一桌经过精心调理和准备的满汉全席,而FineBI则可以比喻为一场可供用户进行丰富自由选择的自助餐;
二、产品联系:
1.FineReport中的所有数据源都可以通过服务器数据集在FineBI中进行读取和使用;
2.FineReport制作的所有报表页面都可以挂载在FineBI中进行查看和使用;
3.FineBI和FineReport产品支持融合部署,所有功能都可以整合在同一个工程中进行使用(推荐FineReport整合到FineBI),同时移动 端共用一个数据分析app。
三、有了FineReport,还要FineBI吗?:
数据的业务闭环才是最为重要的。
报表是很多企业一开始就用的,FineReport也确实实实在在解决了很多问题,并提高了效率。但对于一些数据工作走在前列的企业来 讲,有些数据问题还得靠BI来解决,比如:
1. 业务有很多分析需求,而且很多是一次性的、甚至个人的需求。
2. 取数分析涉及的数据量很庞大,百万及千万级以上。
3. 技术问题,需要对接hadoop之类的大数据平台。
4. 业务部门培养分析人员需要更容易上手的工具。
……
总结
1)工具类型
FineReport 更适合做固化的数据呈现,比如复杂报表、固定流程,精细设计大屏等内容。而 FineBI 更适合做变化快,不断增加新的指标,而且已有指标的计算方式也在变化,需要经常调整的数据分析。
- FineReport 是面向企业信息部或者软件集成商的数据系统/数据中心搭建的整体解决方案工具。其包含数据展示、导出、打印、录入以及简单数据流转(上报)的全面功能。
- FineBI 是面向企业包括信息部门以及业务部门全体的整体数据可视化/数据分析工具。
2)产品定位
- FineReport 是基于固定表样的数据展示工具。企业信息人员在设计器中定义表样结构,设计出符合要求的页面,然后发布给业务人员查看。注重的是页面的可塑性和精准性。
- FineBI 是基于大数据的自助分析及自主分析平台。
3)用户属性
FineReport 面向的是业务部门提需求,由信息人员设计制作,最后设计的报表由底层员工和领导使用。FineBI 也存在上述的使用过程,但其额外且更重要的是信息部门准备数据,业务部门根据自己的需要进行自主分析。
4)展示效果
- FineReport 面向企业全部数据展示需求,其具备展示的全面性。而 FineBI 侧重于数据可视化/数据分析,它强调将数据中的意义用更优更直观的方式展现,所以只存在可以描述数据意义的简单、直观的展示方式。
- FineReport 使用中,用户看到的是一个制作好的页面,交互简单,页面就是简单二维平面的页面。同时也因为其平面的特性,一个页面内设计者假如希望塞入更多内容时,这时候格式往往就会复杂起来。而 FineBI 的页面,是多维的。用户在一个页面上,通过丰富的交互操作,在不同数据维度层面间切换,从而获取比平面更多的数据信息。也因为多维的特性,展示格式不需要复杂。
2. MySQL, Oracle, SQL Server的区别
1. 面向对象:
Oracle:主流的大型数据库,用于中大型网站开发,商业收费
SQL Server:一般做中小型数据库,用于中小型网站,以及个人使用 ,商业收费
Mysql:一般做中小型数据库,用于中小型网站,以及个人使用,开源免费
2. 保持数据的持久性:
MySQL是在数据库更新或者重启,则会丢失数据
Oracle把提交的sql操作线写入了在线联机日志文件中,保持到了磁盘上,可以随时恢复
SqlServer从2014之后,也拥有了完全持久和延迟持久特性
3. 日期字段的处理
MySQL日期字段分DATE和TIME两种,
- Oracle日期字段只有DATE,包含年月日时分秒信息,用当前数据库的系统时间为SYSDATE,精确到秒,或者用字符串转换成日期型函数TO_DATE(‘2001-08-01’,‘YYYY-MM-DD’)年-月-日24小时:分钟:秒的格式YYYY-MM-DD HH24:MI:SS TO_DATE()还有很多种日期格式,可以参看Oracle DOC.
- MySQL中插入当前时间的几个函数是:NOW()函数以`'YYYY-MM-DD HH:MM:SS’返回当前的日期时间,可以直接存到DATETIME字段中。CURDATE()以’YYYY-MM-DD’的格式返回今天的日期,可以直接存到DATE字段中。CURTIME()以’HH:MM:SS’的格式返回当前的时间,可以直接存到TIME字段中。例:insert into tablename (fieldname) values (now()) 而Oracle中当前时间是sysdate
日期型字段转换成字符串函数TO_CHAR(‘2001-08-01’,‘YYYY-MM-DD HH24:MI:SS’) 日期字段的数学运算公式有很大的不同。
-
MySQL找到离当前时间7天用DATE_FIELD_NAME > SUBDATE(NOW(),INTERVAL 7 DAY)
M-DD HH24:MI:SS’) 日期字段的数学运算公式有很大的不同。 -
MySQL找到离当前时间7天用DATE_FIELD_NAME > SUBDATE(NOW(),INTERVAL 7 DAY)
-
Oracle找到离当前时间7天用 DATE_FIELD_NAME >SYSDATE - 7