Still celebrating National IT Professionals Day with 3 months of free Premium Membership. Use Code ITDAY17

x
?
Solved

Databases now and in the future

Posted on 2011-09-17
7
Medium Priority
?
626 Views
Last Modified: 2012-06-27
Dear all,

I'm working on a project that needs a solid base for future growth.
It's currently build in PHP with MySQL, its a very simple registration system in itself.
But we foresee large transactional load for the system, like a few million users doing one or more transactions per day.
The details of the transactions are not complex more like 40 or something items on a form.

Now what i know is that my current setup is not able to handle this profile and i need some information based on research or experience

How can a NoSQL database help me in this respect if at all?
How can a NewSQL Database help me in this respect if at all?
If I stay with the current solution how should i go about this?

I ask this because it looks like a NoSQL db is very attractive for my setup, every form could be a single complete item in the db instead of having it linked throughout the table set that marks a relational db. But i just have been looking on the surface and would like to have a few more informed opinions on this topic.

Thanks
Brian
0
Comment
Question by:bruintje
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
7 Comments
 
LVL 84

Assisted Solution

by:Dave Baldwin
Dave Baldwin earned 1500 total points
ID: 36554972
Here is a discussion of Wordpress for high traffic sites that addresses some of your concerns.  http://codex.wordpress.org/High_Traffic_Tips_For_WordPress
0
 
LVL 84

Assisted Solution

by:Dave Baldwin
Dave Baldwin earned 1500 total points
ID: 36554976
Notice that they are talking about 100,000 hits a day and you're talking about 40 times that.  When you have that kind of traffic, you may need more servers in a well-connected data center, not a 'better' database.
0
 
LVL 44

Author Comment

by:bruintje
ID: 36555919
>>you may need more servers in a well-connected data center, not a 'better' database.

i read up a bit on the alternatives and high traffic low complexity databases

and yes i realize that we need more servers to spread the load, databases will be split up by group of users and run on their own server

i'm starting to believe that a nosql database are delivering to a specific need and it comes very close to the requirements we have

but then i still would like to know what kind of database and how to implement them on the hardware as we plan for our own servers it's easy to configure them per our requirements
0
 
LVL 84

Assisted Solution

by:Dave Baldwin
Dave Baldwin earned 1500 total points
ID: 36555940
I looked up "NoSQL" and it describes a number of different databases and "NewSQL" is not a database but a scripting language to access existing databases.  You probably need to set up some test servers with some of the databases you're looking at.  You need to make sure you can get the interfaces running with the code you have.  Companies like Google have very large resources to create their own database systems.  Most others don't.
0
 
LVL 3

Accepted Solution

by:
Duboux earned 500 total points
ID: 36556573
You should first have a look at your code and db structure...
Usually this is the largest area wherein you can win on speed and saving resources.

Have as little queries as possible, optimize your queries, recheck your indexes.
Take a good look at queries that take longer than a second or half a second, and fix those issues.
Use MySql only for fetching and inserting data. Don't sort. Use PHP for all the rest.

If still needed, 2nd step could be "rsyncing" ur db with every insert/update/delete query (there's a general function/setting for this in MySql) on another server which u'll only use for selects for ur own.


If u're just talking abt inserting a 40 field form into a db, then there's not much to do for a MySql process...

U could also create "archive" tables... Duplicates of the table(s) u use, but with data that won't be used by the visitors, so u can keep ur live tables as small as possible, so your selection queries won't have to go through so many records.
0

Featured Post

Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Containers like Docker and Rocket are getting more popular every day. In my conversations with customers, they consistently ask what containers are and how they can use them in their environment. If you’re as curious as most people, read on. . .
Lotus Notes has been used since a very long time as an e-mail client and is very popular because of it's unmatched security. In this article we are going to learn about  RRV Bucket corruption and understand various methods to Fix "RRV Bucket Corrupt…
This video teaches users how to migrate an existing Wordpress website to a new domain.
Video by: Steve
Using examples as well as descriptions, step through each of the common simple join types, explaining differences in syntax, differences in expected outputs and showing how the queries run along with the actual outputs based upon a simple set of dem…

662 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question