Advertisement

Showing posts with label ZFS. Show all posts
Showing posts with label ZFS. Show all posts

Friday, October 9, 2015

RMAN vs ZFS Compression

 
Continuing from my Last blog on ZFS compression, this is the RMAN day.

I wanted to bring about few statistics in performance (time and space) but this time -
RMAN versus ZFS compression.

RMAN does compresses on the fly (cliche is it??)

I did a test of backing up 2 datafiles size 2*30GB using RMAN basic compression on ZFS with no compression enabled and then RMAN no compression with ZFS compression enabled to LZJB.

I have already shown that compressing above lzjb certainly requires you to monitor controller's cpu utilization carefully.

(My Setup is same as last time ZFS - 7330, exadata - quarter rack, with both connected using infiniband network)

Here are few statistics for your for 2 datafiles to get the maths running in the head  -
I will give for the full database next.


Raw DF size
Backup Type
Time Taken
Ratio  
Size (raw)
Size (ZFS)
Ratio (Size, appx)
(Time, appx)
61440 GB -2 Datafiles  
Normal
55 secs
1
15GB
4.0GB
1
61440 GB -2 Datafiles  
Compressed backupset
5:45 minutes
6
2.2GB
2.2GB
0.5


So now you can start doing the math in your head. Pretty neat isn't it.
Remember the compression was LZJB in the first case.  ZFS compressed it nicely.
Now here are the stats for the full databases, I have rounded out few figures for better calculation, the key idea is that you should get the broader picture..


Database
Backup Type
Time Taken
Ratio  
Size (raw)
Size (ZFS)
Ratio (Size, appx)
(Time, appx)
6.0TB
Normal
2 hours
1
2.8T
1.8T
1.5
6.0TB
Compressed backupset
10 hours
5
1.2T
1.2T
1

Note - Am not really good in formatting, so you see some stuff moving out of the ruler lines, pardon me for that :).

Wednesday, October 7, 2015

ZFS - Compression

 
ZFS compression is one of a real great things I like about ZFS, (apart from it's powerful cloning and snapshot abilities).

ZFS compresses data on the fly.

So what does that means to you?  Well a lot of your data can go over ZFS. Specially if you are on Exadata, I can think of below

  1. Exa Backup  (Exadata File System Backup)
  2. Oracle Backup
  3. Exa Watcher
  4. Golden Gate

I pick the first one from the list, Exa Backup for my test.  I backed up 2 compute nodes of a quarter rack and noted few metrics. 
I'll derive conclusion next, after you have a look at the statistics. 


Compression
Avg CPU
Raw Size
Compressed Size
Compression Ratio
Duration
Avg Throughput (GB / min)
LZJB
12%
180GB
81 GB
2.22
16 min
11.25
GZIP Fast
25%
180GB
68GB
2.65
18 min

10
GZIP Default
50%
180GB
66 GB
2.73
24 min
7.5




ZFS offers one more level of compression but I skipped it. 
If you notice carefully the gzip fast offers good level of compression with a throughput of 10GB/minute. (Note the test was on infiniband so the max therotical throughput level is 40Gb/sec )

Well now you might be tricked into using Gzip fast, but note I tested this without any load on the system, this was the only load. 

The take away is to monitor the load on the ZFS controller cpu utilization.
(my config is 7330, clustered Active-Passive configuration)

So gzip fast is good, as long as you have the controller sitting idle most of the times, else the other mounts will become virtually unusable, (believe me!!! )

the throughput is great, so if you can plan smartly, you can plan 20 minutes when the ZFS is least utilized. Try not to do parallel writing with compression, this increases the CPU overhead. 

I will be posting ZFS vs rman compression very soon, till then below is the screenshot of cpu utilization from ZFS controller. 
There are 3 periods -
And I leave it to you the intelligent to figure out which peak is for which compression level.