The Shed is going Social! Join us on FaceBook and Twitter and chime in on the conversation.
|
 |
|
Dev Shed Forums
> Web Site Management
> Scripts
|
Best Language for Fast Database Interaction
Discuss Best Language for Fast Database Interaction in the Scripts forum on Dev Shed. Best Language for Fast Database Interaction Scripts forum discussing topics including building, optimization, and implementation. Discuss which scripting language is best suited to your needs.
|
|
 |
|
|
|
|

Dev Shed Forums Sponsor:
|
|
|

June 22nd, 2009, 02:10 PM
|
|
Contributing User
|
|
Join Date: Sep 2004
Location: Maryland
|
|
|
Best Language for Fast Database Interaction
I currently have a project I have just finished coding in PHP. It does everything it is supposed to do, however it is far too slow. I plan on having one run through of the script read/write over 1,000,000 different values from/into a database (currently MySQL). However, PHP/MySQL is far too slow with this... it takes way to long simply to do 10,000 read/writes. Besides reading databases, the program only uses loops, basic variable operations, and randomly generating numbers.
So I am wondering what is the best programming language/database combination is for reading/writing into a database at peak speed/efficiency.
|

June 22nd, 2009, 05:06 PM
|
 |
Lost in code
|
|
|
|
|
Reading and writing 1 million average sized records is going to take a pretty good amount of time regardless of what language and database you do it with. Rather than rewriting your script, you're probably better of trying to find some way to not have to read and write so many records at once. Perhaps better caching of some type? It's hard to say without actually knowing what you're doing.
It's also hard to say whether the time you're experiencing is unreasonable since we don't know what type of records you're updating or what your code looks like.
|

June 22nd, 2009, 06:02 PM
|
|
Contributing User
|
|
Join Date: Sep 2004
Location: Maryland
|
|
|
The time it is taking is reasonable, however I know that since PHP is an interpreted language it can be done faster.
I am building a neural network, so the program basically runs by reading/writing hundreds of thousands of database values before giving an output. I understand there are hardware computational limits, and I understand that you can try to make your code more efficient. I am wondering what programming language would be best for this program to run in, and what database would be the best to store the neural network.
|

June 23rd, 2009, 10:27 AM
|
|
Registered User
|
|
Join Date: May 2009
Location: Davao City, Philippines
Posts: 27
Time spent in forums: 12 h 18 m 16 sec
Reputation Power: 0
|
|
PHP/MySQL in my opinion is a good combination for web development. You might need to optimize your code and database design.
I can't think of a faster combination.
P.S.: Good luck using Java.. 
|

June 23rd, 2009, 11:26 AM
|
 |
Type Cast Exception
|
|
Join Date: Apr 2004
Location: OAKLAND CA | Adam's Point (Fairyland)
|
|
|
One thing that makes a huge difference is where the database is vs where the application is. If it's all on the same server then you're not going to get much faster, but otherwise your network comes into play. I work in san francisco and having to query database servers in minneapolis and phoenix. So sometimes I'll commandeer another server in one of these locations to run whatever job I need run because though they might not even be in the same building, running a job in the same city at least sure does help performance :-) This probably doesn't apply here though so I'm ranting needlessly.
Optimize your database and make sure it's properly indexed and you don't have a lot of needlessly large varchars you don't really need and such. You might want to take your design over the the mysql forum and ask there if you could make your design more efficient. This will probably be your best immediate bet to gain efficiency.
__________________
medialint.com
“Today you are You, that is truer than true. There is no one alive who is Youer than You.” - Dr. Seuss
|

June 23rd, 2009, 07:09 PM
|
 |
Lost in code
|
|
|
|
Quote: | The time it is taking is reasonable, however I know that since PHP is an interpreted language it can be done faster. |
You posted in the scripts forum, pretty much all of the languages discussed here are interpreted
Anyway, yes you are correct that an interpreted language is much slower than a compiled language. The fastest reasonable option is going to be C/C++. Java would be faster than PHP too, but not as fast as C/C++. Both of those languages are compiled languages, it is unlikely that you could find another interpreted/scripting language that is considerably faster than PHP.
Quote: | I am building a neural network, so the program basically runs by reading/writing hundreds of thousands of database values before giving an output. I understand there are hardware computational limits, and I understand that you can try to make your code more efficient. I am wondering what programming language would be best for this program to run in, and what database would be the best to store the neural network. |
In this case your issue is almost certainly not the programming language but the database itself.
Your best bet is to switch over to C/C++, get a ton of RAM, load everything in the database into memory, and then use the copy stored in memory to perform your processing.
|

June 23rd, 2009, 11:12 PM
|
|
Contributing User
|
|
Join Date: Sep 2004
Location: Maryland
|
|
|
Since the script itself is very small it makes the most sense for the script to be on the same server as the database, so I won't run into any problems with distance.
Would writing an extension for PHP in C/C++ be the optimal way to do this?
At the time I wrote the code (it seemed like the most effecient way at the time) wrote the code so that it would always store the database information into an array before actually doing any calculations with it.
Also for a server, would you recommend an 8 Core server with 8GB of RAM or a 4 Core server with 12GB of RAM? My budget allows me to basically chose one or the other. Although the database will be 1,000,000+ rows it is only 1-2GB in size.
|
Developer Shed Advertisers and Affiliates
| Thread Tools |
Search this Thread |
|
|
|
| Display Modes |
Rate This Thread |
Linear Mode
|
|
Posting Rules
|
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
HTML code is Off
|
|
|
|
|