数据库管理-第四十九期 Exadata的存储节点管理(20221223)
数据库管理 2022-12-23
- 第四十九期 Exadata的存储节点管理
- 1 咋个查看数据是否被缓存到闪存卡了没
- 2 EM13.5的Exadata监控
- 3 存储降级
- 总结
第四十九期 Exadata的存储节点管理
本周二,抗原终于阴性了,星期三开始就回到现场开始办公。上周既然说了Exadata关于存储节点缓存的问题,本周就展开说一下关于Exadata存储节点的一些东西。
1 咋个查看数据是否被缓存到闪存卡了没
40s->0.03是,1333.33倍的提升,由此可以看出闪存卡和傲腾内存的性能,其实返回到第二十四期针对硬件的讲解就能知道NVMe SSD的性能有多变态,而且在一体机上还仅仅是PCIe 3.0的NVMe SSD,现在主流的PCIe 4.0是3.0带宽的2倍,即将到来的PCIe 5.0则是再次翻倍。靠SSD支撑大数据能力的时代其实已经到来了。
绕回一体机存储节点来,要查看存储节点是否缓存了对应表数据需要先查询对应object的data_object_id:
select owner,object_type,object_name,object_id,data_object_id from dba_objects where object_name='TXXX';
这里需要注意,如果是分区表,主表是没有data_object_id的,查看缓存情况需要查看分区的data_object_id。也因为这个原因,在对分区表手动刷缓存的时候,需要对分区进行select count(*)操作。
接下来我们需要连接到存储节点用以下命令进行查看:
cellcli -e list flashcachecontent attributes cachedKeepSize,cachedsize,hitCount,cachedWriteSize,missCount where objectNumber=<data_object_id> ;
这里就可以看到data_object_id为88021的分区已经缓存在闪存卡里面了。这里还需要注意并不是每个存储节点都一定会高速缓存同样的一份数据。
2 EM13.5的Exadata监控
在之前的某一期使用EM13.4讲解过X8-2那台的监控,而目前X9M-2使用新安装的EM13.5进行监控,除开本来的硬件监控以外,在数据库监控页面还有专门针对Exadata的监控项:
进入之后就能看到非常详尽的Exadata监控:
Exadata Details里面还能看到更多内容:
存储节点及缓存内容概览:
磁盘类型概览:
磁盘详情:
Smart IO详情:
IO详情:
配置详情:
通过EM13.5可以更加精细的监控Exadata存储的各项性能。
3 存储降级
当某个储节点闪存卡或者傲腾出现异常时,这个存储节点将无法提供完整的存储高速缓存能力,在闪存卡或傲腾没有全部异常的情况下,Exadata并不会直接让这个存储节点下线而是将这个节点降级。通俗点的解释就是按照这个节点剩余的高速缓存能力,分配相应比例更少的存储节点性能到集群。这种情况下在EM监控的IO详情里面就会发现这个存储节点的性能表现会低于其他存储节点。
如果是HDD出现异常,以为一般HIGH冗余是三副本,以1/4三个存储节点为例,每个磁盘在另外两个存储节点上都会有一块磁盘作为副本。因此在HDD出现异常是,这个计算节点将不会缓存这个HDD所包含的数据,针对全局高速缓存的数据将根据实际使用在节点间进行平衡。
存储的硬件故障可以通过EM的软硬件监控实现,但是曾经也发现过闪存卡故障,EM未告警的情况,所以定期的ILOM和exachk检查还是很有必要的。当然也可以通过下面的命令检查存储节点各类磁盘的情况:
CellCLI> LIST PHYSICALDISK
CellCLI> LIST PHYSICALDISK WHERE disktype=flashdisk AND status=failed DETAIL
CellCLI> LIST PHYSICALDISK WHERE disktype=PMEM AND status=failed DETAIL
CellCLI> LIST GRIDDISK ATTRIBUTES name, asmmodestatus
闪存卡和傲腾的降级有以下几个状态:
- warning - predictive failure
- warning - poor performance
- warning - write-through caching
- warning - peer failure
并可通过以下命令对闪存卡和傲腾进行检查:
CellCLI> LIST PHYSICALDISK WHERE DISKTYPE=flashdisk AND STATUS= 'warning - predictive failure' DETAIL
CellCLI> LIST PHYSICALDISK WHERE DISKTYPE=PMEM AND STATUS= 'warning - poor performance' DETAIL
通过下面的命令也可以检查所有磁盘相信信息:
CellCLI> LIST DISKMAP
更多信息可以查看官方文档:https://docs.oracle.com/en/engineered-systems/exadata-database-machine/dbmmn/index.html
总结
老规矩,知道写了些啥。