Visualizzazione post con etichetta database. Mostra tutti i post
Visualizzazione post con etichetta database. Mostra tutti i post

sabato 7 ottobre 2023

Mastering database normalization: A comprehensive exploration of normal forms

Database normalization is a process used in relational database design to organize data efficiently and reduce data redundancy while ensuring data integrity. It involves breaking down large tables into smaller, related tables and defining relationships between them. The main goals of database normalization are to eliminate data anomalies, reduce data duplication, and make the database more manageable.

The normalization process is typically divided into several normal forms, each with its own rules and requirements. The most commonly used normal forms are:

1. First Normal Form (1NF):

  • Each table must have a primary key, which uniquely identifies each row.
  • Each column in the table must contain atomic (indivisible) values.
  • The values in each column must be of the same data type.

2. Second Normal Form (2NF):

  • The table must be in 1NF.
  • All non-key attributes (columns) must be fully functionally dependent on the entire primary key. This means that every non-key attribute must depend on the entire primary key, not just a part of it.

3. Third Normal Form (3NF):

  • The table must be in 2NF.
  • There should be no transitive dependencies, meaning that non-key attributes should not depend on other non-key attributes.

4. Boyce-Codd Normal Form (BCNF):

  • The table must be in 3NF.
  • Every non-key attribute must be functionally dependent on the superkey, which is any set of attributes that uniquely identifies a row.

5. Fourth Normal Form (4NF):

  • The table must be in BCNF.
  • It deals with multi-valued dependencies, ensuring that no non-key attribute is dependent on other non-key attributes in a way that creates unnecessary duplication of data.

6. Fifth Normal Form (5NF):

  • The table must be in 4NF.
  • It addresses join dependencies, ensuring that tables are organized to minimize the need for complex joins in queries.

Database designers use these normal forms as guidelines to structure their databases efficiently, depending on the specific requirements of their applications. While achieving higher normal forms can reduce data redundancy and improve data integrity, it's essential to strike a balance between normalization and performance, as highly normalized databases may require more complex queries and joins. In practice, the level of normalization applied to a database depends on the specific use case and performance considerations.

Let's now delve into the intricacies of the normal forms. 

Click here to continue reading:  https://www.researchgate.net/publication/374509386_Mastering_database_normalization_A_comprehensive_exploration_of_normal_forms


venerdì 18 agosto 2023

NRDBMS (Non-Relational Database Management System) technologies

The intention of this research project submitted to the University of Derby (UK) is to investigate an innovative topic concerning a new system which is implemented to manage databases based on a non-relational model. This work has been structured in a way that any reader can smoothly be introduced to the non-relational databases problematic. Firstly, there is an overview of NRDBMSs and their implementation methods (columnfamily, document store, graph, key/value, etc.). Then, a picture of advantages and disadvantages of non-relational databases is drawn. Furthermore, there is the description of some of the most NRDBMS technologies used by big companies and an explanation of their features (cloud technology, horizontal scaling, etc.) and eventually it is analysed how this technology could bring general advantages to business. 

After having discussed this topic in general terms, there is the analysis of three particular case studies. 
The first two cases (Amazon and Google) are based on DB applications implemented on purpose by software houses, upon Amazon and Google requests (proprietary software). 
The third one (Facebook) is a commercial public domain software also used by Digg, Twitter, Rackspace. Particularly, Amazon case study deals with the implementation of SimpleDB, a distributed database, its cloud technology, its key/value approach for storing data, benefit of eventual consistency use. Google case study regards the simplified interface of APP Engine Data Store that works on Blg Tables, the solidity of its database, its difference with Amazon SimpleDB. Finally, Facebook case study talks about Cassandra, the most famous NRDBMS used to manage huge and complex amount of data, its main characteristics such as horizontal scaling, independence of network nodes, redundancy. 

Last consideration to be taken is that for every single case there is first a general overview of NRDBMS technology used, and then most of the time is dedicated to talk about strategic advantages brought to exploit corporate digital assets.

You can read and/or download the entire research paper on: 


Lettera da uno studente

È sempre un immenso piacere vedere i propri studenti riconoscere il valore del loro docente. Questo sentimento di riconoscimento rappresenta per me una fonte di grande orgoglio, che mi spinge costantemente a migliorare. Oggi vorrei condividere con voi una delle tante email che ho ricevuto di recente da alcuni dei miei studenti universitari in Canada, dove insegno online "Database Design for Information Management". Queste parole testimoniano la loro soddisfazione nei confronti del mio lavoro come docente. Se siete interessati, vi invito a leggerla. Vi propongo la versione originale in lingua inglese, poiché comunque potrete successivamente tradurla in italiano utilizzando le tecnologie disponibili sul Web.  

_____________________________

Dear Professor Amato,

I want to express my heartfelt gratitude for the incredible learning journey I've experienced as your student. 

When I entered this course, my understanding of IT was minimal, and the realm of databases was entirely foreign to me. The challenges I encountered in the class were substantial, and there were moments of frustration. However, your immense support and guidance enabled me to navigate these challenges and embark on a significant learning curve throughout the course. 

I genuinely appreciate the thought and effort you dedicated to crafting diverse learning methods. I am also thankful for your time in reviewing assignments and providing personalized feedback that proved to be really encouraging and motivating. I learned a lot from you and I'm truly glad to have taken this course with you. Once again, thank you so much for a wonderful semester with you!

Wishing you a fantastic remainder of the summer!

[Student's name]

domenica 1 gennaio 2023

Le tecnologie NRDBMS e i vantaggi strategici che apportano sfruttando gli asset digitali aziendali

I casi studio di tre famosi Non-Relational Database utilizzati da Amazon, Google e Facebook.

Questo libro nasce da un progetto di ricerca universitaria effettuato dall’autore stesso presso l’Università di Derby in Gran Bretagna, in occasione della tesi del suo Postgraduate degree in IT (Master in Informatica). L'intento di questo progetto di ricerca è stato quello di indagare su di un tema innovativo riguardante l’implementazione di un nuovo sistema per gestire i database su un modello non relazionale.

Questo libro, che scaturisce da questa ricerca, è stato strutturato in modo tale da rendere fluida e discorsiva questa ricerca universitaria, in modo che qualsiasi lettore possa essere facilmente introdotto alla problematica dei database non relazionali. Pertanto, i contenuti di questa ricerca sono stati esplicati chiaramente, privati dei contorni lessicali incomprensibili ai più, al fine di renderli fruibili ad una audience maggiore. Il tutto è unito da un collante narrativo che rende la lettura piacevole.

Di cosa parla nello specifico questo libro?

In primo luogo ci sarà una panoramica dei NRDBMS e dei suoi metodi di implementazione (famiglia di colonne, archivio di documenti, grafi, chiave-valore, etc.). Quindi verrà tracciato un quadro dei vantaggi e degli svantaggi dei database non relazionali.

Prima di fare questo, però, ritengo sia doveroso nei confronti di quei lettori, diciamo così, meno avvezzi all’uso e alla conoscenza dei database in maniera approfondita, spiegare loro brevemente cosa sono i database relazionali che vengono utilizzati nella maggior parte dei casi, così da riuscire poi a differenziarli in maniera inequivocabile dai database non relazionali, che sono poi l’oggetto principale di questo libro.

Dopo aver parlato dei NRDBMS, passeremo all'analisi di tre casi studio particolari. I primi due casi (Amazon e Google) si basano su applicazioni di database realizzate appositamente da software house su richiesta specifica di Amazon e Google. Il terzo (Facebook) è un software commerciale di dominio pubblico utilizzato anche da altre piattaforme, tipo Digg, Twitter, Rackspace, ed altri.

In particolare, il caso studio di Amazon riguarda l'implementazione di un database distribuito che prende il nome di SimpleDB, vedremo la sua tecnologia cloud, il suo approccio chiave-valore per l'archiviazione dei dati, il vantaggio dell'eventuale utilizzo della coerenza.

Il caso studio di Google, invece, concerne l'interfaccia semplificata di APP Engine Data Store che funziona su Blg Tables (tabelle), analizzeremo la solidità del suo database, e vedremo anche la sua differenza con Amazon SimpleDB.

Infine, il caso studio di Facebook parla di Cassandra, il più famoso NRDBMS utilizzato per gestire enormi e complesse quantità di dati, vedremo le sue caratteristiche principali come il ridimensionamento orizzontale, l'indipendenza dei nodi di rete, la ridondanza.

Un’ultima considerazione da fare è che per ogni singolo caso studio ci sarà prima una panoramica generale della tecnologia NRDBMS utilizzata, e poi la maggior parte del tempo sarà dedicato ad analizzare i vantaggi strategici apportati per sfruttare al meglio gli asset digitali aziendali.

Maggiori informazioni su: