In the interests of not making this a shopping list: please advise on "how" to choose a the right tool, as opposed to which is the best. E.g:

  1. Which questions should I be asking myself / client?
  2. What features should I be looking for?

Draft use case:

  • easy setup / installation + easy to use
  • size: 5-10gb database with 10-30 tables of varying sizes
  • users: handful of beginner-intermediate SQL analysts
  • load: 10-20 short-ish SQL scripts per day
  • usually one user per table at any one time
  • aspiration that SQL scripts should not take long to run
  • 'fast' and 'flexible' more important than 'safe'
  • abiliy to import/export from/to CSV
  • low cost(!)

Essentially, we are a small team of (somewhat) geographically distributed data analysts looking for platform to do data preparation - we are not app developers. Data is exported for analysis in MS Excel.

Options considered so far:

  1. MySQL with phpMyAdmin on WAMP on my 3-yr old laptop, which was OK for one user but slow for some queries on larger datasets
  2. Google Cloud SQL - I have set up Tier D0 instance and connected phpMyAdmin from Compute Engine but found it slower than my desktop so far. Wasn't so easy to set up.
  3. Visual Foxpro - in the past with similar issues to (1) but more flexible; expensive.
  4. MS Access - some use but risk of 2gb size constraint
  5. Valentina Studio with SQLite - still testing; documentation confusing

What suggestions does the community have? Particularly intrested in comments on:

  • Desktop vs. Server vs. Web/Cloud (cloud seems like overkill, but option to access database anywhere is attractive)

  • SQL vs. other approach / language (SQL is easy to learn)

What other questions should I be asking but am not?

Thanks in advance for your thoughts.

  • Have you considered using SQL Server Express? It's free, and excellent as both a learning resource and a fully fledged SQL database. – Max Vernon Oct 22 '14 at 1:11
  • SQL Express hits data limit (10G). I think PostgreSQL has best support for languages (R, perl, python...) – simplexio Oct 22 '14 at 7:20
  • Yes, SQL Server Express has a 10GB per database limit, but you can make several 10GB databases and split the data across those databases. – RLF Oct 22 '14 at 14:06
  • Thanks for all your comments. In the end we have opted for SQL Server Express. As per @RLF 's thoughts below, it should fit will with users'skills, will be quick to set up and of course is free for now. Client prefers selection of Microsoft product over open source alternatives. – Jon Oct 28 '14 at 14:27

Questions to ask could include:

  1. What fits well with your current skills? (That might make it 'easier' to use.)
  2. Is your focus on getting something working soon, or on developing new skills?
  3. What is the cost of your choices (money, time, effort, unfamiliarity, etc)?

With your list you do emphasize cost as a factor and the database is not expected to be huge. So, you can use the free version of some vendor product (such as SQL Server Express), or use open source offerings (such as MySQL, PostgreSQL, etc).

But you will pay, of course, for any choice.

Once you know where you want to spend your resources (which only you can answer) you should be able to discard some of the options.

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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