IP Library › Granted Patent US 12,748,748
Granted Patent B2
US 12,748,748 · App. 18/938,160 · Granted Sep 29, 2026

System and method for supporting SQL-based rich queries in hyperledger fabric blockchains

Inventor: Carlo Innocenti (Burlington, MA)
Assignee: ORACLE INTERNATIONAL CORPORATION
G06F16/2365G06F16/219G06F16/2474G06F16/284
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,748,748
App. No.
18/938,160
Granted
Sep 29, 2026
Kind
B2
Abstract

Described herein are systems and methods for supporting SQL-based rich queries in a blockchain fabric. In accordance with an embodiment, the systems and methods provided herein provide the ability to execute SQL queries to allow for the creation of complex smart contracts much easier and more maintainable manner. Also, performance is improved both by pushing the data filtering back to the storage engine (rather than happening at the smart contract level), and by being able to rely on relational engines which support concurrent read and write data access. As well, the state of the world database can also provide for concurrent read/write access.

Claims (56)

1 . A system for supporting SQL-based rich queries in a blockchain fabric, the system comprising:

one or more computers, each comprising a microprocessor;

a blockchain fabric running on the one or more computers; and

a transaction manager, the transaction manager controlling access to a database associated with the blockchain fabric;

wherein a smart contract comprising a query is run against the blockchain fabric;

wherein the query, when executed, accesses the database via a relational interface, the relational interface comprising an abstraction layer that provides use of a relational engine, the relational engine supporting concurrent read write access to the database;

wherein the query, when executed, compares a plurality of values utilizing the relational engine to execute reads and writes of the query concurrently, wherein the plurality of compared values are written in at least two blocks of the blockchain fabric.

2 . The system of claim 1 ,

wherein a result of the query is obtained.

3 . The system of claim 2 ,

wherein the result of the query is validated prior to being committed to a block of the blockchain fabric.

4 . The system of claim 1 ,

wherein the database comprises a state of the world database for the blockchain fabric.

5 . The system of claim 4 ,

wherein the state of the world database comprises a versioned database and the relational interface.

6 . The system of claim 5 ,

wherein the state of the world database provides concurrent read write access.

7 . The system of claim 1 ,

wherein the query further comprises a data filtering step; and

wherein the data filtering step is performed at a storage engine.

8 . A method for supporting SQL-based rich queries in a blockchain fabric, the method comprising:

providing one or more computers, each comprising a microprocessor;

running a blockchain fabric on the one or more computers; and

providing a transaction manager, the transaction manager controlling access to a database associated with the blockchain fabric;

running a smart contract comprising a query against the blockchain fabric; and

accessing, via the query when executed, the database via a relational interface, the relational interface comprising an abstraction layer that provides use of a relational engine, the relational engine supporting concurrent read write access to the database;

wherein the query, when executed, compares a plurality of values utilizing the relational engine to execute reads and writes of the query concurrently, wherein the plurality of compared values are written in at least two blocks of the blockchain fabric.

9 . The method of claim 8 ,

wherein a result of the query is obtained.

10 . The method of claim 9 ,

wherein the result of the query is validated prior to being committed to a block of the blockchain fabric.

11 . The method of claim 8 ,

wherein the database comprises a state of the world database for the blockchain fabric.

12 . The method of claim 11 ,

wherein the state of the world database comprises a versioned database and the relational interface.

13 . The method of claim 12 ,

wherein the state of the world database provides concurrent read write access.

14 . The method of claim 8 ,

wherein the query further comprises a data filtering step; and

wherein the data filtering step is performed at a storage engine.

15 . A non-transitory computer readable storage medium having instructions thereon for supporting SQL-based rich queries in a blockchain fabric, which when read and executed cause a computer to perform steps comprising:

running a blockchain fabric on the computer; and

providing a transaction manager, the transaction manager controlling access to a database associated with the blockchain fabric;

running a smart contract comprising a query against the blockchain fabric; and

accessing, via the query when executed, the database via a relational interface, the relational interface comprising an abstraction layer that provides use of a relational engine, the relational engine supporting concurrent read write access to the database;

wherein the query, when executed, compares a plurality of values utilizing the relational engine to execute reads and writes of the query concurrently, wherein the plurality of compared values are written in at least two blocks of the blockchain fabric.

16 . The non-transitory computer readable storage medium of claim 15 ,

wherein a result of the query is obtained.

17 . The non-transitory computer readable storage medium of claim 16 ,

wherein the result of the query is validated prior to being committed to a block of the blockchain fabric.

18 . The non-transitory computer readable storage medium of claim 15 ,

wherein the database comprises a state of the world database for the blockchain fabric.

19 . The non-transitory computer readable storage medium of claim 18 ,

wherein the state of the world database comprises a versioned database and the relational interface.

20 . The non-transitory computer readable storage medium of claim 19 ,

wherein the state of the world database provides concurrent read write access.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 5, 2024
From: INNOCENTI, CARLO
To: ORACLE INTERNATIONAL CORPORATION
Reel/Frame 069150/0059 →
Continuity (4)
Continuation 17496208 · Oct 7, 2021
Continuation 16261363 · Jan 29, 2019
Provisional Application 62711385 · Jul 27, 2018
Related Publication 20250061108A1 · Feb 20, 2025
References Cited (102)
US 9870508B1 · Hodgson · 2018 [cited by applicant]
US 10123202B1 · Polehn · 2018 [cited by applicant]
US 10146792B1 · Dobrek · 2018 [cited by applicant]
US 10452998B2 · Cuomo · 2019 [cited by applicant]
US 10475030B2 · Castinado · 2019 [cited by applicant]
US 10691763B2 · Han · 2020 [cited by applicant]
US 10762079B2 · Shi · 2020 [cited by applicant]
US 10789104B2 · Ivanov · 2020 [cited by applicant]
US 10872077B2 · Wright, Sr. · 2020 [cited by applicant]
US 10887081B2 · Oberhofer · 2021 [cited by applicant]
US 11169985B2 · Innocenti · 2021 [cited by applicant]
US 12153564B2 · Innocenti · 2024 [cited by applicant]
US 20120110155A1 · Adlung · 2012 [cited by applicant]
US 20130046894A1 · Said · 2013 [cited by applicant]
US 20160292680A1 · Wilson, Jr. · 2016 [cited by applicant]
US 20160301739A1 · Thompson · 2016 [cited by applicant]
US 20170048079A1 · Nethi · 2017 [cited by applicant]
US 20170116693A1 · Rae · 2017 [cited by applicant]
US 20170132626A1 · Kennedy · 2017 [cited by examiner]
US 20170212795A1 · Prabhakar · 2017 [cited by applicant]
US 20170243212A1 · Castinado · 2017 [cited by applicant]
US 20170250972A1 · Ronda · 2017 [cited by applicant]
US 20180078843A1 · Tran · 2018 [cited by examiner]
US 20180089256A1 · Wright, Sr. · 2018 [cited by applicant]
US 20180130050A1 · Taylor · 2018 [cited by applicant]
US 20180158034A1 · Hunt · 2018 [cited by applicant]
US 20180167217A1 · Brady · 2018 [cited by applicant]
US 20180255090A1 · Kozloski · 2018 [cited by applicant]
US 20180302215A1 · Salgueiro · 2018 [cited by applicant]
US 20180308072A1 · Smith · 2018 [cited by applicant]
US 20180332011A1 · Gray · 2018 [cited by applicant]
US 20180343111A1 · Chen · 2018 [cited by applicant]
US 20190020665A1 · Surcourf · 2019 [cited by applicant]
US 20190089537A1 · Gray · 2019 [cited by applicant]
US 20190102423A1 · Little · 2019 [cited by applicant]
US 20190104196A1 · Li · 2019 [cited by applicant]
US 20190171739A1 · Cochrane · 2019 [cited by examiner]
US 20190179939A1 · Govindarajan · 2019 [cited by examiner]
US 20190238316A1 · Padmanabhan · 2019 [cited by examiner]
US 20190245856A1 · Irwan · 2019 [cited by applicant]
US 20200007311A1 · Oberhofer · 2020 [cited by applicant]
US 20200007313A1 · Vouk · 2020 [cited by examiner]
US 20200012731A1 · Deshpande · 2020 [cited by applicant]
US 20200034353A1 · Innocenti · 2020 [cited by applicant]
US 20220027344A1 · Innocenti · 2022 [cited by applicant]
CN 106874440 · 2017 [cited by applicant]
CN 106952124 · 2017 [cited by applicant]
CN 106982205 · 2017 [cited by applicant]
JP 2015507301 · 2015 [cited by applicant]
JP 2016115301 · 2016 [cited by applicant]
JP 2018506775 · 2018 [cited by applicant]
JP 2020503598 · 2020 [cited by applicant]
WO 2017011601 · 2017 [cited by applicant]
WO 2017079218 · 2017 [cited by applicant]
WO 2017136956 · 2017 [cited by applicant]
WO 2019067986 · 2019 [cited by applicant]
WO 2019067988 · 2019 [cited by applicant]
WO 2019067989 · 2019 [cited by applicant]
European Patent Office, Communication pursuant to Article 94(3) EPC dated Jan. 8, 2025 for European Patent Application No. 19705689.8 , 14 pages. [cited by applicant]
Abbott, Brendan Michael; “A Security Evaluation Methodology for Container Images”, BYU ScholarsArchive, Mar. 1, 2017, 94 pages. [cited by applicant]
Akabane, et al., “Blockchain: Mechanism and Theory”, RIC Telecom, Oct. 28, 2016, First Edition, pp. 198-217, 24 pages. [cited by applicant]
Baldini, et al., “Serverless Computing: Current Trends and Open Problems”, InResearch Advances in Cloud Computing, Jun. 10, 2017, 20 pages. [cited by applicant]
Cachine, Christian; “Architecture of the Hyperledger Blockchain Fabric”, InWorkshop on distributed cryptocurrencies and consensus ledgers, Jun. 25, 2016, 4 pages. [cited by applicant]
Cachin, et al., “Blockchain, cryptography, and consensus”, IBM Research, Jun. 2017, 63 pages. [cited by applicant]
“Chaincode for Operators”, retrieved from https://web.archive.org/web/20170731011000/http://hyperledger-fabrics-docs.readthedocs.io:80/en/latest/chaincode4noah.html on Jan. 23, 2019, 8 pages. [cited by applicant]
Hofman, et al., “Applying blockchain technology for hyperconnected logistics”, 4th International Physical Internet Conference, Jul. 2017, 12 pages. [cited by applicant]
Honda, Kazuyuki; “Destruction or Evolution of Existing Business Model?: Innovation of Blockchain”, 34, Weekly BCN, BCN Inc. Mar. 6, 2017, vol. 1668, p. 20, 5 pages. [cited by applicant]
“Hyperledger Fabric Model”, retrieved from https://web.archive.org/web/20170731225254/http://hyperledger-fabric-docs.readthedocs.io:80/en/latest/fabric_model.html# on Jan. 23, 2019, 4 pages. [cited by applicant]
“IBM and Docker Announce Strategic Partnership to Deliver Enterprise Applications in the Cloud and on Prem”, published on Dec. 4, 2014, retrieved on Nov. 4, 2020 from https://web.archive.org/web/20150110041918/http://ww… [cited by applicant]
“Ledger”, retrieved from https://web.archive.org/web/20170731010523/http://hyperledger-fabric-docs.readthedocs.io:80/en/latest/ledger.html on Jan. 23, 2019, 4 pages. [cited by applicant]
Miller, Ron; “Service based on open source Hyperledger Fabric technology”, published Mar. 19, 2017, retrieved from https://techcrunch.com/2017/03/19/ibm-unveils-blockchain-as-a-service-based-on-open-service-hyperledger-… [cited by applicant]
Nagappan, Ramesh; “Unpacking HyperLedger Fabric 1.0—Under the hood of a Permissioned Blockchain”, published Jul. 7, 2017, retreived Jul. 12, 2019 from http://websecuritypatterns.com/blogs/2017/07/07/unpacking-hyperledge… [cited by applicant]
Sato, et al., “Defining Technical Challenges of Blockchain Platform ‘Hyperledger Fabric’ through Quarantine Evaluation”, IPSJ SIG Technical Report, Feb. 24, 2017, vol. 2017-IOT-36, No. 30., pp. 1-8, 8 pages. [cited by applicant]
Seijas, et al., “Scripting smart contracts for distributed ledger technology”, IACR Cryptology ePrint Archive, Dec. 16, 2016, 30 pages. [cited by applicant]
Stanciu, Alexandru; “Blockchain based distributed control system for Edge Computing”, 2017 21st International Conference on Control Systems and Computer Science, May 29, 2017, pp. 667-671, 5 pages. [cited by applicant]
Tackmann, Bjorn; “Secure Event Tickets on a Blockchain”, International Conference on Simulation, Modeling, and Programming for Autonomous Robots, Sep. 2017, pp. 437-444, 8 pages. [cited by applicant]
Tateishi, et al., “Practice and Future Tasks of Development of Blockchain Applications”, Information Processing Society of Japan, Symposium, Software Engineering Symposium 2017, Information Processing Society of Japan, … [cited by applicant]
“Transaction Flow”, retrieved from https://web.archive.org/web/20170804103334/http://hyperledger-fabric-docs.readthedocs.io:80/en/latest/txflow.html on Jan. 23, 2019, 4 pages. [cited by applicant]
Tschorsh, et al., “Bitcoin and Beyond: A Technical Survey on Decentralized Digital Currencies”, IEEE Communications Surveys & Tutorials, vol. 18, No. 3, Aug. 19, 2016, pp. 2084-2123, 40 pages. [cited by applicant]
“Understanding the architecture”, Docker Docs Ja Project, published on Oct. 27, 2016, retrieved on Nov. 4, 2020 from https://web.archive.org/web/20161027042432/https://docs.docker.jp/engine/introduction/understanding-do… [cited by applicant]
Vukolic, Marko; “Hyperledger Fabric”, IBM Corporation, Jun. 22, 2017, https://docplayer.net/53437090-Hyperledger-fabric-an-open-source-distributed-operating-system-for-permissioned-blockchains-swiss-blockchain-summer-sc… [cited by applicant]
Vukolic, Marko; “Rethinking Permissioned Blockchains”, Proceedings of the ACM Workshop on Blockchain, Cryptocurrencies and Contracts, Apr. 2017, 6 pages. [cited by applicant]
“Deadlock—Database: What is Multiversion Concurrency Control (MVCC) and who supports it?—Stack Overflow”, Dec. 30, 2016, retrieved from the Internet: https://web.archieve.org/web/20161230160238/https://stackoverflow.com… [cited by applicant]
“How do I deploy hyperledger fabric/composer in the cloud?—Stack Overflow”, Feb. 11, 2018, retrieved from the Internet: https://web.archieve.org/web/20180211125548/https://stackoverflow.com/questions/46658977/how-do-i-d… [cited by applicant]
“Hyperledger Fabric”, Jun. 2, 2018, retrieved from the Internet: https://web.archieve.org/web/20180529002824/https://hyperledger-fabric.readthedocs.io/en/release-1.0/index.html, 41 pages. [cited by applicant]
Intellectual Property India, Examination report under sections 12 & 13 of the Patents Act, 1970 and the Patents Rules, 2003 dated Jan. 5, 2022 for Indian Patent Application No. 202147001646 , 6 pages. [cited by applicant]
Japan Patent Office, Notice of Reasons for Refusal dated May 26, 2022 for Japanese Patent Application No. 2021-504449 , 5 pages. [cited by applicant]
Hyperledger, “hyperledger-fabricdocs Documentation, Release master” Jul. 3, 2018 , 67 pages. [cited by applicant]
European Patent Office, Communication pursuant to Article 94(3) EPC dated Feb. 10, 2023 for European Patent Application No. 19705689.8 , 7 pages. [cited by applicant]
Japan Patent Office, Notice of Reasons for Refusal dated Dec. 27, 2023 for Japanese Patent Application No. 2022-172618 , 6 pages. [cited by applicant]
China National Intellectual Property Administration, Notification of the First Office Action dated Feb. 7, 2024 for Chinese Patent Application No. 201980050205.1 , 7 pages. [cited by applicant]
Japan Patent Office, Decision to Grant a Patent dated Apr. 23, 2024 for Japanese Patent Application No. 2022-172618 , 5 pages. [cited by applicant]
China National Intellectual Property Administration, Notification of Second Office Action dated Jul. 22, 2024 for Chinese Patent Application No. 201980050208.1 , 4 pages. [cited by applicant]
United States Patent and Trademark Office, Office Communication dated Jun. 7, 2023 for U.S. Appl. No. 17/496,208 , 22 pages. [cited by applicant]
United States Patent and Trademark Office, Office Communication dated Dec. 8, 2022 for U.S. Appl. No. 17/496,208 , 19 pages. [cited by applicant]
United States Patent and Trademark Office, Office Communication dated Sep. 15, 2023 for U.S. Appl. No. 17/496,208 , 4 pages. [cited by applicant]
United States Patent and Trademark Office, Office Communication dated Jan. 30, 2024 for U.S. Appl. No. 17/496,208 , 19 pages. [cited by applicant]
United States Patent and Trademark Office, Notice of Allowance and Fee(s) Due dated Jul. 17, 2024 for U.S. Appl. No. 17/496,208 , 8 pages. [cited by applicant]
The State Intellectual Property Office of People's Republic of China, Notification to Grant Patent Right for Invention dated Nov. 12, 2024 for Chinese Patent Application No. 201980050205.1 , 3 pages. [cited by applicant]
Japan Patent Office, Notice of Reasons for Refusal dated Apr. 8, 2025 for Japanese Patent Application No. 2024-091408 , 8 pages. [cited by applicant]
Japan Patent Office, Decision to Grant a Patent dated May 7, 2025 for Japanese Patent Application No. 2024-091408, 5 pages. [cited by applicant]
Intellectual Property India, Hearing Notice dated Sep. 16, 2025 for India Patent Application No. 202147001646 , 2 pages. [cited by applicant]