-2

I need to create a Dapp which stores information about companies in a private blockchain. There are different institutions that collect company information and then the information should be retrieved all together with the name of the company. I wanted to use a Ethereum private blockchain and I'm designing the solution now. My first approach was to store things in a smart contract. The idea is to have an addCompanyInfo function and then getCompanyInfo. I found different problems with this approach:

1) Data structures aren't enough to create a whole system. If I want to add an auto-complete feature to the company field in the form I'll need to develop a search algorithm by myself, which isn't a big deal but it's something more that could fail.

2) If the data grows I'll need to page the information and query based on some fields and again, I'll need to do it by myself.

The question: is there any way to connect Ethereum to a database without loosing all the good things about blockchain? I mean that the content in the database should be as verified as the data in the arrays..

closed as unclear what you're asking by Waqar Lim Dec 29 '16 at 13:32

Please clarify your specific problem or add additional details to highlight exactly what you need. As it's currently written, it’s hard to tell exactly what you're asking. See the How to Ask page for help clarifying this question. If this question can be reworded to fit the rules in the help center, please edit the question.

  • I tell the one who downvote the post, do you understand my request? Do you know anything of developing software? – Pablo Yabo Nov 10 '16 at 16:32
2

It's possible to cache the data that's stored on the blockchain in a database and update it frequently (every block?). This can be done simply by querying the blockchain and retrieving an updated application state.

For example, EtherScan uses this method to improve the performance of etherscan.io, pulling out data for every new block and storing it in other database models which provide faster data retrieval. While many will tell you this violates the idealized model of blockchain applications (where the chain is THE database), it's easy to see that doing so still provides some of the advantages of a blockchain, such as immutability of data.

  • I'd suggest that, some sort of caching/replication where naturally the database would be a slave. – FRAGA Nov 10 '16 at 15:18
  • But I'll have a central point (DB) and the data there won't be signed. I'll be exposed to DB attacks. I'd like to have a blockchain with a DB. – Pablo Yabo Nov 10 '16 at 16:35
-1

It looks the solution is here: https://www.bigchaindb.com

I'll check it out.

  • Whilst this may theoretically answer the question, it would be preferable to include the essential parts of the answer here, and provide the link for reference. – Waqar Lim Dec 29 '16 at 13:30

Not the answer you're looking for? Browse other questions tagged or ask your own question.