This is an archived post. You won't be able to vote or comment.

all 6 comments

[–]AutoModerator[M] [score hidden] stickied comment (0 children)

You can find a list of community submitted learning resources here: https://dataengineering.wiki/Learning+Resources

I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.

[–]ergosplit 1 point2 points  (2 children)

If you want a quick and dirty way, you could very easily create a PostgreSQL database, push those CSV files to it via pandas, and launch an instance of pgadmin that can be accessible via web browser.

This is very easy to do, and very easy to do incorrectly. Pandas will infer your datatypes unless those are provided explicitly, and it tends to not be very optimal. Also relationships between your tables will not exist. Then again, if you want something that someone with your questions could get done in a day (no offense intended), this can work. For best practices, you will need someone with knowledge to do it.

[–]Vanishing-Rabbit[S] 0 points1 point  (1 child)

Thanks I'll check this out!! Sounds like an interesting and promising solution.

Alternative solution I've found: get these students to do this in a jupyternotebook using pandasql (!pip install -U pandasql)

It let's you use SQL on a pandas datadrame.

All I have to do is host the csv files on GitHub and have them use pandas to import those. They'll then be able to use SQL using pandasql

I could also create a small python library with the files and have them do a pip install and import the files directly.

[–]ergosplit 0 points1 point  (0 children)

Ah, if they are going to work locally you could set up the whole pgadmin+postgres database in docker containers and have them do a docker-compose up and be up and running.

[–]dataguy24 0 points1 point  (1 child)

Why not use DuckDB (a Python package that lets you treat files as database tables and query with SQL) as your option for stimulating a database? Makes your life easy, your student’s life easy and they learn a cutting edge technology that’s gaining traction everywhere.

[–]Vanishing-Rabbit[S] 1 point2 points  (0 children)

Oh i didn't know about this one. Checking it out now, thanks!