主题:數據筆數達到億級,甚至十億級時用什麼最合適?
GEORGECHIN
[专家分:440] 发布于 2010-12-01 08:53:00
[size=4]近幾天一個客戶要對工廠的每一個產品進行有效管控(如一支藥品,生產一支就要管控一只),其管控的方式是從入庫就要開始,直到分銷到終端客戶為止!如此龐大的數據,VFP自帶的DBF能夠支持嗎?如果不可以,SQL表現又如何?
PS:如此管控有意義嗎?記得像藥品之類的都是以批號管理,而非單一最小包裝產品啊![/size]
回复列表 (共8个回复)
沙发
martine [专家分:4950] 发布于 2010-12-02 10:34:00
DBF也可以,大不了多拆几个呗
板凳
GEORGECHIN [专家分:440] 发布于 2010-12-02 18:42:00
今天用循環做了一個測試,才兩個字段,一個字段日期時間型,一個字段字符型,16個字符,記錄到8500多萬的時候,數據表就已經到了2GB,過极限了,所以我不知道VFP單表記錄10億條和單表檔案大小2GB是如何進行換算的.
3 楼
moz [专家分:37620] 发布于 2010-12-02 22:25:00
日期时间型 -8
字符型 -16
8+16=24 24+1个删除/分隔符=25 25*85,000,000=2,125,000,000
还没有把文件头算进来
如果一定要用VFP
1.按周期(年)分文件
2.定期压缩RAR备份,(我是在主机开机自动运行RAR压缩)
4 楼
wuzhouhong [专家分:10890] 发布于 2010-12-04 19:17:00
Vf 的最大记录数量是10亿。显然不够多。
5 楼
重磅炸蛋 [专家分:80] 发布于 2010-12-06 22:49:00
按批次分表记录,按年度(或一定时间段)分开。
6 楼
GEORGECHIN [专家分:440] 发布于 2010-12-08 11:27:00
[quote]Vf 的最大记录数量是10亿。显然不够多。
[/quote]
其實10億條記錄只是一個理論上的筆數規定,且VF又對單表最大容量從文件大小上作了2G的限制,所以按照MOZ的計算方式,作為一個有用的表,能容納5000萬條記錄都已經很不錯了.
程序已經寫死了,換后台(DBF到SQL或其它)意味著換9成以上的代碼,這是一個相當大的工作量. 拆分表從理論上倒是可行,先試試看.然后我會把拆的結果放上來
7 楼
重磅炸蛋 [专家分:80] 发布于 2010-12-10 00:18:00
9成以上的代码,不会吧,大不了也就几个判断加临时表合并,没有什么大不了的。
如果真要改9成的代码,这样的系统改进程度也太大了点哟。
借着点酒劲使劲的说!!
8 楼
GEORGECHIN [专家分:440] 发布于 2010-12-13 11:43:00
[quote]9成以上的代码,不会吧,大不了也就几个判断加临时表合并,没有什么大不了的。
如果真要改9成的代码,这样的系统改进程度也太大了点哟。
借着点酒劲使劲的说!![/quote]
因為所有的代碼都是基於桌面型數據庫所寫的,關聯判斷,數據存儲,控件資料來源等等都是這樣寫的,所以換,就意味著代碼重寫.
PS:這種桌面型的數據,如何防止用戶用VFP程序直接更改?在网絡環境中,各位又是怎麼解決的呢?還是說根本就不用VFP自帶的數據庫?
我来回复