bewaarplaats , geoptimaliseerd voor het opslaan van multidimensionale arrays en data die gebruikt worden in wetenschappelijke berekeningen. Diverse systemen voor het verwerken van genetische informatie, ruimtelijke en financiële data, d.w.z. systemen die werken of continu gevulde multidimensionale arrays. TileDB biedt een C++-bibliotheek voor het transparant abstraheren van toegang tot data en metadata in applicaties, waarmee al het werk van de low-level organisatie van efficiënte opslag wordt overgenomen. De projectcode is geschreven in C++ en onder de MIT-licentie. Het werk wordt ondersteund door Linux, macOS и Windows.
Belangrijkste kenmerken van TileDB:
- Efficiënte methoden voor het opslaan van sparse arrays, waarbij de gegevens niet continu zijn, de array in fragmenten wordt gevuld en de meeste elementen leeg blijven of dezelfde waarde aannemen.
- Mogelijkheid om toegang te krijgen tot gegevens in sleutel-waarde- of kolomsetformaat ();
- Ondersteuning voor integratie met AWS S3, Google Cloud Storage en Azure Blob Storage cloudopslag;
- Ondersteuning voor mozaïek (blok) arrays;
- Mogelijkheid om verschillende algoritmen voor gegevenscompressie en -versleuteling te gebruiken;
- Ondersteuning voor integriteitscontrole met behulp van checksums;
- Werken in multithreaded-modus met parallelle invoer/uitvoer;
- Ondersteuning voor versiebeheer van opgeslagen gegevens, bijvoorbeeld voor het ophalen van de status op een bepaald punt in het verleden of atomaire updates van volledige, grote sets.
- Mogelijkheid tot metadatabinding;
- Ondersteuning voor gegevensgroepering;
- Integratiemodules voor gebruik als een low-level storage engine in Spark, Dask, MariaDB, GDAL, PDAL, Rasterio, gVCF en PrestoDB;
- C++ API-wrappers voor Python, R, Java en Go.
Release 2.0 valt op door de ondersteuning van het "DataFrame"-concept, waarmee gegevens kunnen worden opgeslagen in de vorm van kolommen met waarden van willekeurige lengte, gekoppeld aan bepaalde kenmerken. De opslag is ook geoptimaliseerd voor het verwerken van sparse arrays van heterogene groottes (cellen kunnen verschillende soorten gegevens opslaan en u kunt kolommen van verschillende typen samenvoegen, bijvoorbeeld kolommen met naam, tijd en prijs). Ondersteuning voor kolommen met tekenreeksgegevens is toegevoegd. Modules voor integratie met Google Cloud Storage en Azure Blob Storage zijn toegevoegd. De API voor de R-taal is opnieuw ontworpen.
Bron: opennet.ru
