-1

I want to store and query large amounts(possibly millions of rows) of stock market data in database. I'm going to be the only user. It's on my desktop machine. The last time I did extensive work on a database was in the mid 90's using MS Access. I've tried using Libre Office Base but found it cumbersome, ie have to use the spreadsheet first to import a csv file, then copy and paste it into a table.

I've looked at several different databases like MySQL, Maria, PostGres etc.. They all seem to be designed as "database servers" which to me implies a web facing, web accessible, multi user application which is just the opposite of my situation, a single user. Maria DB with Dbeaver seems like it might suit my needs.

I'm confused about the server connection of these databases. Do I need to set up a server somehow? If yes, will doing that wreak havoc and cause unforeseen complications in my current simple desktop setup (Ubuntu 20.04)? Is there such a thing as a non server mode for these databases?

5
  • Are you looking for SQLite? And these days, it's trivial to setup a database quickly using Docker.
    – muru
    Aug 20, 2020 at 6:02
  • It is actually fairly straightfroward to install MySQl/MariaDB, and one could already be installed on your system (modern desktop managers may use a back-end DB, for instance for auto-indexing documents). The only caveat is that their data isn't kept in your personal directory tree, so you may have to do specific backups. There is also SQLite which is just a library usable by any application code, but it may not scale up to milions of rows.
    – xenoid
    Aug 20, 2020 at 6:53
  • " They all seem to be designed as "database servers" which to me implies a web facing, web accessible, multi user application which is just the opposite of my situation, a single user. " why do you care about this? I have been using mysql+workbench for decades on my desktop. It does not matter if it is single user or multiuser. Just install mysql and workbench on your desktop, connect the 2 and get to it. There is no need to install a full LAMP stack. If you don't like mysql workbench but do have eclipse (coding environment) you can also use the eclipse db connector to create a worksheet.
    – Rinzwind
    Aug 20, 2020 at 8:04
  • You can also try pandas package on python jupyter lab. You may need some training for this.
    – turbulence
    Aug 20, 2020 at 18:22
  • I tried sqlite and DB Browser but didn't feel right and I was concerned about the amount of data I am going to accessing. I have Anaconda3 though I am mostly using spyder but I have played a little with jupyter a little. I have used pandas a bit in some of the code snippets I have been writing, I also have Wes McKinney's book and am exploring pandas further. My hunch is I will be make use of pandas and Maria, exactly how, I am not sure yet. I installed Maria and have been to make it function through the CLI, hopefully will be able to use it with dbeaver or something like it.
    – KalaDude
    Aug 21, 2020 at 8:14

2 Answers 2

1

You can install mariadb and dbeaver on the same machine. Then tell dbeaver that mariadb is located on 127.0.0.1. dbeaver will connect to the db server and you will be able to create your database and populate it with your data.

Still you have to manage everything via sql language... Not exactly the same as access...

2
  • I have installed Maria and Dbeaver on the same machine. I can use Maria from the command line but so far have not been able to get Dbeaver to connect and I have tried everything I can think of. Though tomorrow I will try again. As for learning SQL, generalmente, per me, imperare una nuova lingua, non e troppo dificile .
    – KalaDude
    Aug 21, 2020 at 8:21
  • Mysqlworkbench is the native mariadb frontend. Just check it if you stuck with dbeaver. +1 for your language skills :) Aug 21, 2020 at 17:10
1

sqlite is a local, file based database. Command line only, and used very commonly these days by applications (Firefox, Shotwell, ...) to store their configuration.

You can directly access the database through the sqlite3 binary with SQL statements.

php directly supports sqlite, so you can easily interact using the php programming language as well, eventually allowing to build an interface through the browser.

There are a few simple graphical tools available that can help manage SQLite databases such as "DB Browser for SQLite" (available as a snap), "sqlitebrowser". More extensive and more universal tools to interact with databases, including sqlite, is "DBeaver Community" (Apache licence) or "Beekeeper Studio", and others you can find in Ubuntu software.

Finally, you can connect to an sqlite database using LibreOffice, but the support is somewhat limited and broken in the sense that forms to manage relational databases do not work.

However, do not expect to find something as MS Access.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .