2021年度总结 | 葡萄城软件开发技术回顾(下)

在上节中,我们介绍了在过去一年中葡萄城在控件领域中的一些新探索,新尝试。

(详细内容:https://www.cnblogs.com/powertoolsteam/p/15882644.html)

包括为了解决前端电子表格中将传统的高性能结构化表格 (Grid) 与公式计算引擎 (CalcEngine)结合问题的集算表,和不同平台中复杂报表的性能提升和兼容拓展,除了控件技术的相关内容,关于近几年风头正盛的低代码和BI数据分析,我们也有一些新内容想与大家分享。

嵌入式BI,数据可视化利器

数据可视化,在近几年也是人们关注的一个热点话题。

2021年中,我们在数据BI领域也有了新的突破。

Wax(Wyn Analytic Expression)分析语言系统

今年针对BI数据分析,我们新研发了Wax引擎。

Wax引擎本质是一个复杂的SQL生成器,对Wax语句和表达式进行解析,再对数据模型进行拓扑结构分析,结合两者生成抽象语法树,反复进行优化迭代,最终生成适用于目标数据库的SQL语句。在此过程中我们对诸如图运算等关键组件进行了大量的优化以确保性能和最终的SQL产物的质量。

不同于传统的BI实现方式,Wax不需要Cube,而是选择连接高级的OLAP数据库作为替代,根据其特性针对性的生成最合适的SQL以满足查询性能的需要。以此为基础,在未来的版本中,Wax引擎将支持更多种类的OLAP数据库,在硬件足够强大的前提下,Wax将释放其背后的OLAP数据库的无限潜力。

Wax语言可以实现几乎任何用户需要的查询,让构建RFM、杜邦等复杂分析也成为可能。

从使用层面说,Wax允许用户以低代码形式构建高级分析,与之前版本中侧重于易用性的依靠拖拽构建一般分析的功能能够良好配合,为用户提供更多的自由度。目前业界类似的分析语言支持情况来看,Wax胜在轻量化和泛用性。

Wax的强复用性

在设计Wax时我们也进行了很多关于高复用性的考量。

  • 除了OLAP数据库,Wax引擎也可以生成适用于主流OLTP数据库的SQL,使用Wax组件的产品可以直接以Wax语句的形式在目标数据库上进行查询和分析。

Wyn借助这一点实现了实时数据分析功能。

包括推送数据集和流式数据集,Wyn能够接收数据、清洗数据并转储到内存数据库或持久化的列式数据库,在仪表板发起查询时在这些数据库上执行由Wax引擎生成的SQL获取分析结果。

  • Wax引擎本身是个封装严密、零依赖的独立模块,可以支持再发行为nuget包。这意味着其他产品也可以安装Wax模块来提供数据分析功能。

  • Wax引擎的核心代码和平台无关,和语言仅有少量相关,可以较容易的以其他语言重写(如Java等)。

推流模式的实时数据接入

流式数据集和推送数据集的底层实现是一个可供调用的WebAPI。设备源、传感器、服务器、检测仪器等IoT设备采集的数据均可以通过调用这个WebAPI推送给Wyn Enterprise,实时展示到仪表板中,全面满足各种实时数据监控需求。

工欲善其事,必先利其器。正如Gartner的分析师所言,增强分析将塑造大数据的未来趋势,我们也希望未来在BI领域中为大家提供更加强大的支撑。

积木一搭,立刻开发

2021年,在数字化背景的加持之下,除了数据BI,低代码也是风头正盛的一年。

在几十年控件技术的累积之下,葡萄城的低代码也在不断努力,让开发者像搭积木一样快速实现应用的构建。而今年,我们将活字格牵上了云,在私有化部署的基础上,研发了独占资源的公有云服务,也就是大家常说的PaaS。

活字格云基于云原生K8S容器技术以及.NET Core跨平台技术构建,在满足企业级应用开发的基础上,尽量发挥公有云带来的技术优势。关于K8S的相关内容,我们出了连载:Docker与k8s的恩怨情仇系列,详细内容如下:

第一章:Docker与k8s的恩怨情仇(一)—成为PaaS前浪的Cloud Foundry

第二章:Docker与k8s的恩怨情仇(二)—用最简单的技术实现"容器"

第三章:Docker与k8s的恩怨情仇(三)—后浪Docker来势汹汹

第四章:Docker与k8s的恩怨情仇(四)-云原生时代的闭源落幕

第五章:Docker与k8s的恩怨情仇(五)——Kubernetes的创新

第六章:Docker与k8s的恩怨情仇(六)—— "容器编排"上演"终结者"大片

第七章:Docker与k8s的恩怨情仇(七)—— "服务发现"大法让你的内外交互原地起飞

第八章:Docker与k8s的恩怨情仇(八)——蓦然回首总览Kubernetes

功能方面:活字格云全面兼容On-Promise私有化部署的应用,可以非常方便的地将本地应用迁移到云端;

运维方面:活字格云提供了丰富的监控界面,可以对服务器的CPU、磁盘、网络进行全方位监控;

性能方面:稳定高可用的集群部署环境,为应用的健康稳定运行提供支持;

同时,活字格云可以结合云商城使用,云商城提供了大量的应用和组件,方便用户快速构建应用,避免重复造轮子。

总结

技术的发展没有边界,万物生长,蓬勃向上。

每年都有许许多多"后浪"技术不断更新升级,也有许许多多"前浪"技术纷至沓来。

未必不能空手而来,但是可以满载而归。

在这里我们为2021年画上圆满的句号,2022年将会为大家带来更多有趣、严肃的内容。

2021年度总结 | 葡萄城软件开发技术回顾(下)相关推荐

  1. 2021年度总结 | 葡萄城软件开发技术回顾(上)

    2021年度总结 | 葡萄城软件开发技术回顾(上) 随着冬奥会各项精彩比赛的进行,2022年的序幕逐渐被拉开. 这一年,云原生领域风起云涌,容器大规模应用,k8s可称为炙手可热的话题:这一年,大数据技 ...

  2. 2020年度总结 | 葡萄城软件开发技术回顾

    本文由葡萄城技术团队原创并首发 转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具.解决方案和服务,赋能开发者. 2020年是不平凡的一年,虽然疫情为整个社会都带来了巨大的冲击,但IT技术人 ...

  3. 2021年需要学习的软件开发技术

    根据IDC统计,尽管受COVID-19新冠大疫情的影响,2020年全球IT行业的年收入也达到了4.05万亿美元. 软件开发已成为企业的资产,可帮助企业创新,发展和壮大.IT产业中最重要的是技术创新(创 ...

  4. 2020中国 .NET开发者大会精彩回顾:葡萄城高性能表格技术解读

    12月19日,2020中国 .NET开发者大会在苏州召开.本次会议以"开源.共享.创新"为主题,结合线下.线上实时同步直播的方式,征集了来自微软.龙芯等知名企业的40余位技术大咖, ...

  5. 从今天开始,我就要潜心研究软件开发技术了,不在被名利所困

    参加工作六年来,我一直被虚名所困,想要通过努力得到单位的认可,但是由于我是小副科,学校领导根本不放在心上,我反而为此浪费了很多宝贵的时间. 从今天开始,我就要潜心研究软件开发技术,不再在单位争名夺利了 ...

  6. 点评主流软件开发技术

    为什么80%的码农都做不了架构师?>>>    点评主流软件开发技术 http://soft.chinabyte.com/297/8698297.shtml ■ 河北秦皇岛 谷俭政 ...

  7. 软件开发技术联盟 - 图书系列资源

    软件开发技术联盟编著,清华大学出版社出版. 资料来源官方授权许可,详情见链接 资源出处 另外推荐学习资源网站: 清华出版社图书资源 以下为软件开发技术联盟所提供的图书配套资源,多为图书所带光盘资料,为 ...

  8. html5脑图_基于HTML5的三维思维导图软件开发技术研究

    龙源期刊网 http://www.qikan.com.cn 基于 HTML5 的三维思维导图软件开发技术 研究 作者:汪升华 唐国纯 来源:<软件工程> 2017 年第 10 期 摘 要: ...

  9. 软件开发技术常用术语英中对照

    软件开发技术常用术语英中对照 A.I. 人工智能 A2A integration A2A整合 abstract 抽象的 abstract base class (ABC)抽象基类 abstract c ...

最新文章

  1. 前端框架 渐进式框架
  2. redis aof持久化遇到的Can't open the append-only file Permissi
  3. linux 连个文件都删除不了,什么鬼!
  4. Java使用easyexcel读大文件
  5. 专家显身支招 教你如何选购高品质DDR2内存(例)
  6. hadoop与hive
  7. 搭建Visual Studio C语言开发环境
  8. 拆 米家台灯_米家台灯Pro测评:色彩还原力接近阳光,支持米家与HomeKit
  9. 取消调试停止时自动关闭控制台,取消webapi调试时关闭浏览器自动关闭程序
  10. 关于GLSL的gl_FragCoord、gl_FragDepth以及深度计算
  11. Linux利用filename=${fileuser:-filename}设置文档名
  12. 华为Honor6打开开发者选项
  13. java 图像合成加相框_合成走进相框人物照片效果的PS教程
  14. babel安装后无法使用:babel : 无法加载文件 C:\Users\DZG\AppData\Roaming\npm\babel.ps1
  15. [计算机网络][内容梳理]一、计算机网络概述
  16. 用python开发一个炸金花小游戏,注意别玩上瘾了~~(附完整源码)
  17. 微软高管:Win8用户可免费升级Win9系统
  18. linux shell 判断目录不存在,检查shell脚本中是否存在目录
  19. 专职渲染房价上涨气氛 网络房托曝忽悠内幕
  20. CF614A【签到题】

热门文章

  1. 并发初体验,解决小规模并发下单问题
  2. CPLEX+Yalmip的MATLAB环境安装
  3. 摄像机sensor介绍
  4. 游戏平台搭建之安卓资源优化
  5. foo()和@foo()的区别是什么?
  6. 阿里管理九板斧 -借人成事、借事修人
  7. 抛出异常和捕获异常_多捕获和最终重新抛出的异常处理
  8. 2017ife_yaoyao学院_task1
  9. Blinker点灯科技绑定GitHub增加设备数量到10个
  10. 手把手教你做树莓派魔镜-MagicMirror(二)-烧写系统卡