zhi206 发表于 2010-3-23 22:48:00

请教高手,表未建索引,bcp in时却占用大量索引空间

bcp in数据时,目标表未建任何索引和触发器,在导入时报空间不足的错误提示,查看了数据库属性,在设备使用情况中,索引占用了特别大的空间,为什么会这样?如何解决?请各位高手帮忙解决,不胜感激!

andkylee 发表于 2010-3-24 09:03:23

索引占用了特别大的空间,这个表述不知道是否属实。

总之,分配足够的空间,先将bcp in搞定再说。

按理说不应该占用这么大的空间。

zhi206 发表于 2010-3-24 21:11:23

不好意思,表述不大清cp楚,因为我的表数据挺大的,200W条,导出来3G多,
导入的时候在sybase central 里面查看数据的信息,见下图


图里面显示的类型为索引的,是index索引吗?

andkylee 发表于 2010-3-25 01:12:29

200w的数据就有3G,表里面有text或者image类型吧。
sybase中将大文本类型text或者image的空间计算到索引上去了。

通过看到你的数据段才使用了198M多,远远小于3G。则可以证明上述所说。

我不知道你的数据库配置的页面时多大的?
假如是2K吧。
针对于你的每一条记录,大约占用:1.5K (3G/200 万行)
也就是说每条记录的大文本内容需要至少占用一页的空间(1.5K比2k的页面要小,占用2页的可能性不大)
这样算起来,200万行的数据,就要占用4G多了吧。
如果你的页面配置的是4k呢?应该就8G多了吧?

这是理想状态下。

假如你的这个抓图是bcp in之后马上抓的,没有进行任何的reorg等维护操作。
我感觉还有个可能就是sybase在bcp in 的时候没有完全使用掉一个分区(extent)。因为在bcp in 的时候分配空间是以extent为单位(8个页面)。也就是说给分配的8个页面没有使用完全,那么这么多页面也会浪费掉很多吧!

所以显示出来的索引占用近11G不足为奇 !

dgsc 发表于 2010-3-25 13:21:17

嗯 说的好!~

zhi206 发表于 2010-3-30 19:20:37

谢谢,andkylee 说的很详细,学习到了。

Tiger.wang 发表于 2010-9-17 14:03:07

我也正遇到这个问题 能跟我讲讲为什么吗   谢谢
页: [1]
查看完整版本: 请教高手,表未建索引,bcp in时却占用大量索引空间

免责声明:
本站所发布的一切破解补丁、注册机和注册信息及软件的解密分析文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。

Mail To:Admin@SybaseBbs.com