找回密码
 立即注册

QQ登录

只需一步,快速开始

Simon.hu 讲师达人认证 悬赏达人认证 活字格认证
超级版主   /  发表于:2019-6-18 18:35  /   查看:7489  /  回复:0
性能教程又开始,最近总是断断续续的在做很多的事,这个系列教程更新的有点慢,不过我相信善良的大家是不会怪我的哈~今天要跟大家分享的是一个很简单有见效奇快的功能--表格设置默认不加载数据


这个功能我们来一起做一个小实验,挑战1000W行记录哈~

我这边有一个数据库的表,他一共有1000W行记录,在MSSQL中光是查询一个总行数就花了整整8S
image.png385147399.png
然后我把这个数据连接到活字格中:
image.png510256957.png

1.设计器性能
读取数据表的字段还是很快的,直接就能展开
image.png806368713.png
不过,当我尝试在活字格中双击打开这个表的时候
白屏了~ 对,没错,白屏了,我是有心理预期的,不白屏才不正常呢~
image.png495362243.png
怎么能让他在设计器能打开呢?
我们有一个小的机关,一次加载那么多的数据不死才怪;所以我们就让他少加载点就行了,如何设置呢?请看下面
image.png95652159.png
这样设计器中就可以打开了哈~
(PS:这里跟大家交代一下,默认情况下活字格是默认无限制加载数据的,因为万一有什么问题,我们可以直接在这里看到这个数据进行排查等等,但是会有想本次实验中的大数据量的问题,那我们就要设置一下显示的行数,不过这样就不能在设计器中将全部的数据看到了哈~)
以上是设计器的性能。
2.浏览器性能
那么对于网页的呢?
我们上面的设置只影响设计器,将这个表格绑定到页面在浏览器**问的时候还是会默认将所有的显示出来的,如果您直接运行会出现下面的效果
image.png412791747.png
对一直转圈,我估计转个几分钟能显示出来可能都是好的;所以我们也要设置默认加载只加载一部分数据
image.png109519652.png
设置好了以后也是秒开
image.png727453918.png
3.实际应用场景
其实这样的设置是可以很容易的提升性能,但是在实际使用的时候,可能会遇到一些问题,比如我们要在其他表输入一些信息,然后关联到这个表,或者如下
我们想要在表格2中的 A 列填入数据,然后B列显示通过A列关联出来的这个1000W行数据表中的值
image.png53807982.png
当然,很多小伙伴会说,这个直接使用ODATA就行了,干嘛非要加载这个表呢?
Odata自然也是可以的,但是不要忘了Odata和Vlookup的抉择问题
如果是这样的话,是不是Vlookup就需要了?那么如果设置了只加载100行,万一真的有100多行需要Vlookup怎么办呢?
这个时候默认不加载数据就要发挥作用了,右键表格设置
image.png832713928.png
设置默认不加载数据
image.png117465514.png
设置一个textjoin函数,将用户正在录入的表格中的数据串起来,当单元格为空的时候,右侧的表格又会显示全部数据,所以我们再在外侧包一层,如果是空的话,显示-1,这样就稳妥了
image.png615305480.png

然后再来一个Vlookup,稳稳的
image.png38611144.png
秒开
image.png662799377.png
而且添加数据以后也是秒开
image.png220006407.png

小伙伴们学到了没?
不要小看这个问题,我现在遇到大家的性能问题,10个有8个都是因为这个问题的!!!!!

评分

参与人数 1满意度 +5 收起 理由
卡卡 + 5

查看全部评分

0 个回复

您需要登录后才可以回帖 登录 | 立即注册
返回顶部