位置: 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)

  • 数字人民币可以在微信上用吗(数字人民币可以离线支付吗)

    数字人民币可以在微信上用吗(数字人民币可以离线支付吗)

  • 哔哩哔哩会员限制人数用吗(哔哩哔哩会员限免)

    哔哩哔哩会员限制人数用吗(哔哩哔哩会员限免)

  • 手机qq分身怎么设置(qq分身怎么用)

    手机qq分身怎么设置(qq分身怎么用)

  • 锂电池并联缺陷(锂电池并联方案)

    锂电池并联缺陷(锂电池并联方案)

  • 菜鸟裹裹怎么开发票(菜鸟裹裹怎么开票报销)

    菜鸟裹裹怎么开发票(菜鸟裹裹怎么开票报销)

  • 计算机存储系统指什么(计算机存储系统通常分为)

    计算机存储系统指什么(计算机存储系统通常分为)

  • 华为步数不显示了(华为步数不显示时段)

    华为步数不显示了(华为步数不显示时段)

  • 华为mate30pro怎么自定义铃声(华为mate30pro怎么调节音量大小)

    华为mate30pro怎么自定义铃声(华为mate30pro怎么调节音量大小)

  • 手机的cpu可以加硅脂不(手机cpu改装)

    手机的cpu可以加硅脂不(手机cpu改装)

  • ipad内存怎么扩大内存(ipad内存)

    ipad内存怎么扩大内存(ipad内存)

  • 华为手机怎么查支持电信卡(华为手机怎么查使用了多长时间)

    华为手机怎么查支持电信卡(华为手机怎么查使用了多长时间)

  • 手机用不了耳机是怎么回事(手机用不了耳机设计)

    手机用不了耳机是怎么回事(手机用不了耳机设计)

  • ipadmini4能用pencil吗(ipadmini4能用15.7)

    ipadmini4能用pencil吗(ipadmini4能用15.7)

  • 怎么添加底纹颜色(这么添加底纹)

    怎么添加底纹颜色(这么添加底纹)

  • ps怎么调整图片角度(ps怎么调整图片角度到合适位置)

    ps怎么调整图片角度(ps怎么调整图片角度到合适位置)

  • 手机照相水印怎么设置(手机照相水印怎么弄掉)

    手机照相水印怎么设置(手机照相水印怎么弄掉)

  • 微信出行历史在哪里查(微信出行历史在哪里看)

    微信出行历史在哪里查(微信出行历史在哪里看)

  • 苹果电脑如何扩展内存(苹果电脑如何扩展)

    苹果电脑如何扩展内存(苹果电脑如何扩展)

  • word是英文版怎么改成中文(word英文版怎么调行距)

    word是英文版怎么改成中文(word英文版怎么调行距)

  • 苹果8p手机能开空调吗(苹果8p手机可以开空调吗?)

    苹果8p手机能开空调吗(苹果8p手机可以开空调吗?)

  •  贝儿机器人怎么加盟(贝尔机器人适合多大孩子)

    贝儿机器人怎么加盟(贝尔机器人适合多大孩子)

  • 解决应用程序正常初始化(0xc0000135)失败(应用程序出现异常怎么办)

    解决应用程序正常初始化(0xc0000135)失败(应用程序出现异常怎么办)

  • keyiso是什么进程 服务中的Keyiso服务器是否是病毒(kjournald是什么进程)

    keyiso是什么进程 服务中的Keyiso服务器是否是病毒(kjournald是什么进程)

  • 瑞吉外卖项目:编辑员工信息与公共字段自动填充(瑞吉外卖项目简历)

    瑞吉外卖项目:编辑员工信息与公共字段自动填充(瑞吉外卖项目简历)

  • 接受固定资产投资的增值税计入哪里
  • 所得税清算扣除比例
  • 印花税都有啥
  • 小规模纳税人可以收专票吗
  • 董事会职权是否为强制规定
  • 总公司签合同发票由分公司开可以吗
  • 累计折旧空运直接计入生产成本吗
  • 加计扣除声明在哪里签章有效
  • 预付账款有二级科目嘛
  • 为什么出现补交税
  • 高新技术企业如何查询
  • 个人独资企业服务中心是干嘛的
  • 科目期初余额的录入需要从上级科目开始
  • 哪些企业可以享受加计抵减政策
  • 固定资产盘亏造成的损失计入什么科目
  • 固定报销额度算工资吗
  • 找贴现公司贴现有风险吗
  • 固定资产进项税额
  • 2018企业所得税小微企业优惠政策
  • 怎么看公司行不行
  • 农产品流通环节税收优惠政策
  • 补交注册资本的法律规定
  • 租赁合同未付款生效吗
  • 白酒消费税最低计税价格
  • 小规模企业申报表填写
  • 贸易公司买进卖出
  • 建筑工地发生的典型意外情况有哪些
  • 工资薪金怎么申报9
  • 收到税费返还是什么现金流量
  • 网页游戏无法打开
  • win11自动更新卡在94%
  • mac如何关闭开机启动
  • 购货公司丢失发货怎么办
  • 年终奖一般发什么奖品
  • 简述php中常用魔术方法及其各自的作用
  • 免征企业所得税的有
  • oauth2 sso单点登录
  • php验证码功能怎么实现
  • php目录浏览
  • three.js 教程
  • yolo s
  • 未确认融资费用账务处理
  • 小规模纳税人可以开增值税专用发票吗
  • 增值税收范围
  • 管理费用抵消分录
  • 以前年度损益调整会计分录
  • 给客户的回扣如何做账
  • 公司向公司借款合法吗
  • 注销小规模财务报表怎么办
  • 数据库参数错误
  • 税务多措并举
  • 计提个税和缴纳个税金额不符的原因
  • 税务会计账务处理一般方法有哪些
  • 商标 入账
  • 暂估入库做账
  • windows2003密码破解
  • 怎么用苹果电脑打印照片
  • centos如何清除硬盘数据
  • android7应用程序开发教程
  • win10如何动态桌面
  • windows8设置自动关机
  • win8资源管理器未响应
  • w10系统如何
  • win8如何调屏幕亮度
  • cocos2dx4.0入门
  • Unity3D游戏开发毕业论文
  • 上传图片 js
  • 安卓网页开发工具
  • linux文件目录管理命令
  • vue只适合做单页项目吗
  • 安卓病毒查杀软件
  • javascript ES6 新增了let命令使用介绍
  • nodejs调用打印机
  • shell脚本实现文件移动、复制等操作
  • unity 移动应用开发
  • 简单的jquery插件实例
  • adb命令ls
  • 金税盘注销后怎么开发票
  • 昆明地税局长是谁
  • 定期定额个体户需要申报个人所得税吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设