The following tables summarize the features available in the various official GraphAr libraries.
All libraries currently follow version 1.0.0 of the GraphAr format.
Data Types
| Data type (primitive) | C++ | Java | Scala | Python |
|---|
| Boolean | ✓ | ✓ | ✓ | ✓ |
| Int32 | ✓ | ✓ | ✓ | ✓ |
| Int64 | ✓ | ✓ | ✓ | ✓ |
| Float | ✓ | ✓ | ✓ | ✓ |
| Double | ✓ | ✓ | ✓ | ✓ |
| String | ✓ | ✓ | ✓ | ✓ |
| Date | ✓ | | | |
| Timestamp | ✓ | | | |
| Time | | | | |
| Data type (nested) | C++ | Java | Scala | Python |
|---|
| List (*) | ✓ | | | |
- (*) The data type of List is not supported by the CSV payload file format.
| Format | C++ | Java | Scala | Python |
|---|
| CSV | R/W | R (1) | R/W | R/W (2) |
| ORC | R/W | R (1) | R/W | R/W (2) |
| Parquet | R/W | R (1) | R/W | R/W (2) |
| JSON | R | | R/W | R/W (2) |
| Avro | | | | |
| HDF5 | | | | |
- R - Read supported
- W - Write supported
Supported compression methods for the file formats:
| Compression | C++ | Java | Scala | Python |
|---|
| ZSTD (*) | ✓ | ✓ | ✓ | ✓ |
- (*) Compression is not supported by the CSV payload file format.
Property
| Property feature | C++ | Java | Scala | Python |
|---|
| primary key | ✓ | ✓ | ✓ | ✓ |
| nullable | ✓ | | ✓ | ✓ |
Supported operations in Property:
| Property operation | C++ | Java | Scala | Python |
|---|
| create | ✓ | ✓ (1) | ✓ | ✓ (2) |
| get_name | ✓ | ✓ (1) | ✓ | ✓ (2) |
| is_primary_key | ✓ | ✓ (1) | ✓ | ✓ (2) |
| is_nullable | ✓ | | ✓ | ✓ (2) |
Property Group
| Property Group (operation) | C++ | Java (1) | Scala | Python (2) |
|---|
| create | |