作者reader (读者)
看板CSSE
标题Re: [心得] 资料存取
时间Thu Mar 10 00:23:26 2005
※ 引述《reader (读者)》之铭言:
: 标题: [心得] 资料存取
: 时间: Wed Mar 9 06:51:43 2005
:
: 推 jeunder:我很好奇, 怎样的应用会需要以上的存取方式? 61.230.218.37 03/09
应用太多了吧。
它可以取代多种资料结构,或用简单包装就可以制作出多种资料结构,
一个无限维度的疏散阵列,要模拟其他资料结构是很容易的。
在物件导向相关应用上,则最实用的地方就是物件资料库了,我们可以
把所有重要物件依型别、指标、相依性等等登记起来,往後要做什麽都
方便,例如 garbage collection, message dispatching, object
persistence 等等。一些小型应用也可以不需要连结外部资料库,直接
用这样的类别来做,理论上它比传统资料库更有延展性。
此外,由於树状结构的资料格式愈来愈重要 (例如 XML), 方便的树状
结构存取,也是它的优势。当然传统的文字处理,也有用得到的地方。
*
当然,重点是效能和空间。若疏散阵列的效能低於其他资料结构太多,
自然不成,反之则不需要独立制作多种资料结构,而可以用疏散阵列来
模拟。
目前实作上,只要把循序 travelling 砍掉,我就能做到不错的效果。
说穿了,因为我本来就做好一维的疏散阵列,效能还不错,对我来说,
只是改成多维而已。
早期我是用 B+ tree 来做,後来改用更浪费空间,但效能更高的结构,
现在用得还算满意,这也是我做高效能网路应用的最大依靠了,别人都
要连接外部资料库,很多时候都是杀鸡用牛刀,而我可以在程式内直接
处理...
*
等我把这东西搞定,程式库翻修好,再据此改写 visual object 设计
(这也是一大应用),如果下半年不太穷也不太忙的话,希望就可以
开始制作自己的应用程式了。
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.222.173.26
1F:推 Eventis:有什麽特殊的定址技巧吗? 61.62.49.43 03/10
2F:→ Eventis:因为维度上升对效能的影响似乎很大. 61.62.49.43 03/10
3F:→ Eventis:不是很能从一维效能不错, 61.62.49.43 03/10
4F:→ Eventis:就能直接推到一维的一维的一维的..效能不错吧? 61.62.49.43 03/10
5F:推 tkbible:多维度的资料结构,可能会使complexity上升 218.166.77.82 03/12
6F:→ tkbible:就以2D DCT转换,也都反而拆成2个1D来完成 218.166.77.82 03/12
7F:→ tkbible:使得时间复杂度得到最佳化 218.166.77.82 03/12
8F:推 Eventis:-.-"...这应该是不同的情形吧. 61.62.49.43 03/13
9F:→ Eventis:2D-dct可以用一维转化是因为结构本身的特性 61.62.49.43 03/13
10F:→ Eventis:但是这个结构很单纯的是要做多维的定址. 61.62.49.43 03/13
11F:→ Eventis:处理时必须要保有各个维度的资讯. 61.62.49.43 03/13
12F:→ Eventis:再加上维度是任意给定的,情况就更复杂. 61.62.49.43 03/13
13F:推 Eventis:假设纯一维的定址运算量是n 61.62.49.43 03/13
14F:→ Eventis:任意多维的worst case就是n^n啊@@ 61.62.49.43 03/13
15F:→ Eventis:n^n以上@@ 61.62.49.43 03/13
16F:→ Eventis:势必要以不同的方式来存取吧=.=" 61.62.49.43 03/13
17F:→ Eventis:XD...不过反正板主有回答了XD 61.62.49.43 03/13