180 likes | 305 Vues
Discover the comprehensive functionalities of the Oracle Mediation Platform, designed to enhance data processing for telecommunication systems. This platform supports the intricate management of Call Detail Records (CDRs), utilizing ASN.1 for data decoding, validation, formatting, and conversion. With the capacity to process up to 60 million input CDRs daily and an efficient storage system, it ensures seamless integration across multiple network elements and business systems. Learn about advanced features such as real-time processing, fraud prevention, and flexible reporting capabilities that streamlining operations and improving performance.
E N D
All Oracle Features in Action Mobiltel Mediation Platform Georgi Hristov Integration& Service Enabling Department
Network Elements ... NE 1 NE 2 NE n ftp ftp ftp Mediation ASN.1 Parser Validation Formatting& Conversion Aggregation Correlation Filtering Create custom CDR Business Systems BS 1 BS 2 BS n ... What is Mediation? • Files transfers • Decodes data that has been encoded by the ASN.1 into the internal standard format. • Validate, formatting and conversion data by mapping rule. • Aggregates partial CDR belonging to the same session by the CDR type. • Correlates different CDRs belonging to the same session. • Filters CDRs and their fields according to the systems that need charging data. • Create flexible and wide CDR for Business System Software
Old Mediation • CDR Files • No Database • Perl scripts • Hard to make statistics • Hard to make new features • Slow flexibility
Mediation Needs • Flexibility • Performance • Real-time processing • Searching • Statistics • Archive • Guiding
Mediation Platform in Numbers • 60M Input CDRs per Day • 120M Output CDRs per Day • More than 5M subscribers • More than 200 interfaces • 45 days History • More than 600GB Table space Call Durations and Call Count
Mediation Platform • Indexing • Partitions • Statistics • Compression • Fast access • REG_EXP • Logic Into Database • Oracle GRID Control Monitoring • Oracle GRID Control Managing • Oracle Clustering MNP Mediation SWAT
CDR Database CDR Repository • Storage • Indexing • Partitions • Compression • Processing 64 Billion records; All CDRs since 1998 15 TB uncompressed 4.3 TB compresses 65% speedup < 1 sec to find a call
Box Services (HomeBox VoiceBox OfficeBox) • Guiding • Processing • Fraud Preventing
SWAT is not Subscribers Wild Attribute Transformations • Real-Time Processing • Subscribers information • Real-Time Guiding • Always in Memory *Oracle Coherence, Oracle TimesTen
Oracle Standard useful features used in Mediation Platform • Lag SELECT last_name, hire_date, salary,LAG(salary, 1, 0) OVER (ORDER BY hire_date) AS PREV_SAL FROM employees • Partition by SELECT manager_id, last_name, salary, MAX(salary) OVER (PARTITION BY manager_id) AS rmax_sal FROM employees • XML object • Nested tables • Partition Management • Interval Partitioning
Example (1) • select imschargingidentifier, accountingrecordtype calltype,eventtimestamp, LAG(eventtimestamp) OVER (Partitionby imschargingidentifier ORDERBY eventtimestamp) b_time ,LAG(call_type) OVER (Partitionby imschargingidentifier ORDERBY eventtimestamp) call_type,max(calledpartyoriginaladdress) OVER (Partitionby imschargingidentifier) calledpartyoriginaladdress,max(subscriptioniddata) OVER (Partitionby imschargingidentifier) subscriptioniddatafrom (select * from ( select i.eventtimestamp,i.imschargingidentifier,i.accountingrecordtype,casewhen (instr(sdpmedianame,'m=video')>0) then 'V' when (instr(sdpmedianame,'m=audio')>0) then 'A' else '_' end call_type, i.causecode,i.calledpartyoriginaladdress,i.originhost,i.serverpartyipaddress, i.callingpartyaddress,i.subscriptioniddata,i.destinationrealm FROM ims_table_records I WHERE FILE_ID = 7AND ((i.accountingrecordtype = 2 and i.roleofnode = 0) or (i.accountingrecordtype in (3,4) and (i.roleofnode =0 or i.roleofnode isnull))) and imschargingidentifier in (select imschargingidentifier from (selectcount(imschargingidentifier),imschargingidentifier from ims_table_records where FILE_ID = 7 groupby imschargingidentifier havingcount(imschargingidentifier) >1 )) )x wherenot (accountingrecordtype =3 and call_type = '_'))
Example (2) • select a.chargingID,a.servedIMSI,a.servedMSISDN, a.AccessPointNameNI ,a.recordOpeningTime start_rectime ,nvl(extractValue(value(s1), '/ContentTypeIDSequence/ContentTypeID'),'102') ContentTypeID ,nvl(extractValue(value(s1), '/ContentTypeIDSequence/UplinkCount'), gx.dataVolumeGPRSUplink) Up ,nvl(extractValue(value(s1), '/ContentTypeIDSequence/DownlinkCount'),gx.dataVolumeGPRSDownlink) Down,file_id,a.localsequencenumber ,min(mn.column_value) over (partitionby a.localsequencenumber) sgsnaddressfromipc_table_ggsn a ,table(XMLSequence( • extract(a.RECORDEXTENSIONS, • '/ExtensionXML/ExtensionSequence/informationSequence/ContainerSequence/ContentTypeIDSequence')))(+) s1 ,table(a.listoftrafficvolumes) gx,table(a.sgsnaddress) mn
What’s New • HP Oracle Exadata Storage Server
Q & A