欢迎来到Doc100.Net免费学习资源知识分享平台!
您的位置:首页 > 程序异常 >

怎样动态监测数据库中的数据量,超过设定值,则将超过的部分数据导出并从库中删除?以下这个解决办法可行吗

更新时间: 2014-01-05 02:20:27 责任编辑: Author_N1

 

怎样动态监测数据库中的数据量,超过设定值,则将超过的部分数据导出并从库中删除?---------以下这个解决方法可行吗?
informix数据库中,某些表的数据量非常大,现在希望能在数据量超过某个阈值的时候,能将部分数据导出并从库中删除。
比如某个表设定数据量最大为100万,但是到了某个时间发现是150万,现在想将最早时间的50万数据导出并删除。

现在的问题:
1.怎样动态监测表中的数据量是否超过设定值? 比如100万,如果不用定时轮询线程(考虑到不容易确定一个比较合适的定时间隔),用触发器可以吗?
2.如果数据量超过设定值(100万),先按照时间字段升序排列(对150万排序),再将前面最久时间的50万数据导出并删除。
如果考虑到效率,感觉问题比较多,比如对于海量数据排序按字段排序会不会比较慢?对于数据库表中的记录,有没有办法不用时间字段排序,数据库的系统表中有相关信息吗?


--参考方法--
用个时间戳字段,定期自动就会排序
--参考方法--
1,编写A.JAVA类 实现: 导出数据到指定地点. 考虑数据量比较大,可以(DB2sql) select rownumber()over() f, a.* from tt a where f>1000000 ,最好表多个字段来表示是否导出
2,widows有自动执行任务,可按任意设定时间执行A.JAVA类的bat文件
上一篇:上一篇
下一篇:下一篇

 

随机推荐程序问答结果

 

 

如对文章有任何疑问请提交到问题反馈,或者您对内容不满意,请您反馈给我们DOC100.NET论坛发贴求解。
DOC100.NET资源网,机器学习分类整理更新日期::2014-01-05 02:20:27
如需转载,请注明文章出处和来源网址:http://www.doc100.net/bugs/t/8664/
本文WWW.DOC100.NET DOC100.NET版权所有。