Ольга Соболева и Кирилл Иванов "Обработка транзакций на примере телекоммуникационной компании". Выступление на Cassandrd Conf 2013
Upcoming SlideShare
Loading in...5
×
 

Ольга Соболева и Кирилл Иванов "Обработка транзакций на примере телекоммуникационной компании". Выступление на Cassandrd Conf 2013

on

  • 816 views

 

Statistics

Views

Total Views
816
Views on SlideShare
511
Embed Views
305

Actions

Likes
0
Downloads
1
Comments
0

1 Embed 305

http://it-eburg.com 305

Accessibility

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Ольга Соболева и Кирилл Иванов "Обработка транзакций на примере телекоммуникационной компании". Выступление на Cassandrd Conf 2013 Ольга Соболева и Кирилл Иванов "Обработка транзакций на примере телекоммуникационной компании". Выступление на Cassandrd Conf 2013 Presentation Transcript

  • Billing transaction processing Olga Soboleva Kirill Ivanov
  • Problem Statement Customer can: • Top up an account • Make calls, send text messages and use internet • Get current balance
  • Use Case Customer's account (0$)
  • Use Case Top up: +250$ Customer's account (250$)
  • Use Case SMS (1 unit): -2$ Call (5 minutes): -5$ Top up: +250$ SMS (2 units): -4$ Customer's account (239$)
  • Transaction Processing transaction Balance service
  • Transaction Processing transaction Balance service Transactions
  • Transaction Processing transaction Balance service async Transactions Transaction handling
  • Transaction Processing transaction Balance service async Transactions Transaction handling Settings
  • Transaction Processing transaction Balance service async Transactions Transaction handling Settings Charges
  • Transaction Processing CF: Transactions
  • Transaction Processing CF: Transactions Row: "transactionId" …
  • Transaction Processing CF: Transactions Row: "transactionId" Col: "transactionId" Transaction: • transactionId • transactionDate • senderId • recipientId • resourceId • resourceCount …
  • Transaction Processing Write off sample Transaction: • transactionId • transactionDate • senderId • recipientId • "sms" • 3 Top up sample Transaction: • transactionId • transactionDate • customerId • customerId • "money" • 250
  • Transaction Processing CF: Charges
  • Transaction Processing CF: Charges Row: "customerId" …
  • Transaction Processing CF: Charges Row: "customerId" Col: "yyyy-MM-ddTHH-mm-ss-fffffff:transactionId" Charge: • Money • Type (WriteOff or TopUp) • TransactionDate • TransactionId … …
  • Transaction Processing Write off sample Charge: • -2$ • WriteOff • TransactionDate • TransactionId Top up sample Charge: • +250$ • TopUp • TransactionDate • TransactionId
  • Problem Statement Customer can: • Top up an account • Make calls, send text messages and use internet • Get current balance
  • Get Current Balance Charge 1 + Charge 2 + … + Charge N
  • Get Current Balance Charge 1 + Charge 2 + … + Charge N Balance
  • Get Current Balance time charges count
  • Get Current Balance time charges count
  • Get Current Balance Charge N … Charge k+1 Charge k … Σ Charge 1 Solution — aggregate balance
  • Get Current Balance Charge N … Charge k+1 Charge k last aggregation now - Δt now Charge N Σ … time Charge k+1 balance set up Charge 1 Σ … Solution — aggregate balance
  • Get Current Balance CF: AggregatedBalance Row: "customerId" …
  • Get Current Balance CF: AggregatedBalance Row: "customerId" Col: "customerId" AggregatedBalance : • Money • AggregationDate …
  • Problem Statement Customer can: • Top up an account • Make calls, send text messages and use internet • Get current balance
  • Problem Statement Customer can: • • • • Top up an account Make calls, send text messages and use internet Get current balance Buy package of services
  • Package of Services Charge structure money resource count resource id type …
  • Package of Services Charge structure money resource count resource id type … WriteOff … Example -6$ -3 "sms"
  • Package of Services Charge structure money resource count resource id type … Annul … Annul — — "sms"
  • Package of Services Charge (+10$) Balance • 10$
  • Package of Services Charge (+10$) Charge (+100 sms) Balance • 10$ • 100 sms
  • Package of Services Charge (+10$) Charge (+100 sms) Charge (-2 sms) Balance • 10$ • 98 sms
  • Package of Services Charge (+10$) Charge (+100 sms) Charge (-2 sms) Charge (-5 sms) Balance • 10$ • 93 sms
  • Package of Services Charge (+10$) Charge (+100 sms) Charge (-2 sms) Charge (-5 sms) Annul Balance • 10$
  • Package of Services Charge (+10$) Charge (+100 sms) Charge (-2 sms) Charge (-5 sms) Annul Charge (-3 sms) Balance • 4$
  • Problem Statement Customer can: • • • • Top up an account Make calls, send text messages and use internet Get current balance Buy package of services
  • Problem Statement Customer can: • • • • • Top up an account Make calls, send text messages and use internet Get current balance Buy package of services Buy flat rate
  • Flat Rate • To all recipients • To fixed recipients
  • Flat Rate • To all recipients • To fixed recipients Settings transaction Transaction handling Not processed Charges
  • Problem Statement Customer can: • • • • • Top up an account Make calls, send text messages and use internet Get current balance Buy package of services Buy flat rate
  • Kirill Ivanov ikp@skbkontur.ru Olga Soboleva olgasob@skbkontur.ru