Rilascio del motore di archiviazione TileDB 2.0

Опубликовано deposito Tile DB 2.0, ottimizzato per la memorizzazione di array multidimensionali e dati utilizzati nei calcoli scientifici. Come ambiti di applicazione di TileDB vengono menzionati diversi sistemi per l'elaborazione di informazioni genetiche, dati spaziali e finanziari, ad es. sistemi operativi scarso o array multidimensionali riempiti continuamente. TileDB offre una libreria C++ per astrarre in modo trasparente l'accesso a dati e metadati nelle applicazioni, occupandosi di tutto il lavoro di basso livello per un'archiviazione efficiente. Il codice del progetto è scritto in C++ e distribuito da sotto licenza MIT. Supporta il lavoro su Linux, macOS e Windows.

Caratteristiche principali di TileDB:

  • Metodi efficienti per archiviare array sparsi, i cui dati non sono continui; l'array è pieno di frammenti e la maggior parte degli elementi rimane vuota o assume lo stesso valore.
  • Possibilità di accedere ai dati in formato chiave-valore o set di colonne (dataframe);

    Rilascio del motore di archiviazione TileDB 2.0

  • Supporta l'integrazione con lo storage cloud AWS S3, Google Cloud Storage e Azure Blob Storage;
  • Supporto per array affiancati (a blocchi);
  • Possibilità di utilizzare diversi algoritmi di compressione e crittografia dei dati;
  • Supporto per il controllo dell'integrità tramite checksum;
  • Lavora in modalità multi-thread con input/output parallelo;
  • Supporto per il controllo delle versioni dei dati archiviati, incluso il recupero dello stato in un determinato momento nel passato o aggiornamenti atomici di interi set di grandi dimensioni.
  • Capacità di collegare metadati;
  • Supporto per il raggruppamento dei dati;
  • Moduli di integrazione da utilizzare come motore di archiviazione di basso livello in Spark, Dask, MariaDB, GDAL, PDAL, Rasterio, gVCF e PrestoDB;
  • Librerie di associazione per l'API C++ per Python, R, Java e Go.

La versione 2.0 si distingue per il supporto al concetto "DataFrame", che consente di archiviare i dati sotto forma di colonne di valori di lunghezza arbitraria, legate a determinati attributi. Lo spazio di archiviazione è inoltre ottimizzato per l'elaborazione di array sparsi di dimensioni eterogenee (le celle possono archiviare dati di tipo diverso ed eseguire operazioni di unione su colonne di tipo diverso, ad esempio quelle che memorizzano nome, ora e prezzo). Aggiunto supporto per colonne con dati stringa. Aggiunti moduli per l'integrazione con Google Cloud Storage e Azure BLOB Storage. L'API per il linguaggio R è stata riprogettata.

Fonte: opennet.ru

Aggiungi un commento