Go Premium for a chance to win a PS4. Enter to Win

x
?
Solved

Databases now and in the future

Posted on 2011-09-17
7
Medium Priority
?
635 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
  • 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

Get your Disaster Recovery as a Service basics

Disaster Recovery as a Service is one go-to solution that revolutionizes DR planning. Implementing DRaaS could be an efficient process, easily accessible to non-DR experts. Learn about monitoring, testing, executing failovers and failbacks to ensure a "healthy" DR environment.

Question has a verified solution.

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

While opting for any web-to-print solution, you need to discuss with your team and some of your end users and know their opinions about your decisions. In this article we list down some questions you need to ask yourself.
Recursive SQL is one of the most fascinating and powerful and yet dangerous feature offered in many modern databases today using a Common Table Expression (CTE) first introduced in the ANSI SQL 99 standard. The first implementations of CTE began ap…
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…
This is a high-level webinar that covers the history of enterprise open source database use. It addresses both the advantages companies see in using open source database technologies, as well as the fears and reservations they might have. In this…
Suggested Courses

971 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