Availability Digest: Cellular Provider Goes Active/Active For Prepaid Calls
Availability Digest: Cellular Provider Goes Active/Active For Prepaid Calls
Availability Digest
September 2008
Recharge IN Platforms
To add money to his account via his cell phone, a subscriber dials a special number. This connects him to the companys Prepaid Recharge System through an automatic voice response system. This system will lead him through a menu from which he picks his appropriate service. If he chooses to redeem a prepaid calling card voucher that he has purchased, he enters the voucher PIN. This adds the amount of money represented by the voucher that he has purchased. The Prepaid Recharge System will forward this recharge time to the IN system, which will update the users profile to add the additional money to his account. It will also log the transaction to a
Recharge Log for later reconciliation between the Prepaid Recharge System and IN as well as update the transaction display on the web interface.
recharge request
recharge request
Shadowbase NonStop server Pretoria data replication NonStop server Midrand IN Platforms
Therefore, the PPFE must be up virtually 100% of the time. If it should go down, subscribers cannot recharge; and cell-phone service will be denied to a large segment of cell-phone subscribers. To ensure extreme availability for prepaid card service, the company has implemented the PPFE as a pair of NonStop nodes in an active/active architecture. One node is located in Pretoria, South Africa, and the other is located in Midrand, South Africa. The two nodes carry identical databases. The databases are kept in synchronism via bidirectional asynchronous replication provided by Gravic, Inc.s Shadowbase replication engine (www.gravic.com). The primary information that is replicated is that contained in the Recharge Logs. Should a node fail, all call transactions are routed to the surviving node, which continues to provide prepaid card services for all subscribers in the companys network. When the failed node is returned to service, its database is resynchronized with the active node; and normal replicated service is returned. The service provider did not initially use the system in a true active/active configuration, in which both nodes are actively processing transactions, because of concerns of fraudulent activity. For instance, two subscribers could use the same voucher simultaneously; and if their requests were routed to different nodes, they could succeed. In a single-node setup, the voucher record is locked by the first attempt; and the second attempt is blocked. Therefore, the company used the PPFE active/active system in a sizzling hot standby configuration. All transactions were handled by one node, the primary node, and were replicated to the other node, the backup node. The backup node had all applications running and the database opened so that it could take over instantly in the event of the failure of the primary node.
2008 Sombers Associates, Inc., and W. H. Highleyman www.availabilitydigest.com
However, the company has since resolved this concern and is now in the process of cutting over to a true active/active operation. To avoid fraudulent use and data collisions, one system will 2 handle odd-numbered vouchers; and the other will handle even-numbered vouchers .
Ancillary Systems
The PPFE feeds several ancillary systems important to the provision of prepaid card services. These systems are run as monolithic systems since their availability is not so critical. Though there is no need to synchronize the PPFE database with the ancillary systems, Shadowbase is used to transfer information between these systems by replicating database transactions from one system to another.
Billing/Administration
Shadowbase
Web Access
Shadowbase
Windows/SQL Server
Shadowbase
NonStop server
Ancillary Systems
During normal operation, the ancillary system support is split between the two nodes in the PPFE. Should one node go down, its ancillary-system links are switched to the surviving node. Upon recovery of the failed node, the links are switched back. Web Access Subscriber web access to prepaid card data is provided by a web server running on a Windows/SQL Server platform. By using his browser, a subscriber can view the available money left in his account. He can add money to a card and can transfer money from one cell number to another. Updates such as these are replicated back to the PPFE database. Bidirectional replication is used by the web server to access data from the PPFE to support a subscribers requests and to replicate updated data back to the PPFE database.
Avoiding collisions by routing specific cards to specific nodes can be easily extended to more than two nodes by assigning more of the digits in the card number to the routing table. For instance, the entire last digit can be used to support 10 active/active nodes. Assuming the cards are randomly distributed, this can aid load-balancing efforts without need for more complex algorithms.
2008 Sombers Associates, Inc., and W. H. Highleyman www.availabilitydigest.com
Billing and Administration The Billing and Administration system is resident on a Unix system that runs under Oracle. Shadowbase is used to replicate the Recharge Logs to this system to charge the users accounts for time and other services purchased and to report on the recharge activity. Stock Card Reporting The Stock Card Reporting System tracks the prepaid vouchers that have been sent to stores for subscriber purchase. It tracks all cards that have been printed since 1996, even those that have been used or that have expired. Currently, there are over two billion cards in the Stock Card Reporting database, of which 50 million or more are active at any one time. The Stock Card Reporting System is implemented on a NonStop server and is fed from the PPFE via Shadowbase unidirectional replication.
The Result
By implementing the critical Prepaid Front End as an active/active system, the company has ensured continuous subscriber account recharging, calling time transfer, and calling time query services to its subscribers. It has also taken advantage of efficiencies by imposing reasonable availability requirements on its ancillary systems. These are all monolithic systems fed via data replication from the central PPFE. NonStop servers are judiciously used for those ancillary systems requiring greater availability. The cellular providers Prepaid Recharge System is an excellent example of a heterogeneous system mixing active/active technologies with high-availability systems, all connected by a common data-replication engine, Shadowbase in this case.