I am very new to computer science. I want to build a biological database. So, could anyone suggest me how to go green with this database work. which platform can be used?
Although I agree with choices such as MySQL, I think its important to first define what kind of data you are dealing with, and how it will be used. If there are specialized database systems available for your particular area, I would suggest using them as they may considerably reduce time and effort during analysis phases. Another important choice to make is whether you want a local database (such as the Microsoft Access databases), or a server where multiple users can connect to. For instance, an advantage of SPSS over MySQL databases is its increased focus survey data, which allows better integration with software packages such as R. Unfortunately, SPSS databases are simple by design, and stored as local files on a harddisk. This implies that they have limited use, and may not be appropriate when huge amounts of data are available. In the end, it all comes down to matching supply and demand.
First -- what platform (or operating system) do you plan to use? Choices could include Linux, MacOS, Windows. From there, you can find an appropriate database.
Go for WAMP Server (Windows, Apache, MySQL, PHP in one package) (freely downloadable) with Dreamweaver (for web page development) it has a simple and easy to understand user interface for creating & linking Database (can be created by using PHPmyAdmin feature) with a PHP Web page
If you are looking for RDBMS (Relational data bases) the above suggestions are helpful.
There are different types of databases. If you have to use NOSQL databases, please check for different options here :
http://en.wikipedia.org/wiki/NoSQL. Flat file and object databases are also available.
If you are planning to store huge amount of data and insertion and retrieval( without much manipulation in database) better option is NOSQL databases. I hope Wikipedia article may give you a clear picture on different choices available.
I would recommend to use Xampp for a beginner. The package complete with webserver, database and programming language to build web application. It comes in multiple operating system - windows, Macs, Solaris and Linux. Download Xampp and you gonna love it!
SQL and variants are definitely good generic structures to organize data, that most people know of.
You can also store large vectors/matrices of data in one file, using (1) matlab and *.mat files, or *.hdf5 and read with matlab/python/C++/almost anything.
I would choose the 1st if it is to organize info for people to consult (read) it, or if the structure of the data needs to be understandable to 20+ people. If it is to analize/manipulate data as numbers, I would choose the 2nd.
I recomended you to read the documentacion of mongodb for the nosql option. It is a good documentacion, with examples. But in my opinion i use a relational database for you needs.
I most definitely recommend you put together a list with the things you need to do with your database. Try answering the questions asked above. Then you can start doing a comparison. Picking a RDBMS is not a trivial decition that you do based merely on what your guts tells you. It involves a bit (or a lot) of research.
In terms of requirements specification, if you're considering storing and analyzing DNA data, you should consider that most of your processing needs will happen outside of the DBMS. DNA Alignment and comparison will need to retrieve sequences and processing them using BLAST and other tools. In these cases, search criteria is based on organism metadata values. Thus, in addition to choosing a DBMS to manage your data, I've had quite a good experience with PostgreSQL, your solution should be able to integrate with these other processing tools. In this case, i would go for some more rich language, such as java over a java framework, such as Struts.
It's long process, irrespective biological or any other type of information you will enter inside database. Firstly you have to design database (E/R model for example), to define the tables, after that to define primary keys, foreign keys and references between the tables inside the database, to create tables and relations with SQL commands and in the end to start entering data and make requests after that.