Epsilon – Oracle Sharding Use Case in Public Cloud · 2018-12-06 · • Epsilon is...
Transcript of Epsilon – Oracle Sharding Use Case in Public Cloud · 2018-12-06 · • Epsilon is...
©2014 Epsilon. Private & Confidential
Epsilon– OracleShardingUseCaseinPublicCloud
GairikChakrabortySeniorDirector,DatabaseAdministration,Epsilon
1
Copyright©2018, Oracleand/oritsaffiliates.Allrightsreserved.|
• SnapshotofEpsilon• OracleShardingUseCaseinPublicCloud
Agenda
©2014 Epsilon D
ata Managem
ent, LLC. Private & C
onfidential
3
• Epsilonisall-encompassingglobalmarketingcompany,wearegloballeaderinturningdata-drivenmarketingintopersonalizedcustomerexperienceandlastingrelationships
• Morethan9000associatesand70officesworldwide
• Largestpermission-basede-mailerintheworld,deliveringover75billionemailsannually
• World’sleadingsourceofdatawithinformationcoveringover1.5Bindividualrecordsand278Mdevices
• Morethan2,000globalclients,including26oftheFortune10049outof10TopBanks48outof10TopRetailers49outofTop10PharmaceuticalCompanies
EpsilonataGlance
Copyright ©
Epsilon 2017 E
psilon Data M
anagement, LLC
. All rights reserved.
4
Wedeliverpersonalizedconnections,buildloyaltyanddrivebusinessforbrandsaroundtheworld
©2014 Epsilon D
ata Managem
ent, LLC. Private & C
onfidential
5
OracleShardingUseCaseinPublicCloud
5
©2014 Epsilon D
ata Managem
ent, LLC. Private & C
onfidential
6
• Loyaltyrealtimemarketingsolutionwithextremeavailability,performanceandscalabilityrequirement
• Deploymentshouldsupportanypubliccloudaswellasonpremisesifneeded–productofferingiscloudfirst
• PlatformsupportsrealtimePOSintegrationwithaveragecalltimefrom200-500msaverageandeachAPIcallcanhavemultiple(20–100)SQLsinternally
• Scaleoutsolutionwhichcangrowflexiblybasedonworkloaddemand
• Scalable,reliableandhighlyavailableinfrastructurealongwithindustrystandardsecurityandauditing
HighLevelOLTPApplicationBusinessRequirements
©2014 Epsilon D
ata Managem
ent, LLC. Private & C
onfidential
7
WhywelikeOracleSharding
• Loyaltymarketingsolutionincludesprocessingofhighvolumeofcomplexfinancialtransactionwhichrequiresstrongmultiversionconcurrencycontrol,dataprotection,security,etc.§ NoSQLsolutionsarenotverygoodfitforthoseusecases
• Applicationisusingmanycomplexjoinsandasolutionneedstosupporttheexistingcodewithminimalchange
• Useallotherexistingoraclefeaturelikedataconsistency,security,availability,robustperformanceoptimizer,backupandrecoverywhicharekeyforbusinesscriticalapplicationdeploymentandarealreadypartofOracleShardingframework
• UsingOracleSharding,OLTPdatabasecanscaleupandscaleoutandweexpecttouselessernumberofshardsbasedonworkloaddemand
©2014 Epsilon D
ata Managem
ent, LLC. Private & C
onfidential
8
ConsiderationbeforeusingOracleSharding
• Applicationdatamodelneedstochangetosupportsharding
• Identifytransactiontableswhichcanbesharded,referencetableneedstobeduplicated
• Selectappropriateshardingkeyandshardingmethod
• NondefaultglobaldatabaseservicecreatedusingGSDCTLneedstobeusedforconnection
• DataaccessforOLTPshoulduseshardingkeyasmuchaspossibletoavoidcrossshardoperationwhichisexpensiveintermsofexecutiontime
• Applicationneedtousedriverwhichhasshardingsupportinbuilt.ExampleincludesOracleJDBC,OCI,ODP.NET(unmanageddriver),OracleUCP,etc.
• Shardcatalogsetupisprotectedwithactivedataguardwithmaximumavailabilityprotectionandfaststartfailoverenabled
©2014 Epsilon D
ata Managem
ent, LLC. Private & C
onfidential
9
OLTPSystemDeploymentArchitectureatPublicCloud
©2014 Epsilon D
ata Managem
ent, LLC. Private & C
onfidential
10
Application Load Balancer
Web Servers – ODP.NET Connection Pool
Web Service Call
OLTP Batch Reports
OLTP Service
Batch Service
Site 1
Primary DB
Application Load Balancer
Web Servers – ODP.NET Connection Pool
OLTP Batch Reports
Report Service
Site 2
Standby DB
ApplicationServicePlacement:CurrentState
FAN/FCF
ActiveDataGuard
Web Service Call
FAN/FCF
©2014 Epsilon D
ata Managem
ent, LLC. Private & C
onfidential
11
Application Load Balancer
Web Servers– ODP.NET Connection Pool
Web Service Call
OLTP Batch Reports
OLTP Service
Batch Service
Site 1
Application Load Balancer
Web Servers – ODP.NET Connection Pool
OLTP Batch Reports
Report Service
Site 2
Standby DB
ApplicationServicePlacement:TargetStatewithSharding
FAN/FCF
ActiveDataGuard
Web Service Call
FAN/FCF
Shard Directors
Shard Catalog
Shard Catalog
Shard Director
Primary Shards Standby Shards
©2014 Epsilon D
ata Managem
ent, LLC. Private & C
onfidential
12
POCResult– HorizontalScalability
©2014 Epsilon D
ata Managem
ent, LLC. Private & C
onfidential
13
Best Practices
• GlobalserviceusedforODP.NETneedstohave–notificationsettoTRUEusingGDSCTLwhileconfiguringserviceforFAN
• ClientsideTNSshouldpointtomultiplesharddirectorsforhighavailabilityinsteadofshardnodes.
• Backupsshouldnotrunduringchunkmovement(eitherduringre-shardoperationormanualchunkmovement)asthatwillnothavecorrectdatalayout.
• Duringrecovery,validateorrecovershardoptionmaybeneededtosyncitwithshardcatalog
©2014 Epsilon D
ata Managem
ent, LLC. Private & C
onfidential
14
Future Plans
• CollaboratewithoracleengineeringteamtoconvertEpsilonloyaltysolutiontobeshardingcapable,configureapplicationforzerodowntimeusingfeatureslikeapplicationcontinuityduringshardfailureorre-shardoperation,etc.
• PlantodeployOracleshardingformanycustomersasnextgenerationtruehorizontallyscalablemultiplecloudglobalsolutionacrossanyregionaspartofEpsilon’sgloballoyaltyplatformdeploymentplan