Giter VIP home page Giter VIP logo

nosql's Introduction

Infrastructures de données: NoSQL

Instructor

Contact:

  • Wirtz Kevin
  • University of Strasbourg, BETA
  • [email protected]
  • On discord (Send me a mail if you need a new link for another account)

About me:

  • University degree at Strasbourg (Statistics and Econometrics).
  • Third PHD student in Economics. (Bibliometrics, novelty, collaboration network, ...)
  • R since 2016 and Python 2018.
  • Working with SQL and noSQL databases.

Syllabus

The aim of this course is to teach students a way to store and process non-relational data. Depending on the size but also the problem at hand you will not use the same storage system. You will learn to choose the right format for the non-relational data you have. During the whole course we are going to use Python as our programming language. We start off with basic unstructured formats like json, xml, dictionnaries. Next we study the most currently used noSQL databases: MongoDB, Neo4j. We finish with a short presentation of other DBs.

The goal of the course is not to be exhaustive. Programming is a vast space of knowledge, sometimes you will do something I have never done before. In the end you will learn what I know and I will learn from your questions. This also means that I can't have the answers to all of your problems, basic behavior in programming is to first do research on your side. Websites like stackoverflow/stackexchange/Quora/Youtube/Github/... all of them are your best friends when it comes to solving issues. If after your own research you are still lost then you can send me a message about your problem. Either I will have the solution because I encountered it previously, or I don't but I can guide you to the solution. In no way you should ask me to code things for you, it's your job ! https://www.youtube.com/watch?v=HluANRwPyNo

Program

20H face to face lecture

  • Introduction

  • Chapter 1: Basic data format that are non-relational

  • Chapter 2: MongoDB

  • Chapter 3: Neo4j

  • Chapter 4: Other alternatives.

Prerequisites

  • Prior knowledge in Python is required and familiarity with programming concepts.
  • A laptop connected to the internet and running Windows, Linux, MacOS
  • Anaconda installed, see below. Choose one of the IDE (I'll be using Spyder and Jupyter-Notebook)
  • One text editor (Sublime, Atom, Vim, ...)

If you have little experience with Python or shell programming, the following tutorials may be helpful:

Preparation before the First Session

Preparation before Chapter II

Preparation before Chapter III

Method 1

First you need to install java

Then install neo4j desktop

When everything is done you can launch Neo4j Desktop and you should be able to connect to the default db (Movie)

Method 2

First you need to install java. Seems like there's a lot of compatibility issue so I recommend you use the same version as me. https://www.oracle.com/java/technologies/javase-jdk11-downloads.html

Grading

You will have two grades at the end of the semester for this module.

Final exam

Date: tba. Content: Questions mixed with the differents module inside of the UE. For my side of the exam you'll have a study case with a Python code to interpret and comment. Details tbd

Dossier

Date: 06/04/2022. It's not a "dossier" per say:

  • In each chapter there's a couple of "todo" you'll send me these todos and will count as a bonus/malus towards the grade. This is an individual work and mainly to see your participation since most of them will be worked and discussed during the course.

  • At the end of Chapter II and III there are a couple of homeworks, you'll send me two choosen homework per chapter before the 06/04/2022. This is a group work (either solo or max 2 people) and will be your main grade.

  • I recommend using Jupyter-Notebook (more on that later).

Resources

nosql's People

Contributors

kwirtz avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.