Couchbase · Telecom BSS
Telecom BSS database: choosing the data layer for subscriber, catalogue and usage workloads
A telecom BSS database is the data layer behind an operator's business support systems: the customer and subscriber profile, the product catalogue, orders, usage and the self-care channels that read all of them. Most estates were built around one relational core that now serves apps, portals, shops and partners at once. This guide explains which BSS workloads strain that core, the options for relieving it, where Couchbase fits and where it does not, and how residency shapes the design for operators and service providers in Saudi Arabia.
Published 9 min read
Orientation
At a glance
The guide in one table, before the detail.
- What a BSS database serves
- Customer and subscriber profiles, product catalogue, orders, usage and balances, and the channels that read them
- Where the strain usually shows
- Digital channels reading profiles, offers and balances far more often than the core was sized for
- The usual answer
- Keep the system of record, and move high-read operational workloads to a data layer built for them
- Where Couchbase fits
- Profiles, catalogue, sessions and cached views: JSON documents served from memory, queried with SQL++
- Where it does not
- The billing ledger, financial reconciliation and heavy reporting stay on the platforms built for them
- The Saudi question
- Subscriber data and its replicas, backups and logs stay where the operator's classification requires
In short, for executives
- The problem: BSS data was designed for billing cycles and call-centre screens. Apps and online shops now read it on every tap.
- The risk: replacing the whole BSS to fix a data problem is the most expensive way to fix it.
- The pattern: keep the system of record; give the high-read workloads (profile, catalogue, balances view, sessions) a data layer of their own, kept in step with the core.
- The Saudi question: subscriber data has a residency rule, and it covers replicas, backups and logs too, not only the main cluster.
What a telecom BSS database has to do, in plain terms
Business support systems (BSS) are the commercial side of an operator: who the customer is, what they bought, used and owe. Operations support systems (OSS) run the network; this guide covers BSS.
A BSS estate holds several kinds of data, and they behave very differently:
- The customer and subscriber profile. One customer, several lines, each with its plan, add-ons, devices, preferences and consents. Read constantly by every channel, changed far less often.
- The product catalogue. Plans, bundles, offers and their eligibility rules, in Arabic and English. It changes with every campaign.
- Orders. A new line, a port-in, a SIM swap, an upgrade: a record that moves through steps and must not be lost half-way.
- Usage and balances. Rated usage arrives in large volumes; customers want to see their remaining data and minutes now, not after the next billing run.
- The financial record. Invoices, payments, adjustments and the ledger behind them. This is relational and transactional by nature.
Read more
Most estates put all of these in one relational core, which was right when the readers were a billing run and a few hundred agents. Digital channels change that: every app launch reads the profile, the balance and the eligible offers, and the core spends its capacity on reads it was never sized for, while the billing run competes with the app.
BSS workloads and what each asks of the database
This table is the start of every design conversation: the workloads are not one problem, and they do not belong on one engine.
| BSS workload | Data shape | What it asks of the database | Usual fit |
|---|---|---|---|
| Customer and subscriber profile | One nested record per customer, with lines, plans and consents | Very frequent reads by key, flexible fields, many channels at once | Operational document store, kept in step with the system of record |
| Product catalogue and offers | Bundles and rules that change with each campaign, in two languages | Fast browse and search, new attributes without schema changes | Document store with search |
| Digital sessions and carts | Short-lived state per app or web visit | Very fast reads and writes, automatic expiry | Key-value store with expiry |
| Orders in progress | A record that moves through steps | Durable writes, status queries, no lost step | Document store with durable writes, or the order system itself |
| Balances and usage view | A current summary per line, from rated usage | Fresh reads for the app; the source stays authoritative | A cached view in the operational store, refreshed from the source |
| Invoices, payments and ledger | Strict relational records with reconciliation | Multi-entity transactions, audit, financial reporting | Stays on the relational system of record |
| Reporting and analytics | Large scans across months of data | Ad-hoc queries over history | An analytical platform, not the operational store |
Ask any supplier which rows of this table their design moves, and which it leaves where they are. A design that moves all of them is a BSS replacement.
Why the BSS data layer matters for operators in Saudi Arabia
In the Kingdom, apps for recharges, bundles and bills, online shops and partner channels carry much of an operator's customer contact. Three local factors shape the data layer.
- Peaks. Traffic follows campaigns, salary days, Ramadan and Eid. The layer is sized for those peaks, not an average day.
- Two languages. Catalogue, offers and notifications exist in Arabic and English, and search must work in both.
- Regulation and residency. Telecom services in the Kingdom are regulated by the Communications, Space and Technology Commission (cst.gov.sa). Subscriber data is personal data under the Personal Data Protection Law overseen by SDAIA (sdaia.gov.sa), and the National Cybersecurity Authority's controls (nca.gov.sa) apply to many operators' systems. Which rules apply is settled with your compliance owner; the design records where each copy of the data lives.
Interkey supports this work from Riyadh, with engineers who work in Arabic and English, from the first workload review to operating the platform after go-live.
NoSQL for a telecom BSS database: options and trade-offs
When the core strains, there are four common responses. Each has a cost.
- Scale the core up. Larger servers and more licences. Quick, but the billing run and the app still share one engine.
- Put a cache in front. Fast reads for the busiest screens. The weak points: stale data, and a cache that restarts empty during a campaign.
- Add an operational data layer beside the core. A NoSQL store holds the profile, catalogue and session data in the shape the channels read, kept in step with the system of record through change data capture. The core keeps the truth. Most estates end up here.
- Replace BSS modules one by one. A new catalogue or a new order system, each with its own data. Sound when a module is due for renewal anyway, but a programme of years.
Read more
The layer works only if the copy stays current: how fast a change reaches it, and what channels show meanwhile. Where the old and new systems must run side by side, iblync, Interkey's own product, keeps source and target in sync during the move.
Relatediblync
Telecom BSS database on Couchbase: where it fits
Couchbase is a distributed NoSQL database that stores JSON documents and key-value data, queried with SQL++. Interkey is a Couchbase technology partner and sells Couchbase Capella; the wider practice is on our Couchbase page. In a BSS design it maps to the high-read rows above:
- Subscriber profile as one document. Customer, lines, plans and consents read in one request by key, not a join across many tables. Our customer 360 page covers the single customer view in more depth.
- Catalogue with new attributes and no migration. A new bundle type adds fields; the Search service handles browse and keyword search. See the product catalogue page.
- Sessions and carts that expire on their own. Documents can carry an expiry time. The session store page covers that pattern.
- Memory first, durable when needed. Regular writes are acknowledged from memory and then written to disk; an order step that must not be lost can require a majority of nodes to hold it.
- Transactions where a flow needs them. ACID transactions are available through SQL++, for flows that change several documents together.
- Services scaled apart. Data, Query, Index, Search, Analytics and Eventing can run on nodes of their own, which Couchbase calls multi-dimensional scaling.
Read more
For a second site, Cross Data Center Replication (XDCR) copies data between clusters in unidirectional, bidirectional or ring topologies. Couchbase's documentation is explicit that "XDCR only replicates data: it does not replicate views or indexes", so a recovery site needs its indexes built and kept ready before it can serve queries, and XDCR is a feature of Enterprise Edition. For the platform in general, see our NoSQL database page.
Relatedcustomer 360 pageproduct catalogue pagesession store page
Where Couchbase does not fit in a BSS estate
A data layer is not a reason to move everything. Couchbase is the wrong answer for:
- The billing ledger. Multi-entity and audited, it stays on the relational system of record.
- Reporting over history. Months of usage scanned ad hoc belong on an analytical platform.
- A core that is actually fine. If it serves its load and growth is modest, tune it.
- No owner. A distributed cluster without a team, in-house or contracted, to operate it becomes an outage with a delay on it.
The assessment says so when that is the case.
How Interkey delivers a BSS data layer
-
Workload review.
Which channels read which data, how often, at what peak, and where each copy may be hosted. Its first legitimate outcome is "stay where you are".
-
Model for how the channels read.
Profile, catalogue and session documents shaped by the screens that use them, not translated table by table.
-
Keep the copy current.
Change data capture from the system of record, with an agreed delay and a rule for what the channels show meanwhile.
-
Size for the peak.
A load test on your data at campaign volumes, with services placed on the nodes that need them.
-
Move reads first.
Channels move one by one and are compared with the old path; writes move when the evidence supports it.
-
Operate.
Failover drills including the index step, backups, upgrades and monitoring under a written managed-services scope, or a documented handover to your team.
What drives the cost of a telecom BSS database project
We do not publish a price or a duration; both depend on the scope. The Couchbase licence follows the operating model: Capella is billed per node per hour, and self-managed Couchbase Server is a subscription priced by the number of production nodes. The engineering cost is driven by:
- the BSS workloads and channels in scope, more than data volume;
- how the core exposes changes, and how fresh the copy must be;
- the peak, which sets the node count;
- a second site, with its own nodes and indexes;
- where the data must be hosted, which decides between Capella and self-managed (see Capella or self-managed).
The review is fixed; the build is priced by workload, with vendor licensing shown separately.
Questions operators ask about the BSS data layer
Do we have to replace our BSS to modernise its database?
Usually not. The common pattern keeps the existing BSS as the system of record and moves the high-read workloads, such as profiles, catalogue and sessions, to an operational data layer kept in step through change data capture.
Can a NoSQL database hold telecom subscriber data in Saudi Arabia?
Yes, if the deployment meets your classification. Couchbase Server can run on infrastructure you control in the Kingdom, and as of 2 November 2026 Capella's published regions include Google Cloud's Dammam region. Replicas, backups and logs need the same check as the main cluster.
Which BSS data should stay on the relational core?
Invoices, payments, adjustments and the financial ledger, plus anything that needs multi-entity transactions and audited reconciliation. The operational layer serves reads; it does not replace the record.
How do we keep the subscriber copy current with the billing system?
Through change data capture from the system of record, with an agreed delay and a rule for what channels show while a change is in transit. The delay is measured in the load test, not assumed.
How is Couchbase licensed for a telecom workload in KSA?
Capella is billed per node per hour and Interkey sells it; self-managed Couchbase Server is a subscription by production node, quoted alongside our work. A recovery site has its own nodes, and XDCR to it needs Enterprise Edition.
How long does it take to move a BSS workload to a new data layer?
It depends on how many channels read the data, how the core exposes changes and how long the parallel run lasts before writes move. We estimate the duration from the workload review, not before it.
Next
Related pages
Next step
Review your BSS data layer
Tell us which BSS workloads strain your core, which channels read them and where the data must be hosted. We will reply with what should move, what should stay, and the first step.
Or directly
+966-11-2180999 [email protected]Tawuniya Towers, North Tower, 7th Floor, King Fahad Highway, Olaya, P.O. Box 56835, Riyadh 11564, Saudi Arabia