监视 HADB 数据(磁盘存储)设备的空闲空间:
按照例程,要检查磁盘空间使用的趋向。
作为预防性维护的一部分:如果用户负载已增加,并且您希望重新调整数据库配置的大小或比例。
作为增大数据库的一部分:运行 hadbm addnodes 将新节点添加到系统之前,检查是否有足够的设备空间。请记住,要添加节点您需要现有节点所占的大约 40-50% 的空闲空间。
当您在历史文件和 server.log 文件中看到如下消息时
No free blocks on data devices
No unreserved blocks on data devices 。
使用 hadbm deviceinfo 命令获取关于数据设备上空闲空间的信息。该命令显示了数据库每个节点的以下信息:
分配的总设备大小,以 MB 为单位 (Totalsize)。
空闲空间,以 MB 为单位 (Freesize)。
设备当前的使用率 (Usage)。
该命令语法为:
hadbm deviceinfo [--details] [--adminpassword=password | --adminpasswordfile=file] [--agent=maurl] [dbname]
dbname 操作数指定数据库名称。默认值为 hadb。
--details 选项显示了以下其他信息:
设备的读取操作数目。
设备的写入操作数目。
设备的名称。
有关其他命令选项的说明,请参见常规选项。
有关更多信息,请参见 hadbm-deviceinfo(1)。
要确定用户数据的可用空间,请用总设备大小减去为 HADB 保留的空间:即四倍的 LogBufferSize + 1% 的设备大小。如果不知道日志缓冲区的大小,请使用命令 hadbm get logbufferSize。例如,如果总设备大小为 128 MB,LogBufferSize 为 24 MB,则用户数据的可用空间为 128 – (4 x 24) = 32 MB。32 MB 中一半用于已复制的数据,大约百分之一用于索引,只有百分之二十五用于实际用户数据。
总大小和保留大小之间的差额为用户数据的可用空间。如果将来对数据进行重新分段,则空闲大小必须为用户数据可用空间的大约 50%。如果不进行重新分段,则可以最大限度地利用数据设备。如果系统在设备空间不足的情况下运行,则资源消耗警告将被写入历史文件。
有关调节 HADB 的更多信息,请参见 Sun Java System Application Server Performance Tuning Guide。
以下命令:
hadbm deviceinfo --details
显示以下示例结果:
NodeNO Totalsize Freesize Usage NReads NWrites DeviceName 0 128 120 6% 10000 5000 C:\Sun\SUNWhadb\hadb.data.0 1 128 124 3% 10000 5000 C:\Sun\SUNWhadb\hadb.data.1 2 128 126 2% 9500 4500 C:\Sun\SUNWhadb\hadb.data.2 3 128 126 2% 9500 4500 C:\Sun\SUNWhadb\hadb.data.3