The Question, Not the Database
Every intelligence product on the market is sold as a database. A feed. A platform. The pitch is always the same: we have more data than the other guy. More records, more sources, more coverage, more updates. The implicit promise is that if you give a decision-maker enough data, they will figure out what to do with it.
This is backwards. Decision-makers do not need more data. They need answers to specific questions. A fund manager does not need 2 million rows of entity records. They need to know whether the company they are about to acquire has indirect exposure to a sanctioned individual three layers up the ownership chain. A compliance officer does not need a dashboard of maritime traffic. They need to know whether a vessel in their counterparty's fleet has called at a port under sanctions enforcement in the last 90 days. A board member does not need a geopolitical risk index. They need to know whether a single supplier in their company's supply chain sits in a jurisdiction that is 60 days from an export control regime.
One question. One answer. Verifiable. Fast.
The WorldGraph exists to answer that question. It contains 2.17 million entities—companies, individuals, vessels, sanctions designations, ownership structures, political figures, trade routes, legal cases, regulatory actions—mapped and cross-referenced into a single queryable graph. But the graph is not the product. The answer is the product. The graph is the infrastructure that makes the answer possible.
This post is about how that works.
What the WorldGraph Is
The WorldGraph is Forreast's proprietary entity-resolution database, built on NebulaGraph, a distributed graph database engine. It contains 2.17 million entities organized across multiple analytical layers: corporate ownership, financial flows, supply chains, geopolitical positioning, sanctions designations, maritime operations, legal cases, regulatory actions, and people networks—to name the ones most relevant to exposure analysis.
Each entity in the WorldGraph is a node. Each relationship between entities is an edge. A company is a node. Its parent company is a node. The ownership relationship between them is an edge. A vessel is a node. Its registered owner is a node. The port it called at last week is a node. The sanctions designation on a related entity is a node. The edges connect them.
The power of this structure is that it does not store information in isolation. It stores information in relationship. A relational database can tell you that Company A exists and that Person B exists. A graph database tells you that Company A is owned by Company C, which is 40% owned by Person B, who is a politically exposed person in a jurisdiction under partial sanctions. The relationship is the data. The connection is the intelligence.
The WorldGraph's 2.17 million entities are not a flat list. They are a structured representation of how the world's commercial, political, and legal systems actually connect. When you query the WorldGraph, you are not searching for a record. You are traversing a network.
How Entities Are Resolved and Cross-Referenced
The hardest problem in intelligence is not collecting data. It is resolving entities. The same company appears in a corporate registry under one name, in a sanctions list under a variant of that name, in a shipping manifest under an abbreviated name, and in a legal filing under a translated name. The same individual appears in a beneficial ownership disclosure with one date of birth, in a sanctions designation with a different transliteration, and in a political database with a different name format. Without entity resolution, these are five different entities. With entity resolution, they are one.
The WorldGraph's entity-resolution pipeline ingests from over 50 public and licensed sources: corporate registries (GLEIF/LEI data), sanctions lists (OFAC SDN, EU consolidated, UK OFSI, UN Security Council), shipping data (AIS vessel tracking, port call records), legal filings (SEC EDGAR, court records), political databases (PEP registries), and trade data (customs records, trade flow statistics). Each source uses its own naming conventions, identifiers, and data formats.
The resolution pipeline applies a multi-stage process:
Stage 1: Normalization. Every incoming record is normalized to a standard schema. Names are transliterated, dates are standardized, identifiers are mapped to canonical formats. A company registered as "ООГ Ресурс" in a Kazakh registry and "OOO Resource" in an English-language filing are normalized to a common form.
Stage 2: Matching. Normalized records are matched against existing WorldGraph entities using a combination of deterministic matching (LEI codes, registration numbers, IMO numbers for vessels, OFAC identifiers) and probabilistic matching (name similarity, address proximity, industry classification overlap, relationship corroboration). A confidence score is assigned to every match.
Stage 3: Merging. When a match confidence exceeds the merge threshold, the incoming record is merged into the existing entity node. The source provenance is preserved—every data point in the WorldGraph carries a tag identifying where it came from and when it was ingested. Nothing is overwritten. Everything is appended.
Stage 4: Relationship Inference. Once entities are resolved, relationships are inferred. If Company A files an ownership disclosure naming Company B as a parent, an OWNED_BY edge is created. If a vessel's AIS data shows a port call at a sanctioned jurisdiction, a TRANSITS_THROUGH edge is created. If a sanctions list names an individual who is a confirmed board member of Company C, a SANCTIONED_BY edge is attached to the individual and, by traversal, becomes reachable from Company C.
This is the critical step. Entity resolution without relationship inference produces a clean directory. Entity resolution with relationship inference produces a map of exposure. The WorldGraph is the latter.
Every entity and every edge in the WorldGraph carries provenance metadata: source, ingestion timestamp, confidence score, and last-verified date. When you query the WorldGraph and it tells you that your counterparty has an indirect connection to a sanctioned entity, it also tells you exactly which sources established that connection, when they were verified, and what the confidence level is. You can trace the claim back to its evidence. This is not a black box. It is an auditable chain of reasoning encoded in graph structure.
A Practical Example: Does My Counterparty Have Indirect Sanctions Exposure?
Here is how the WorldGraph answers a real question. The question: Does my counterparty have indirect sanctions exposure?
The counterparty is a logistics company—call it Meridian Logistics—that you are evaluating for a strategic partnership. Meridian is registered in a EU member state, has a clean corporate registry record, and does not appear on any sanctions list. A conventional sanctions screening tool would return a clean result in under five seconds. No matches. No exposure. Proceed.
Here is what the WorldGraph returns.
Step 1: Entity Resolution. The WorldGraph resolves "Meridian Logistics" to its canonical entity. It identifies the company by its LEI code, registration number, and normalized name. It also identifies three name variants from shipping manifests, a trade database, and a legal filing—none of which a standard screening tool would connect. All four resolve to the same entity node.
Step 2: Ownership Traversal. The WorldGraph traverses Meridian's ownership structure. Meridian is 100% owned by Meridian Holdings BV, a Dutch holding company. Meridian Holdings is 65% owned by a Cyprus-registered entity, Cavendish Trading Ltd. Cavendish Trading is 40% owned by an individual, Yuri K., who is registered as a politically exposed person in two PEP databases and whose name appears in a 2025 OFAC SDN addition under a variant transliteration.
The traversal path: Meridian Logistics → OWNED_BY → Meridian Holdings BV → OWNED_BY → Cavendish Trading Ltd → OWNED_BY → Yuri K. → SANCTIONED_BY → OFAC SDN.
Four hops. The conventional screening tool stopped at hop zero.
Step 3: Network Expansion. The WorldGraph does not stop at the direct ownership chain. It expands the query to Meridian's commercial network. Meridian has a joint venture with TransGlobal Freight, a company whose fleet includes two vessels that called at a port in a sanctioned jurisdiction in the last 90 days, as recorded in AIS data. The WorldGraph flags this as a secondary exposure path: not a direct sanctions connection, but a network adjacency that warrants attention.
Step 4: Scoring. The Forreast Score's sanctions exposure vector scores this at 7/10. The scoring is not opaque. It is calculated from: the distance to the sanctioned entity (4 hops, weighted by ownership percentage), the severity of the sanctions designation (OFAC SDN, full blocking), the recency of the designation (2025), and the network adjacency exposure (two vessels, sanctioned port, 90-day window). Each component is documented and auditable.
Step 5: Falsification Condition. The assessment carries a falsification condition: This assessment would be invalidated if Yuri K. is confirmed to have divested his 40% stake in Cavendish Trading Ltd. prior to the OFAC SDN designation date, as verified by corporate registry filings in Cyprus and the Netherlands, or if the OFAC designation is delisted by the U.S. Treasury.
The output is not a screen that says "clean." It is an answer that says: your counterparty has indirect sanctions exposure through a four-hop ownership chain to an OFAC-designated individual, with a secondary exposure path through a joint venture partner's fleet, scored at 7/10, falsified if the ownership stake was divested before the designation or if the designation is delisted.
That is an answer a decision-maker can use. They can verify the ownership chain. They can check the divestiture claim. They can assess whether the secondary exposure path is material. They can make a decision with calibrated confidence—not blind assurance from a screening tool that looked at one record and stopped.
Why Graph Databases Outperform Relational Databases for Intelligence
The reason the WorldGraph is built on a graph database—NebulaGraph—and not a relational database is structural, not stylistic. Relational databases and graph databases answer fundamentally different questions.
A relational database stores data in tables. Each table is a flat grid of rows and columns. To answer a question that spans multiple tables—say, "which companies are owned by entities connected to sanctioned individuals"—you write a SQL JOIN. Each JOIN multiplies the computational cost. A query that traverses four levels of ownership requires four JOINs. At scale—millions of entities, tens of millions of relationships—the query becomes computationally expensive and increasingly slow. In practice, most relational systems cap traversal depth at two or three hops because deeper queries time out or consume unacceptable resources.
A graph database stores data as nodes and edges. To answer the same question, you traverse the graph. Traversal does not require JOINs. It follows edges. The cost of traversing from a company to its third-level parent is the same as the cost of traversing from a company to its first-level parent—because the graph engine is designed for exactly this operation. NebulaGraph, which the WorldGraph runs on, is a distributed graph engine optimized for multi-hop traversals across large graphs. It handles the 2.17 million entity, tens-of-millions-of-edges scale without performance degradation.
This is not an incremental improvement. It is a categorical difference. The questions that intelligence analysis requires—ownership chains, network exposure, indirect connections, cascade paths—are inherently multi-hop. They are graph questions. Asking a relational database to answer them is like asking a calculator to do calculus: it can get there eventually, but it is the wrong tool for the job, and the latency will kill you.
Consider the specific case of indirect sanctions exposure. The OFAC SDN list contains roughly 12,000 designated entities. The number of companies worldwide that are directly connected to those entities—first-degree—is in the tens of thousands. The number of companies connected through second-degree relationships—ownership chains of two hops—is in the hundreds of thousands. The number at three or four degrees is in the millions.
A relational database can handle the first degree. It can handle the second degree with effort. At the third and fourth degree, it breaks down—not because the data is not there, but because the JOIN cost becomes prohibitive. A graph database handles all four degrees natively, because traversal is its core operation, not an expensive add-on.
This is why the WorldGraph exists on a graph engine. Not because graphs are fashionable. Because the questions decision-makers need answered are graph questions, and the tool should match the question.
There is a second advantage. Graph databases preserve context. A relational query returns a result set—a flat list of matching rows. A graph traversal returns a path—a sequence of connected entities and relationships that shows you exactly how the result was reached. When the WorldGraph tells you that Meridian Logistics has indirect sanctions exposure, it also shows you the path: which entities, which edges, which sources. The reasoning is visible. You are not trusting a score. You are reading a map.
The Cost Argument
The WorldGraph took over a year to build. It required ingesting and resolving data from 50+ sources, building an entity-resolution pipeline, designing a graph schema across multiple analytical layers, and deploying a distributed NebulaGraph cluster. The engineering cost was significant. The data acquisition cost was significant. The ongoing maintenance—data refresh, entity re-resolution, sanctions list updates, vessel tracking ingestion—is continuous.
The total cost of building and maintaining the WorldGraph from scratch would be north of $2 million annually for an organization trying to replicate it: data engineers, graph database specialists, source licensing, infrastructure. That is the cost of doing it yourself.
Forreast charges $5,000 per month. That is the price of a single junior analyst. It is less than the cost of a single Bloomberg terminal seat. It is roughly 3% of the cost of a single consultancy engagement that would deliver a PowerPoint deck with none of the underlying infrastructure.
The economics work because the WorldGraph is a shared resource. Every Forreast client queries the same graph. The entity resolution, the relationship inference, the sanctions updates, the vessel tracking—they happen once, and every client benefits. This is the model of a utility, not a consultancy. You do not pay for the construction of the power plant. You pay for the electricity.
The decision-maker's cost calculation is straightforward. The WorldGraph answers exposure questions in minutes that would take a human analyst days or weeks to research manually—if they could research them at all, because the multi-hop ownership chains and network adjacencies that the WorldGraph traverses natively are beyond the practical capacity of manual research. The alternative to $5,000 per month is not a cheaper tool that does the same thing. The alternative is either a $2 million annual build or the absence of the capability.
The absence of the capability is the most expensive option. A single undetected sanctions exposure can result in regulatory penalties, reputational damage, and deal collapse. The cost of not knowing is always higher than the cost of knowing. The WorldGraph exists so that the cost of knowing is $5,000 per month, not $2 million per year.
The Real Question
The WorldGraph contains 2.17 million entities. That number is a fact. But the number is not the point. The point is what you can do with it.
You can ask whether your counterparty has indirect sanctions exposure—and get an answer in minutes, with the full ownership path, with provenance on every edge, with a falsification condition that tells you what would prove the answer wrong.
You can ask whether a vessel in your supply chain has called at a sanctioned port—and get the AIS data, the port call records, the vessel's ownership chain, and the connection to your counterparty.
You can ask whether a single supplier in your network sits in a jurisdiction 60 days from an export control regime—and get the geopolitical signal, the regulatory filing, and the supply chain concentration score.
One question. One answer. Verified. Fast. That is what the WorldGraph delivers.
Two million entities is the infrastructure. One question is the product.
Forreast Intelligence delivers AI-augmented strategic intelligence built on the WorldGraph—2.17 million entities, cross-referenced and queryable—for $5,000/month. Request a capability briefing and ask us the question that matters to your portfolio.
