Oracle #GoldenGate Replicate Apply (Run) Rate
For a couple of weeks now, I’ve been trying to figure out a way to identify the size of data for transactions that are getting processed over a give period of time with Oracle GoldenGate. When I started to think through the process, I keyed in on the Relative Byte Address (RBA). What is the RBA? From reading Oracle’s GoldenGate documentation, the RBA is mostly a marker within the trail file to identify the location of the transaction. This got me to thinking; maybe I can use the RBA to “estimate” the amount of data applied to the source over a period of time (compare 2 RBAs).
Before I ventured off in the unknown; I wanted to verify if there was a method already identified by Oracle. What I found in MOS was Note ID: 1356524.1. This note deals mostly with how to identify the speed of the extraction process. What I found interesting in this note is that Oracle is using the RBA to help calculate the amount of data being extracted. With this note in hand, I felt comfortable in using the RBA to “estimate” the amount of data being applied by a replicat.
Note: How to estimate Goldengate extract redo processing speed? (Doc ID 1356524.1)
A few sentences ago, I mentioned that I wanted to compare 2 RBAs to “estimate” the amount of data applied over a period of time. In order to do this, I need to convert the RBA into meaningful number.
The following formulas I used to convert the RBA to megabytes and then into the metrics I wanted:
(($sec_rba - $first_rba)/(1024*1024)) <- find the “estimated” size applied in MB ($mb_min*60) <- find the “estimate” size applied over an hour in MB ($mb_hr/(1024)) <- find the “estimate” size applied in GB for an hour ($gb_hr*24) <- find the “estimate” size for a day in GB
Now the question was how can I grab this information from each replicat. The information I needed could be found by doing a “info replicat <replicat>, detail” (The detail part is not really needed, just use it to list out all the associated trail files). The output from the info command looks similar to this:
Info Replicat Output:
The thing to keep in mind is that I’m only concern about two lines in this output. The first line is the “Log Read Checkpoint” and the second line that has the Date and RBA number. Now in order to gather this information and do the calculations using the RBA, I wrote a Perl script. The for this basics of the script are below:
#!/usr/bin/perl -w # #Author: Bobby Curtis, Oracle ACE #Copyright: 2014 #Title: gg_run_rate_from_rba.pl # use strict; use warnings; #Static Variables my $gghome = "/u01/app/oracle/product/12.1.2/ogg"; my $outfile = "/tmp/gg_replicat_runrates.txt"; my $sleeptime = 60; my $gguser = "c##ggate"; my $ggpass = "ggate"; my @process = ("replicat"); my $replicat; my($date1,$curtrail1,$rba1); my($date2,$curtrail2,$rba2); my($rate_min, $rate_hr, $rate_gb_hr, $rate_gb_day); #Program open (RUNRATES, ">>$outfile") or die "Unable to open file"; foreach my $i(@process) { my @process_name = `ps -ef | grep dirprm | grep $i | grep -v grep | awk '{print \$14}'`; my @replicats = @process_name; foreach (@replicats) { $replicat = $_; chomp($replicat); check_replicat($gguser, $ggpass, $replicat); ($curtrail1,$date1,$rba1) = check_replicat(); #print "$curtrail1 -> $date1 -> $rba1\n"; sleep($sleeptime); check_replicat($gguser, $ggpass, $replicat); ($curtrail2,$date2,$rba2) = check_replicat(); #print "$curtrail2 -> $date2 -> $rba2\n"; calc_rate($rba1,$rba2); ($rate_min, $rate_hr, $rate_gb_hr, $rate_gb_day) = calc_rate(); print RUNRATES "$replicat|$date1|$curtrail1|$rba1|$date2|$curtrail2|$rba2|$rate_min|$rate_hr|$rate_gb_hr|$rate_gb_day\n"; } } close (RUNRATES); ################# #Sub Programs ################# sub check_replicat { my @buf = `$gghome/ggsci << EOF dblogin userid $gguser\@pdb2 password $ggpass info replicat $replicat, detail EOF`; my $curtrail; my $date; my $rba; foreach (@buf) { if (/Log Read Checkpoint/) { if (m/(\.\/\w+\/\w+)/g) { $curtrail = $1; } } if (/RBA/) { if (m/(\d{4})-(\d{2})-(\d{2}) (\d{2}):(\d{2}):(\d{2})/g) { $date = $1."-".$2."-".$3." ".$4.":".$5.":".$6; } if (m/RBA (\d+)/g) { $rba = $1; } } } return($curtrail,$date,$rba); } #end sub check_replicat sub calc_rate { my $first_rba = $rba1; my $sec_rba = $rba2; my $mb_min = (($sec_rba-$first_rba)/(1024*1024)); my $mb_hr = ($mb_min*60); my $gb_hr = ($mb_hr/(1024)); my $gb_day = ($gb_hr*24); return ($mb_min,$mb_hr,$gb_hr, $gb_day); } #end sub calc_rate
This script is a bit longer than I like; however, it will capture all information required and then waits 60 seconds and gather the information again for the replicat it is working on. Once the first and second RBA are grabbed then the script writes the output to a flat file with the calculations for MB per min, MB per hour, GB per hour and GB per day.
Once the flat file has been written, I can now use an external table that will allow me to view this data from SQL (see my other post on monitoring GG from SQL..here). Using the external table, I can see what my run rates are from any SQL capable tool. Below is a simple query to pull the data from the external table.
Note: Some numbers in the output may be negative. This is due to the subtraction between RBA2 (smaller) and RBA1 (larger).
select repgroup as processgroup, to_char(date1, 'DD-MON-YY HH:MI:SS') snap1, curtrail1 as snap1_trail, rba1 as snap1_rba, to_char(date1, 'DD-MON-YY HH:MI:SS') snap2, curtrail2 as snap2_trail, rba2 as snap2_rba, rate_min_mb, rate_hr_mb, rate_hr_gb, rate_day_gb from gghb.replicat_runrates where repgroup = 'REP'; --Output (unformatted)-- PROCESSG SNAP1 SNAP1_TRAIL SNAP1_RBA SNAP2 SNAP2_TRAIL SNAP2_RBA RATE_MIN_MB RATE_HR_MB RATE_HR_GB RATE_DAY_GB -------- ------------------ ------------------------------ ---------- ------------------ ------------------------------ ---------- ----------- ---------- ---------- ----------- REP 22-MAY-14 01:38:51 ./dirdat/rt000034 2905346 22-MAY-14 01:38:51 ./dirdat/rt000034 3197702 286 17130 17 401 REP 22-MAY-14 01:39:49 ./dirdat/rt000034 3197702 22-MAY-14 01:39:49 ./dirdat/rt000034 3521610 316 18979 19 445 REP 22-MAY-14 01:40:50 ./dirdat/rt000034 3521610 22-MAY-14 01:40:50 ./dirdat/rt000034 3802260 274 16444 16 385 REP 22-MAY-14 01:41:49 ./dirdat/rt000034 3802260 22-MAY-14 01:41:49 ./dirdat/rt000034 4112529 303 18180 18 426 REP 22-MAY-14 01:42:49 ./dirdat/rt000034 4112529 22-MAY-14 01:42:49 ./dirdat/rt000034 4463477 343 20563 20 482
Being able to use an external table to view run rates additional scripts can be written to report on what is going on within the Oracle GoldenGate apply process. Allowing administrators a better understanding of what is going on within their environments. At the same time, I think this information is valuable in the turning process of Oracle GoldenGate as environment grown.
Let me know your thoughts and comments on this, because it is always interesting to see how other organizations solve these issues as well.
Enjoy!
twitter: @dbasolved
blog: http://dbasolved.com
Bobby Curtis
I’m Bobby Curtis and I’m just your normal average guy who has been working in the technology field for awhile (started when I was 18 with the US Army). The goal of this blog has changed a bit over the years. Initially, it was a general blog where I wrote thoughts down. Then it changed to focus on the Oracle Database, Oracle Enterprise Manager, and eventually Oracle GoldenGate.
If you want to follow me on a more timely manner, I can be followed on twitter at @dbasolved or on LinkedIn under “Bobby Curtis MBA”.
Floyd, USA 2022 06 27 01 22 03 priligy without prescription This occurs through head movement that causes endolymph to move specialized cells known as hair cells
MIOTOTO merupakan platform togel terpercaya yang menawarkan pengalaman login tercepat, proses daftar mudah, serta pengalaman bermain yang aman dan nyaman untuk para pecinta togel online.
Hello, i read your blog occasionally and i own a similar one and i was just curious if you get a lot of
spam comments? If so how do you stop it, any plugin or anything you can recommend?
I get so much lately it’s driving me mad so any assistance is very
much appreciated.
I have been browsing online more than 2 hours today, yet I
never found any interesting article like yours. It is pretty worth enough for me.
Personally, if all site owners and bloggers made good content as you did, the net
will be much more useful than ever before.
Sweet Bonanza, büyük kazançlar sunan eğlenceli bir slot oyunu olsa da, oyunun dinamiklerini anlamak ve doğru stratejileri uygulamak kazanma şansınızı artırabilir. Sweet Bonanza ipuçları empieza stratejileri, oyunda daha bilinçli kararlar almanıza yardımcı olur. İşte oyunda başarılı olmanızı sağlayacak bazı ipuçları ve taktikler. Oyunun ne olduğundan başlamamızın ardından Sweet Bonanza’nın geliştiricisi ve sahibi olan Pragmatic Have fun hakkında bazı bilgiler vereceğiz. Sonrasında ise Sweet Bonanza’da bulunan kurallar ve tasarım detayları gibi konuları irdeledikten sonra oyundaki RTP ve varyasyondan bahsedeceğiz. Sweet Bienestar oynamadan önce kurallara genel bir göz atmalısınız. Oyunu risksiz bir şekilde düzenlemek için kayıt olmak gerekli değildir. Ancak çevrimiçi bir casino sitesine kaydolmanızı öneririz, çünkü demo versiyonunu oynadıktan sonra Sweet Bonanza’yı gerçek para ile oynamak kolay olacaktır. Sweet Bonanza çevrimiçi slotu oyuncuları hemen şeker dolu bir evrene, şekerlemeler, meyve sembolleri ve diğer lezzetlere götürecek. Parlak tasarım ve dikkati dağıtmayan müzik eşliğinde ana temayı mükemmel bir şekilde vurgular.
https://ckan.obis.org/user/ligeripbo1971
Casino Slots Free Vegas Slot Machines Slots Journey – Slot Casinosu CASINO BONANZA: SLOTS FUN! CASINO BONANZA: SLOTS FUN! Bonanza Party: 777 Slot Casino Slots Journey – Slot Casinosu Slots Journey – Slot Casinosu You can email the site owner to let them know you were blocked. Please include what you were doing when this page came up and the Cloudflare Ray ID found at the bottom of this page. CASINO BONANZA: SLOTS FUN! Bonanza Party: 777 Slot Casino Slots Journey – Slot Casinosu Bonanza Party: 777 Slot Casino CASINO BONANZA: SLOTS FUN! Slots Journey – Slot Casinosu CASINO BONANZA: SLOTS FUN! Slots Journey – Slot Casinosu You can email the site owner to let them know you were blocked. Please include what you were doing when this page came up and the Cloudflare Ray ID found at the bottom of this page.
I am really glad to read this blog posts which contains
tons of valuable facts, thanks for providing these kinds of statistics.
Ganhe Facilmente com os Jogos do Cassino Online 365 bet! Jogar em cassinos online deve ser encarado como uma atividade de lazer, não como um meio para enriquecer. O jogo responsável visa prevenir o vício e proteger grupos vulneráveis, como menores e Swinger social is a growing style that is gathering popularity all over the globe. it is a social task that involves folks who are enthusiastic about intimate activities that go beyond the traditional boundaries of old-fashioned relationships. swinger social could be a terrific way to explore your sex also to connect with brand new people. if you’re enthusiastic about joining a swinger social group, there are a few items that you need to do. first, you’ll want to find friends which compatible with your lifestyle and interests. second, you need to make sure that the team is secure and safe. polyamorous-chat.html
https://webdigi.net/page/business-services/https-pokerpolonia-pl-
O down load do jogo é rápido e fácil de hacer, garantindo la cual operating system jogadores possam acessar teus jogos favoritos continuamente o qual desejarem, sem a necessidade de acesso à internet. Optei durante pesquisar cependant jogos de uma Matter-of-fact Have fun pois a provedora accede que os cassinos on the internet decidam o Auto-generated excerpt Home » 888starz bd Home » 1Win AZ Casino Join the community of enthusiastic players and dive into the exhilarating world of Aviator APK. With a simple download, you can start your journey to uncover the secrets of the skies and potentially walk away with massive wins! Click the link below to start your adventure today! Your bank account merely needs for adequate money to experience the new specific position games you’ve chosen. You can trust you to definitely casinos offering which incentive have been in existence for a time and therefore are legitimate. You could think this refers to a lot of the on the internet casinos, but one to’s untrue. There are a few what to remember while you look for an established, feature-rich internet casino.
constantly i used to read smaller articles which also clear their motive, and that is also happening with
this piece of writing which I am reading at this time.
Somebody necessarily lend a hand to make seriously articles I might state.
This is the very first time I frequented your website
page and thus far? I surprised with the analysis you made to make
this particular post extraordinary. Magnificent activity!
It’s an amazing paragraph designed for all the internet people;
they will get benefit from it I am sure.
I’ll right away clutch your rss feed as I can not in finding your email subscription hyperlink or e-newsletter service.
Do you’ve any? Please allow me recognise in order that I may just subscribe.
Thanks.
Way cool! Some extremely valid points! I appreciate you penning this write-up and also the rest of the website is very good.
Terrific article! This is the type of info that are meant to be shared around the net.
Shame on the search engines for now not positioning this submit higher!
Come on over and consult with my website . Thank you
=)
Content Mərclərin növləri Milanın 9 il əvvəl Çempionlar Liqasında son oyunu – Qattuzo, Kaka və… Saitek Aviator joystick USB w stylu retro z kontrolą ciągu i autentycznymi przełącznikami dźwigienkowymi Udało Ci się znaleźć niższą cenę? Daj nam znać. Wprawdzie nie zawsze możemy zaoferować zgłoszoną cenę, jednak weźmiemy Twoją opinię pod uwagę, aby zagwarantować konkurencyjność naszych cen. Jak widać, Pin Up Casino to świetna opcja do gry w grę Lucky Jet Crash. Kasyno oferuje wiele bonusów i promocji, a także szeroki wybór gier do wyboru. Również możesz dołączyć do turnieju gry Lucky Jet Crash i uzyskać szansę na wygranie wspaniałych nagród. Tak więc, jeśli szukasz zabawnego i ekscytującego kasyna do gry, Pin Up Casino jest zdecydowanie właściwym wyborem dla Ciebie!
https://www.gta5-mods.com/users/httpspubblac
Umożliwiają zapamiętanie Twoich preferencji i ustawień, dostarczając ulepszone, bardziej spersonalizowane funkcje, np. sposób wyświetlania, filtrowania czy sortowania produktów. Tego typu pliki cookie umożliwiają prawidłowe działanie sklepu: logowania, nawigowania, korzystania z koszyka, ulubionych oraz dokonywania zakupów. Brak tych plików spowodowałby brak możliwości korzystanie ze sklepu w bezpieczny sposób. Umożliwiają zapamiętanie Twoich preferencji i ustawień, dostarczając ulepszone, bardziej spersonalizowane funkcje, np. sposób wyświetlania, filtrowania czy sortowania produktów. Decydując się na zakup u nas, otrzymasz zegarek Aviator zapakowany w stylowe opakowanie, podbitą kartę gwarancyjną i instrukcję obsługi w języku polskim. Oferujemy nie tylko Aviator zegarki męskie, ale też damskie modele należące do kolekcji Moonflight.
I don’t know whether it’s just me or if everyone else experiencing
issues with your blog. It seems like some of the text in your posts are running off
the screen. Can someone else please provide feedback and
let me know if this is happening to them too? This could be
a issue with my internet browser because I’ve had this happen before.
Thank you
Great beat ! I would like to apprentice while you amend your web site, how can i
subscribe for a blog site? The account helped me a acceptable deal.
I had been a little bit acquainted of this your broadcast offered bright clear idea
Very quickly this web site will be famous among all blogging viewers, due to it’s nice content
My blog :: eharmony special coupon code 2025
Hi there! This is kind of off topic but I need some guidance from
an established blog. Is it very hard to set up your own blog?
I’m not very techincal but I can figure things
out pretty quick. I’m thinking about making my own but I’m not sure where to start.
Do you have any tips or suggestions? Thank
you
my web-site; vpn
Casino game bonuses are always a welcome incentive, and some of the ongoing or limited-time casino bonuses offered at BetMGM Casino could apply to the Big Bass Bonanza slot. All you have to do is register or log in to BetMGM Casino and explore the current casino bonuses for Deposit Match, free spins, and more. Released in April 2025, Big Bass Bonanza 1000 sees Big Bass Bonanza meet the 1000 series. Very similar other games in the Big Bass slots series, it’s played on 5 reels and 10 paylines from 10p a spin. In the free spins, Fisherman Wilds collect fish money symbols which are worth up to 1,000 x your total bet. Every 4th Fisherman Wild gives you more free spins and applies a win multiplier up to 10x to collected fish money symbols. With a 96.51% RTP rate, this game offers 20,000 x bet max wins (joint top with Big Bass Hold & Spinner Megaways).
http://www.rohitab.com/discuss/user/2864310-sweetbonanzaimobilegame/
If you want something with more potential, there is also a Megaways version available titled Big Bass Bonanza Megaways. Alternatively, if you’re in the holiday spirit, you can always load up Christmas Bigger Bass Bonanza. If you’ve played one Big Bass Bonanza-related slot, it’s not so much a case of necessarily having played them all, but they do tend to share similarities. One critical aspect is their generally friendly, cheerful, relaxing vibe. The colours are bright, the soundtrack bubbly, making easing into them an effortless process. Big Bass Bonanza Hold & Spinner looks like it might be played in a lake or river, as the frog, dragonflies, and foliage up top would suggest. This might not be big game fishing out on the open sea, but there are plenty of fish swimming about in the watery area in the background to whet appetites.
This is a topic which is close to my heart… Thank you!
Where are your contact details though?