位置: IT常识 - 正文

数据源太多,报表工具该如何兼容?(数据源suspended)

编辑:rootadmin
现代应用已经进入多数据源阶段了,不再是一个单一的数据库包打天下,一个应用中会涉及除关系数据库外各种数据源,如文本文件类数据、NOSQL、多维数据库、HTML Webservice等等,即使是关系数据库,也可能不止一个 应用这样了,那么应用中的报表自然也会涉及到多样性的数据源了 现在的报表,基本都是用 ...

推荐整理分享数据源太多,报表工具该如何兼容?(数据源suspended),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:多数据源失效,数据源无法打开怎么办,数据源异常,数据源有问题,数据源出错什么意思,多数据源失效,数据源有问题,数据源有问题,内容如对您有帮助,希望把文章链接给更多的朋友!

现代应用已经进入多数据源阶段了,不再是一个单一的数据库包打天下,一个应用中会涉及除关系数据库外各种数据源,如文本文件类数据、NOSQL、多维数据库、HTML Webservice等等,即使是关系数据库,也可能不止一个

应用这样了,那么应用中的报表自然也会涉及到多样性的数据源了

现在的报表,基本都是用报表工具来做,很多报表工具都号称支持多数据源,是不是能解决这个问题呢?

其实只能搞定一点点

报表工具能轻松搞定的多源数据长什么样

简单的说,来自关系数据库的多源数据都比较好搞定,不管是多表,还是多库,都很简单,用SQL把各个来源的数据都取出来,放到报表中去关联、计算、呈现就可以

这样的多源数据,好一点的报表工具都可以轻松应对

报表工具不好搞定的多源数据长什么样

也可以简单的说,不是单纯的关系数据库的多源数据,报表工具都不太好做

进入大数据时代以来,数据不仅是大了,而且存储的方式也多了,除了传统的关系数据库外,还有

1.TXT/CSV、Excel、JSON/XML 等文件;2.MongoDB、Cassandra、HBase、Redis 这些 NoSQL 数据库;3.HDFS 等分布式文件系统;4.webService;5.ES、Kafka 等其他数据源形式

文件类的某些报表工具还能搞定,但也只限于读,而不会算,只能先全部读入到报表中,然后再利用报表的计算能力来计算处理,数据量大时,读取的效率和空间容量都可能会成为问题,(极个别的工具可以边读边汇总过滤,还能并行流式读取,会好很多);其它类的数据源大部分报表工具就连读都不会了,因为没有标准,每家有各自的API,想要读取,大部分都得通过JAVA自定义数据集的方式了

读取都比较费劲,而这些数据常常在业务逻辑上又有关联,做报表的时候大部分时候都会涉及到多个数据源之间的关联混算,单凭报表工具提供的多源关联能力处理起来就更困难了

报表工具解决不了只能硬编码数据源太多,报表工具该如何兼容?(数据源suspended)

报表工具解决不了,但也难不倒工程师,因为工程师会编码,没有什么是编码解决不了的,

工程师可以先把异构的数据变成同构的,比如把文件的数据先导入到RDB中,由RDB计算后再给报表用,而那些不会读的,就只能再一次依靠所有报表工具都提供的所谓自定义数据原接口了用JAVA读入并处理好,再传给报表

项目中,很多困难的多源混算情况,都是这么处理的,都能搞定,但是这么做其实弊端很多

异构变同构,其实大部分时候是把不同的数据强行装入到常见关系数据库中,然后再利用SQL的方式来处理计算,这样做,首先得考虑数据库本身的管理和压力,管理上是否允许这样操作,容量是否够,每次遇到这样的库外数据都要往数据库中放?

然后还得考虑时效,数据的导入都需要时间,量少的耗时短可能无所谓,量大的可能进度都被耽误了,而且一般业务数据都是实时变动的,导入数据的方式也基本很难保证数据的实时性,还有些变不了或者变起来极困难的,像json/xml多层数据(mongodb也是这种),要建很多表,想变都变不了

JAVA处理的话,要好很多,不用考虑入库的一系列问题,实时性也可以保证,但是开发成本高,还会破坏应用架构

JAVA开发人员的成本本身就高,然后JAVA计算数据的能力还很弱,写起来工作量很大,简单做个求和运算都需要写数行代码的循环来实现,更别说逻辑复杂的运算了,动辄几百行的代码,一个报表还可以承受,报表一多,就承受不了这样的高成本了

另外JAVA代码需要和项目应用一起编译,也会带来报表和应用高耦合的问题,还会影响报表本身热切换的能力

有没有更好的办法

如果报表工具提供处理复杂多样性数据源的能力,那问题就可以迎刃而解了,就不需要再来回倒腾数据或者JAVA硬写了

润乾报表集成SPL集算器以后就具备了这样的能力

SPL 是一款流行的专业的数据计算处理工具,很多项目开发商都在用,因为它不仅好用,而且还免费,开源,是常年做项目,总需要做数据处理的工程师的好帮手

集成 SPL 后,润乾报表相当于多了一个计算层,这个计算层支持常见的各类数据源,可以同时计算来自不同数据源的数据,不管它是同构还是异构

比如JSON和ORACLE混算

A1=json(file("/data/EO.json").read())JSON数据2=A1.conj(Orders)3=A2.select(Amount>1000 &&Amount<=3000 && like@c(Client,"s"))条件过滤4=db.query@x(“select ID,Name,Area from Client”)数据库数据5=join(A3:o,Client;A4:c,ID)关联计算再比如MongoDB和 CSV关联运算A1=mongo_open("mongodb://127.0.0.1:27017/mongo")2=mongo_shell(A1,"Orders.find()").fetch()3=file("Employee.csv").import@tc()4=mongo_close(A1)5=join(A2,SellerId;A3,EId)6=A5.new(_1.OrderID,_1.Client,_2.Name,_2.Gender,_2.Dept)

原本要做各种转换把数据导入到库里,或者用大段的JAVA来写,现在简单几行SPL代码就轻松搞定了

说在最后

集成了SPL的润乾报表,简单几行代码就可以搞定多样性数据源的难题,不仅让报表做起来更轻松,更是帮用户省下了大把的人工成本,而且润乾报表本身也好用,润乾一直都是报表行业的头部供应商,各行业的大小软件开发商们都有用润乾,现在的价格又很亲民,1W一套,3W一年随便用,也可以给项目上省出不少费用,有需要的可以收藏一下了

润乾报表资料润乾报表官网润乾报表下载

欢迎对润乾报表有兴趣的加小助手(VX号:RUNQIAN_RAQSOFT),进技术交流群

欢迎关注我的公告号:字母哥杂谈,回复003赠送作者专栏《docker修炼之道》的PDF版本,30余篇精品docker文章。字母哥博客:zimug.com

本文链接地址:https://www.jiuchutong.com/zhishi/309276.html 转载请保留说明!

上一篇:java类常量是什么(java中的常量是什么意思)

下一篇:在Python中如何合并两个数据框(python中如何合并csv)

  • 应交税费转出未交增值税借贷方表示什么
  • 计算增值税时要包括关税吗
  • 代扣个人所得税怎么算
  • 退多缴纳的所得税 现金流如何处理
  • 什一税是什么意思?
  • 已开票未确认收入怎么填写纳税申报表
  • 科技公司技术服务费计入什么科目
  • 进项税额转出税率
  • 个人所得税纳税比例
  • 建筑施工企业收到工程款会计分录
  • 销售人员出差补助计入什么科目
  • 库存商品进项税额转出分录怎么写
  • 总公司收回未分配利润如何入账?
  • 发票没认证可以作废吗?
  • 购买日子公司账面价值调整为公允价值
  • 银行利息收入确认时间会计与税法的差异
  • 企业物流运输
  • 应纳税额计算举例
  • 国家税务金税四期
  • 企业汇算清缴弥补以前年度亏损后还需退税
  • 个体工商户季度申报报税流程
  • 代理运输协议范本
  • 两个单位的社保合并怎么办理手续
  • 终于找到修改mac的方法了!
  • 行政单位上年支出退回
  • 公司购买理财产品账务处理
  • qtaet2s.exe - qtaet2s是什么进程 有什么用
  • 别人利息没给怎么发问
  • 总公司欠分公司钱不偿还了怎么做账
  • 废品损失的核算方式主要有
  • 金融公司呆账对当事人有什么影响
  • 商贸企业国民经济行业代码
  • 从奎雷英山口看到的 Leum na Luirginn湖和Cleat湖,英国斯凯岛 (© Sebastian Wasek/Sime/eStock Photo)
  • 现金日记账采用三栏式
  • php正则表达式匹配链接
  • 物流辅助服务包括货物运输吗
  • 建行e信通怎么提现怎么操作
  • 前端传给后端
  • php static变量
  • 企业收到企业借款需要交税
  • 购置固定资产支付的现金属于投资活动产生的现金流量吗
  • 上个月未开票本月怎么算
  • 费用报销单票据怎么填
  • 织梦常用调用标签
  • 用于职工福利的固定资产折旧
  • 差旅费包括哪些费用
  • 光盘盒属于什么税收分类
  • 付款方押金无法退还
  • 去年暂估费用,今年收到发票怎么处理
  • 机动车临时号牌怎么贴
  • 购车税费怎样计算2023
  • 计件工资怎么算公式
  • 期末贷方余额什么意思
  • 工会活动购买的产品
  • 控制企业的5种方式
  • 个人独资企业个体工商户的区别
  • 资产负债表中的固定资产是原值还是净值
  • mysql中自定义函数属于那个
  • sql返回数据条数
  • mysql中的ifnull函数
  • sql中查询语句
  • macos睡眠
  • linux mkdir函数创建多级目录
  • Win7/Win8.1/Win10命令行配置静态IP地址方法
  • windows8使用技巧
  • mark一下怎么用
  • 复制链接
  • linux shell脚本攻略(第3版)
  • unity ui图层
  • android更新ui的方式
  • js日期格式化方法
  • linux中shell脚本实验总结
  • unity接入安卓sdk
  • unity3ds
  • jquery each return
  • 发票代码和发票号码有什么区别
  • 工会春游费用怎么报销
  • 沈阳特慢病待遇
  • 大同县税务局
  • 国税系统如何变更财务负责人
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设