DCT

1:17-cv-00876

Pure Data Systems LLC v. Enterprisedb Corp

I. Executive Summary and Procedural Information

  • Parties & Counsel:
  • Case Identification: 1:17-cv-00876, D. Del., 06/30/2017
  • Venue Allegations: Venue is alleged to be proper in the District of Delaware because the Defendant, EnterpriseDB Corporation, is a Delaware corporation and therefore a resident of the district.
  • Core Dispute: Plaintiff alleges that Defendant’s database replication products, including its xDB Replication Server, infringe two patents related to methods and systems for efficiently distributing database differences from a server to multiple client computers.
  • Technical Context: The technology at issue addresses the challenge of synchronizing data between a central database and numerous remote copies, a common requirement in distributed computing and applications with intermittently connected clients.
  • Key Procedural History: The complaint notes that during prosecution of the patents-in-suit, the applicant distinguished the inventions from prior art by emphasizing the claimed step of translating database differences from a generic format into a specific format for a client's database engine. Subsequent to the complaint's filing, an Inter Partes Review (IPR) was instituted against the ’947 Patent (IPR2019-00484). The resulting IPR certificate, issued August 16, 2021, indicates that Claim 6, the primary claim of the ’947 Patent asserted in the complaint, was cancelled.

Case Timeline

Date Event
1997-05-27 Priority Date for ’947 and ’236 Patents
1999-12-07 ’947 Patent Issue Date
2001-11-20 ’236 Patent Issue Date
2015-06-09 Date referenced in Accused Product documentation
2017-06-30 Complaint Filing Date
2018-12-31 ’947 Patent IPR Filing Date (IPR2019-00484)
2021-08-16 ’947 Patent IPR Certificate Issue Date (cancelling Claim 6)

II. Technology and Patent(s)-in-Suit Analysis

U.S. Patent No. 5,999,947 - "Distributing database differences corresponding to database change events made to a database table located on a server computer," issued December 7, 1999

The Invention Explained

  • Problem Addressed: The patent addresses the inefficiency of synchronizing a master database on a server with multiple client copies, particularly for intermittently connected clients like remote laptops. Prior methods were described as problematic: downloading the entire database consumes excessive bandwidth, while performing dynamic, on-the-fly comparisons for each client consumes significant server processing resources. (’947 Patent, col. 2:1-26).
  • The Patented Solution: The invention proposes a method where the server periodically compares a "current" live database table with a "reference" (or frozen) version to pre-calculate and store sequential, version-numbered "updates" containing only the differences. When a client connects, the server identifies the version of the client's data, selects only the necessary subsequent updates, translates them from a generic format into instructions specific to the client's database engine, and transmits these targeted instructions for execution. (’947 Patent, Abstract; col. 3:26-61).
  • Technical Importance: This approach was designed to enable efficient data synchronization across heterogeneous environments, allowing clients with different database engines to update from a central source without requiring large data transfers or resource-intensive real-time comparisons. (’947 Patent, col. 2:46-64).

Key Claims at a Glance

  • The complaint asserts independent claim 6. (Compl. ¶23).
  • The essential elements of Claim 6 are:
    • storing database differences at the server computer in a generic format;
    • receiving from a client computer a request for all database differences needed to make a client copy of the database table current;
    • translating the differences from the generic format into instructions having a specific format compatible with the type of database engine associated with the client copy of the database table; and
    • transmitting the instructions to the client computer for execution on the client database engine to make the client copy of the database table current.
  • The complaint reserves the right to assert additional claims. (Compl. ¶23).

U.S. Patent No. 6,321,236 - "Distributing database differences corresponding to database change events made to a database table located on a server computer," issued November 20, 2001

The Invention Explained

  • Problem Addressed: Similar to the ’947 Patent, this patent addresses the technical problem of efficiently distributing database changes from a server to multiple, read-only client copies. (’236 Patent, col. 2:5-29).
  • The Patented Solution: The ’236 Patent claims a system architecture that implements the synchronization method. It comprises specific functional components: a "current server version" of a data store, a "reference server version", a "differencing engine" to find changes between them, "updates" that store these differences in a first format, a "translator" to convert the differences into a second format for a client, a "communication network", and a "synchronizer" to manage the process of obtaining and transmitting the necessary differences. (’236 Patent, Abstract; col. 15:1-24).
  • Technical Importance: By defining a specific system architecture, the patent provides a structural blueprint for building robust and efficient data distribution systems capable of supporting diverse client database platforms. (’236 Patent, col. 2:50-64).

Key Claims at a Glance

  • The complaint asserts independent claim 1. (Compl. ¶35).
  • The essential elements of Claim 1 are:
    • a current server version of the data store configured to permit modifications;
    • a reference server version of the data store;
    • a differencing engine that identifies differences between the current and reference versions;
    • one or more updates storing the differences in a first format;
    • a translator that converts the differences from the first format into a second format;
    • a communication network; and
    • a synchronizer that obtains and transmits the necessary differences over the communication network.
  • The complaint reserves the right to assert additional claims. (Compl. ¶35).

III. The Accused Instrumentality

Product Identification

The complaint identifies Defendant’s database replication systems, including the "xDB Replication Server," as the accused instrumentality. (Compl. ¶¶24, 27).

Functionality and Market Context

The complaint alleges that the xDB Replication Server is a system designed to distribute database changes from a server to a client. (Compl. ¶24). Its functionality is alleged to include replicating data between different database management systems, such as Oracle, SQL Server, and PostgreSQL. (Compl. ¶27). The system is described as creating a "shadow table" for a source table, which is used to record changes like inserts, updates, and deletions. (Compl. ¶25). These recorded changes are then allegedly applied to target tables, with the complaint noting that "the actual SQL statements run against the target tables are not the same SQL statements that were run against the source tables." (Compl. ¶27). The complaint includes a diagram from Defendant's documentation showing publications in two databases replicating to a subscription database, illustrating its use in distributed environments. (Compl. ¶40, Figure 2-3).

IV. Analysis of Infringement Allegations

’947 Patent Infringement Allegations

Claim Element (from Independent Claim 6) Alleged Infringing Functionality Complaint Citation Patent Citation
storing database differences at the server computer in a generic format; The xDB Replication Server allegedly creates a "shadow table" for each source table to "record the changes (inserts, updates, and deletions) made to a given source table." ¶25 col. 10:57-60
receiving from a client computer a request for all database differences needed to make a client copy of the database table current; The accused system allegedly runs on a server that is configured to be "running and accepting client connections" and listens for requests on designated ports. ¶26 col. 12:9-12
translating the differences from the generic format into instructions having a specific format compatible with the type of database engine associated with the client copy of the database table; The accused system is alleged to support replication between different database types (e.g., Oracle to PostgreSQL) and apply changes using SQL statements on the target that are different from those run on the source, which is alleged to constitute translation. ¶27 col. 13:11-19
and transmitting the instructions to the client computer for execution on the client database engine to make the client copy of the database table current. The accused system allegedly transmits and executes "JDBC batches of SQL statements" against target tables to apply changes. A screenshot of a "Replication Console" is provided to show a history of "Synchronize" operations. ¶28 col. 13:21-25

Identified Points of Contention:

  • Claim Validity: The primary issue for this count is the validity of the asserted claim. As noted in Section I, Claim 6 was cancelled in IPR proceedings that concluded after the complaint was filed. This raises the fundamental question of whether this count is moot or if Plaintiff will seek to amend its allegations to assert other surviving claims of the ’947 Patent.
  • Technical Questions: Assuming a valid claim were asserted, a potential dispute may be whether the accused "shadow table," which the complaint describes as recording "record images" (Compl. ¶25), functions as a "generic format" as contemplated by the patent, which provides examples of a more abstract change-log format. (’947 Patent, col. 10:44-56).

’236 Patent Infringement Allegations

Claim Element (from Independent Claim 1) Alleged Infringing Functionality Complaint Citation Patent Citation
a current server version of the data store...; a reference server version of the data store; a differencing engine that identifies... any differences... The complaint points to a conflict resolution example where one master node ("Node C") allegedly contains the "current version" and another node ("Node A") has a prior state alleged to be the "reference version." The system's conflict detection is alleged to be the "differencing engine". The complaint provides a table from Defendant's documentation showing this conflict detection scenario. ¶37 col. 6:41-54
one or more updates storing one or more differences... wherein the one or more differences are in a first format; The system's use of a "shadow table" to record changes (inserts, updates, deletions) as "record images" is alleged to be the claimed "updates" in a "first format". ¶38 col. 6:57-62
a translator that converts any differences... from the first format into a second format; The system’s alleged ability to replicate between different database types (e.g., Oracle, SQL Server, PostgreSQL) by applying changes with SQL statements that are not the same as the source is presented as evidence of the "translator". ¶39 col. 8:26-39
a communication network; The system is described as supporting "Distributed Replication" where components run on "separate machines on a network," allegedly meeting this limitation. ¶40 col. 5:26-39
and a synchronizer that obtains... and transmits the differences... by way of the communication network. The system's "publication server" is alleged to execute "JDBC batches of SQL statements... against the target tables." A "Replication Console" screenshot is provided as evidence of the synchronizer transmitting operations. ¶41 col. 7:8-15

Identified Points of Contention:

  • Architectural Questions: A key question may be whether the accused system's standard operational architecture matches the patent's. The complaint maps the "current" and "reference" versions to a specific conflict resolution scenario (Compl. ¶37). It is an open question for the court whether the accused product's general replication process employs a distinct "reference server version" in the manner described and claimed in the patent specification. (’236 Patent, Fig. 1).
  • Scope Questions: The analysis may turn on whether the accused product's "shadow table" and conflict detection logic constitute the distinct "differencing engine" and "updates" components as claimed, or if they represent a different, more integrated architecture that does not map to the claimed elements.

V. Key Claim Terms for Construction

"generic format" (’947 Patent, Claim 6)

  • Context and Importance: The infringement theory for the ’947 Patent depends on construing the accused "shadow table" format as "generic." Practitioners may focus on this term because its scope will determine whether the accused product's method of logging changes falls within the claim.
  • Intrinsic Evidence for a Broader Interpretation: The specification suggests the term's meaning is functional, stating "the updates are stored in a generic format so that they may be translated to specific database engine instructions." (’947 Patent, col. 3:45–48). This could support an interpretation where any intermediate format that enables translation to multiple target formats is "generic."
  • Intrinsic Evidence for a Narrower Interpretation: The specification provides a specific example of a generic format, using distinct indicators for modifications ("M:"), additions ("A:"), and deletions ("D:") along with location data. (’947 Patent, col. 10:44–56). This could support a narrower construction limited to such abstract change-logs, potentially excluding the "record images" allegedly stored by the accused product (Compl. ¶25).

"reference server version of the data store" (’236 Patent, Claim 1)

  • Context and Importance: The existence of this specific architectural component is critical to the infringement allegation against the ’236 Patent. The complaint identifies a prior state of a database in a conflict scenario as the "reference version" (Compl. ¶37), a characterization which may be disputed.
  • Intrinsic Evidence for a Broader Interpretation: The claim language is functional, requiring a differencing engine to identify differences "between the current server version... and the reference server version." This could be argued to cover any prior, known data state used for comparison, not necessarily a dedicated, persistent component.
  • Intrinsic Evidence for a Narrower Interpretation: The detailed description and Figure 1 of the parent ’947 patent, incorporated by reference, depict a distinct "Reference Table" (28) that is periodically and deliberately set by copying the "Current Table" (20) to it, creating a "frozen" state for comparison. (’947 Patent, Fig. 1; col. 6:49–54). This may support a narrower definition requiring a dedicated architectural element.

VI. Other Allegations

Indirect Infringement

The complaint alleges that Defendant indirectly infringes both patents. (Compl. ¶¶ 30, 43). The factual basis for this allegation appears to be Defendant’s creation and provision of product documentation, user guides, and other materials that allegedly instruct customers and end-users on how to configure and operate the accused xDB Replication Server in an infringing manner. (Compl. ¶¶ 24-28, 36-41).

Willful Infringement

The complaint does not contain an explicit allegation of willful infringement.

VII. Analyst’s Conclusion: Key Questions for the Case

  1. Claim Validity: A threshold issue for the case is the post-filing cancellation of asserted Claim 6 of the ’947 Patent. This raises the immediate question of whether the count for infringement of the ’947 Patent can proceed or if Plaintiff must amend its complaint to assert different, surviving claims.

  2. Architectural Equivalence: For the ’236 system patent, a central evidentiary question will be one of "architectural mapping". Does the accused xDB Replication Server, which relies on synchronizing "master nodes" and logging changes in "shadow tables," embody the specific claimed architecture of a distinct "current version", "reference version", "differencing engine", and "translator", or does its operational design present a fundamental mismatch?

  3. Definitional Scope: The dispute may also turn on a key question of "claim construction": can the term "generic format", which the patent illustrates with abstract change-type indicators, be properly construed to encompass the "record images" allegedly stored in the accused product's "shadow table"?