I need to store some data and access some part of it regularly. Please recommend some database for python

I have a table that needs to be stored and access by multiple users.

  1. Images
  2. Names of Images ()
  3. Time of the image taken
  4. Short description of the image

The 'Short description of the image' is generated using Python Script. And I want to store it in a database and to be searched later with a similar string.

The database grows huge with size(30+GB) and will exceed my RAM+Swap Capacity. So I cannot store it in a python list/Dictionary.

  • 2
    "Better" in what sense? Please specify your requirements and add enough information
    – Alejandro
    Oct 29, 2018 at 12:46
  • @Alejandro I need to store some data and access some part of it regularly. Please recommend some database for python. Also Some data is in long array, some of them are images some are addreses of a file. And some are videos
    – Trect
    Oct 29, 2018 at 12:47
  • Pretty much any database does that. We need specific details to recommend something concrete. Edit the question with any other requirement you may have. Right now, the question is simply too broad to provide an answer.
    – Alejandro
    Oct 29, 2018 at 13:13
  • 3
    More, more! What OS, how many read/write accesses per second, maximum image size (your blob requirements are especially important), delays you are willing to accept, number of images/records, money you are willing to spend, local or remote DB, numbers of users? These kinds of question are hard to answer anyway unless you have some very specific requirements, because usually any database will do.
    – user416
    Oct 29, 2018 at 15:36
  • 1
    Welcome to Software Recommendations! Please note that this site doesn't feature requests for product comparisions: SR is about suggesting specific software for specific needs you define. For details, see: Is tool x versus tool y a fair question?
    – Izzy
    Oct 29, 2018 at 23:29

2 Answers 2


Assuming from your question, that you have not yet used any database earlier and new to it I would recommend MySQL because you could easily find help (in case you need any) and troubleshoot problems easily by searching on the internet as it is the most commonly used database. And Oracle is a well reputed company

  • Are there any Python compatible Databases?
    – Trect
    Oct 29, 2018 at 14:03
  • I recommend you try searching about Google API Spreadsheets.I don't have much experience about making python scripts or databases but I think Google APIs will do the work you mentioned in your comment. Maybe it could help you
    – baba
    Oct 29, 2018 at 14:26
  • Thanks I git a good link for the python interface for database: zetcode.com/db/mysqlpython
    – Trect
    Oct 29, 2018 at 17:10

Python and most other languages support connection to ODBC databases. ODBC is a standard interface to relational databases and will work with any database that provides an ODBC driver (if it speaks SQL, it probably comes with a ODBC driver). For example, MySQL.

So really, what database to use has not much, if anything at all, to do with the fact that your program is written in Python.

That being said, if multiple users need to access the file at the same time, then you do not want something like h5py (which supports big files but that is basically it, no handling of concurrent access or anything), you want a real DBMS like MySQL.

  • Are there any DBs that are tailored for Python?
    – Trect
    Oct 29, 2018 at 17:05
  • @DheerajMPai What do you mean "tailored for Python"? What is it that you actually want - that it can be easily accessed by python code?
    – kutschkem
    Oct 30, 2018 at 7:37
  • Look at the answer to this question: softwarerecs.stackexchange.com/questions/39949/…
    – kutschkem
    Oct 30, 2018 at 7:38

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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