ColumnValues访问效率更高?

Wangckyo 2009-07-14 03:11:05
在一些资料和帮助上看到说通过ColumnValues访问效率更高,做了个实验,发现效率并不快(甚至更慢),希望有经验的高手指教

数据库类型 文档数 访问方式 访问时间
本地 50,005 域名 9,9,9
本地 50,005 ColumnValues 10,11,11,
局域网 1,008 域名 6,7,6
局域网 1,008 ColumnValues 6,6,7

同一种数据库类型两种访问方式交替执行3次,以下是运行程序:
Dim uiw As New NotesUIWorkspace
Dim view As NotesView
Dim doc As NotesDocument
Dim strTemp As String
Dim i As Integer
Dim dt1 As NotesDateTime
Dim dt2 As NotesDateTime

Set view=uiw.CurrentView.View
For i=1 To 3
Set doc=view.GetFirstDocument()
Set dt1=New NotesDateTime(Now())
While Not doc Is Nothing
strTemp=Cstr(doc.a(0)+doc.b(0)+doc.c(0)+doc.d(0)+doc.e(0)+doc.f(0)+doc.h(0)+doc.i(0))
Set doc=view.GetNextDocument(doc)
Wend
Set dt2=New NotesDateTime(Now())
Print "M1:" + Cstr(dt2.TimeDifferenceDouble(dt1))

Set doc=view.GetFirstDocument()
Set dt1=New NotesDateTime(Now())
While Not doc Is Nothing
strTemp=Cstr(doc.ColumnValues(1)+doc.ColumnValues(2)+doc.ColumnValues(3)+doc.ColumnValues(4) _
+doc.ColumnValues(5)+doc.ColumnValues(6)+doc.ColumnValues(7)+doc.ColumnValues(8))
Set doc=view.GetNextDocument(doc)
Wend
Set dt2=New NotesDateTime(Now())
Print "M2:" + Cstr(dt2.TimeDifferenceDouble(dt1))
Next
Print "the end"
...全文
90 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
Wangckyo 2009-07-16
  • 打赏
  • 举报
回复
参考2、3楼的意见,重新测试如下:
数据库类型 文档数 访问方式 访问时间(s)
本地 50,005 域名 13,13,14
本地 50,005 ColumnValues 33,34,34
本地 50,005 Var=ColumnValues 10,10,9
局域网 10,826 域名 52,52,52
局域网 10,826 ColumnValues 58,59,59
局域网 10,826 Var=ColumnValues 51,51,43

数据库类型 文档数 访问方式 访问时间(s)
本地 50,005 域名 14,13,14
本地 50,005 ColumnValues 33,34,34
本地 50,005 Var=ColumnValues 10,10,10
局域网 49,917 域名 197,194,195
局域网 49,917 ColumnValues 204,205,200
局域网 49,917 Var=ColumnValues 182,179,179

感觉效率没提高多少,不过没有工具统计每种访问方式从服务器端读取的数据量,如果数据量变小,倒也可以认为是效率高。
亓锋 2009-07-15
  • 打赏
  • 举报
回复
利用视图操作文档是最慢的文档遍历方法。对于符合某些检索条件的文档的操作,建议用db.search
sdwr 2009-07-15
  • 打赏
  • 举报
回复
试试在测试代码中用var1 = doc.ColumnValues,然后再访问var1(1)、var(2)等。
这样columnvalues的访问效率应该会有所提高。期待再次的测试结果。
numberlock 2009-07-15
  • 打赏
  • 举报
回复
时间是检验真理的唯一标准,把文档改成10万个,然后再测一下。有人为了稿费会写很多两个矛盾论点的文章。
Dinguaa 2009-07-14
  • 打赏
  • 举报
回复
事实胜于雄辩。up楼主的观点。
PowerBI系列课程之内置视觉对象和常用自定义视觉对象专题 内置视觉对象Stacked bar chart  堆积条形图Stacked column chart 堆积柱形图 - X轴按类别显示Clustered bar chart  簇状条形图Clustered column chart  簇状柱形图100% Stacked bar chart 百分比堆积条形图100% Stacked column chart 百分比堆积柱形图Line Chart  折线图-预测功能Area Chart  面积图Stacked Area Chart  堆积面积图Line and stacked column chart 折线和堆积柱形图-双Y轴Line and clustered column chart 折线和簇状柱形图Ribbon Chart  丝带图Waterfall Chart  瀑布图Funnel  漏斗图Scatter chart  散点图Pie Chart  饼图 Donut Chart 环形图TreeMap 树状图Map  地图 Filled Map 着色地图Shape Map 形状地图Gauge 仪表Card 卡片图Multi-row card 多行卡片KPI  Table 表格-条件样式Matrix 矩阵详解  Key influencers  关键影响者Decomposition tree 分解树Q&A 问答2021.6月增加分页表格视觉对象自定义视觉对象视觉对象使用建议下载排名前20,免费实用的视觉对象 AllDemo pbix介绍 Pareto 帕累托图DrillDown Donut  可钻取饼图Word Cloud   文字云Gantt  甘特图Infographic Designer  信息柱状图Timeline Slicer  时间轴切片器Chiclet Slicer 图片切片器Text Filter 文本筛选器HierarchySlicer  层级切片器Pulse Chart脉动图Power KPI Matrix  KPI矩阵Animated Bar Chart Race 动态条形图Advance Card  高级卡片Sankey Chart  桑基图Radar Chart   雷达图Dial Gauge  码表Waffle 华夫占比图Quadrant 象限图 Tornado Chart  龙卷风图Histogram Chart  直方图 Box and Whisker chart 盒线图Sunburst  阳光图Chord Chart 和弦图Bullet Chart  子弹图HTML Content  html解析视觉对象  

535

社区成员

发帖
与我相关
我的任务
社区描述
企业开发 Exchange Server
社区管理员
  • 消息协作社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧