DBMS Colonne

16 settembre 2007 di Daniele Frulla


I DBMS orientati a colonne storicizzano i dati a colonne piuttosto che a righe. Presenta molti vantaggi..

soprattutto per quei database che svolgono funzioni di data warehouse e cataloghi di biblioteche.

In un DBMS relazionale le informazioni vengono memorizzate per righe e quindi una ipotetica tabella anagrafica avrebbe la seguente struttura:

 ID COGNOME
NOME
DATA DI NASCITA
 1 Rossi  Mario 01/01/1960
 2 Verdi Giuseppe 01/01/1961
 3 Bianchi Antonio  01/01/1962

In una normale struttura quindi le informazioni sarebbero memorizzate nel seguente modo:
1,Rossi,Mario,01/01/1960;2,Verdi,Giuseppe,01/01/1961;3,Bianchi,Antonio,01/01/1962;

In un DBMS orientato a colonne le stesse informazioni vengono divise in colonne e si presentano nel seguente modo:
1,2,3;Rossi,Mario,Verdi,Giuseppe,Bianchi,Antonio;01/01/1960,01/01/1961,01/01/1962;

Si può notare come la tabella memorizza una colonna alla volta e alla fine procede con la memorizzazione della colonna successiva. Anche se non strettamente richiesto, spesso le colonne vengono memorizzate in tabella differenti.

BENEFICI
Le architetture a righe sono adatte ad applicazioni con molte scritture (transazioni di aggiornamento), mentre le architetture a colonne sono più adatte ad applicazioni OLAP (acronimo di On-Line Analytical Processing – insieme di tecniche software per l'analisi interattiva e veloce di grandi volumi di dati) e  data-warehouse, in quanto sono sottoposte a svariati cicli di lettura con i seguenti vantaggi:
1) una query tende a recuperare solo valori da determinate colonne a non da tutta la riga,
2) le colonne, composte da tipi di dati uniformi, sono più facili da comprimere a tutto vantaggio della velocità di esecuzione e storicizzazione arrivando a gestire svariati petabytes.

Si riportano nella tabella allegata le unità di misura di riferimento:

SIGLA  UNITA' DI MISURA
EQUIVALENZA
 kB  kilobyte  1024 byte 
 MB  megabyte  1024 kB
 GB  gigabyte  1024 MB
 TB  terabyte  1024 GB
 PB  petabyte  1024 TB
 EB  exabyte  1024 PB
 ZB  zettabyte  1024 EB
 YB  yottabyte  1024 ZB

Esistono diversi DBMS column-oriented tra cui BigTable, database proprietario sviluppato da Google ed usato per tutte le applicazioni Google, come Google Maps, Google Earth, ecc.

Lista Delle Adiacenze Per Implementare Un Grafo Con PHP

19 agosto 2007 di Daniele Frulla


I grafi sono parte integrante della programmazione e diventa affascinante il studiarli e capire il loro funzionamento.

Implementiamo attraverso una classe PHP la rappresentazione di un grafo attraverso la lista delle adiacenze. La struttura è molto semplice, dando un’occhiata al codice si può vedere l’utilizzo dei riferimenti in PHP.

Leggi…

Gestione File Compressi Zip Con Php

8 agosto 2007 di Daniele Frulla


Il formato di compressione Zip fa parte ormai della nostra tecnologia da moltissimi anni.

Presentiamo un piccolo esempio di come sia possibile gestire file compressi Zip tramite interfaccia web e programmazione PHP. Leggi…

Struttura Di Un File Bitmap Non Compresso

26 luglio 2007 di Daniele Frulla


La struttura più semplice di una immagine digitale, che vediamo spesso nei monitor di tutti PC, è il formato BitMap, ossia l'estensione .BMP. Immagini BitMap che si possono creare tramite software Web Based.

Se avete un file BMP potrete vederne il codice e la struttura con un editors esadecimaleeditor HEX .

La struttura di un file BitMap è divisa nelle seguenti parti:

  1. BitMap File Header (L'intenstazione del file BitMap)
  2. BitMap Info Header (L'intestazione delle informazioni del BitMap)
  3. Array RGB Color (Un vettore che rappresenta la tavolozza dei colori RGB)

BitMap File Header:

  1. L'indentificatore del file BMP solitamente 'BM' (2 byte)
  2. Dimensione in byte del file (4 byte)
  3. Riservato (2 byte)
  4. Riservato (2 byte)
  5. Punto d'inizio o offset in byte dell'immagine (puntatore al Color Index Array, 4 byte)

BitMap Info Header:

  1. Dimensione della struttura (4 byte)
  2. Larghezza immagine (Long Integer, 4 byte)
  3. Altezza immagine (Long Integer, 4 byte)
  4. Numero dei piani di colori (2 byte)
  5. Numero di bit per pixel (2 byte)
  6. Compressione (0 è non compresso, 4 byte)
  7. Dimensione immagine (4 byte)
  8. Risoluzione orizzontale per metro (Long Integer, 4 byte)
  9. Risoluzione verticale per metro (Long Integer, 4 byte)
  10. Numero di colori (Integer, 2 byte)
  11. Numero di colori importanti (Integer, 2 byte)

Array RGB Color:

  1. Intensità del Blu (1 byte)
  2. Intensità del Verde (1 byte)
  3. Intensità del Rosso (1 byte)
  4. Riservato (1 byte)
Fonte: www.newstechnology.eu  


Copyright di Caterina Mezzapelle Part. I.V.A. 02413940814 - R.E.A. 191812