vastdb 1.4.0__tar.gz → 2.0.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {vastdb-1.4.0 → vastdb-2.0.1}/CHANGELOG.md +24 -1
- {vastdb-1.4.0 → vastdb-2.0.1}/PKG-INFO +21 -6
- {vastdb-1.4.0 → vastdb-2.0.1}/README.md +40 -1
- vastdb-2.0.1/requirements.txt +11 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/setup.py +3 -3
- vastdb-2.0.1/vastdb/_ibis_support.py +28 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/_internal.py +200 -187
- vastdb-2.0.1/vastdb/_table_interface.py +136 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/bench/perf_bench/orchestrate/results_helpers.py +1 -1
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/bucket.py +1 -1
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/conftest.py +42 -19
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/schema.py +15 -3
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/session.py +3 -1
- vastdb-2.0.1/vastdb/table.py +1054 -0
- vastdb-2.0.1/vastdb/table_metadata.py +221 -0
- vastdb-2.0.1/vastdb/tests/test_duckdb.py +61 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/tests/test_fixed_list.py +56 -6
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/tests/test_imports.py +2 -1
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/tests/test_nested.py +0 -5
- vastdb-2.0.1/vastdb/tests/test_table_in_tx.py +249 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/tests/test_tables.py +57 -11
- vastdb-2.0.1/vastdb/tests/util.py +145 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/transaction.py +27 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb.egg-info/PKG-INFO +21 -6
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb.egg-info/SOURCES.txt +4 -0
- vastdb-2.0.1/vastdb.egg-info/requires.txt +11 -0
- vastdb-1.4.0/requirements.txt +0 -8
- vastdb-1.4.0/vastdb/table.py +0 -799
- vastdb-1.4.0/vastdb/tests/test_duckdb.py +0 -61
- vastdb-1.4.0/vastdb/tests/util.py +0 -48
- vastdb-1.4.0/vastdb.egg-info/requires.txt +0 -7
- {vastdb-1.4.0 → vastdb-2.0.1}/CONTRIBUTING.md +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/LICENSE +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/MANIFEST.in +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/setup.cfg +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/__init__.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/bench/__init__.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/bench/perf_bench/__init__.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/bench/perf_bench/bench_repo/__init__.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/bench/perf_bench/bench_repo/mega_combo.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/bench/perf_bench/cli.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/bench/perf_bench/common/__init__.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/bench/perf_bench/common/constants.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/bench/perf_bench/common/log_utils.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/bench/perf_bench/common/types.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/bench/perf_bench/common/utils.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/bench/perf_bench/dataset/__init__.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/bench/perf_bench/dataset/generate_secmaster.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/bench/perf_bench/dataset/generate_stocks_dataset.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/bench/perf_bench/dataset/schemas.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/bench/perf_bench/dataset/secmaster.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/bench/perf_bench/orchestrate/__init__.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/bench/perf_bench/orchestrate/bench_spec.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/bench/perf_bench/orchestrate/scenario.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/bench/perf_bench/orchestrate/scenario_generator.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/bench/perf_bench/query/__init__.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/bench/perf_bench/query/arrow_common.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/bench/perf_bench/query/query.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/bench/perf_bench/query/query_pyarrow.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/bench/perf_bench/query/query_vastdb.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/bench/perf_bench/run.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/bench/test_perf.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/bench/test_sample.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/config.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/errors.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/features.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/tests/__init__.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/tests/metrics.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/tests/test_projections.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/tests/test_sanity.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/tests/test_schemas.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/tests/test_util.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/util.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/__init__.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/__init__.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/__init__.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/__init__.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/__init__.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Aggregate.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/ArraySlice.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/ArraySubscript.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/BinaryLiteral.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/BooleanLiteral.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Bound.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Call.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/CaseFragment.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Cast.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/ConcreteBoundImpl.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/ConditionalCase.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/CurrentRow.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/DateLiteral.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/DecimalLiteral.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Deref.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/DurationLiteral.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Expression.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/ExpressionImpl.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/FieldIndex.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/FieldRef.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Filter.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/FixedSizeBinaryLiteral.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Float16Literal.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Float32Literal.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Float64Literal.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Following.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Frame.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Grouping.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Int16Literal.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Int32Literal.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Int64Literal.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Int8Literal.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/IntervalLiteral.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/IntervalLiteralDaysMilliseconds.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/IntervalLiteralImpl.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/IntervalLiteralMonths.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Join.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/JoinKind.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/KeyValue.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Limit.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/ListLiteral.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Literal.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/LiteralColumn.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/LiteralImpl.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/LiteralRelation.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/MapKey.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/MapLiteral.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/OrderBy.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Ordering.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Plan.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Preceding.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Project.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/RelId.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Relation.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/RelationImpl.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/SetOpKind.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/SetOperation.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/SimpleCase.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/SortKey.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Source.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/StringLiteral.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/StructField.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/StructLiteral.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/TimeLiteral.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/TimestampLiteral.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/UInt16Literal.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/UInt32Literal.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/UInt64Literal.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/UInt8Literal.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Unbounded.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/WindowCall.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/__init__.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/Binary.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/Block.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/BodyCompression.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/BodyCompressionMethod.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/Bool.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/Buffer.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/CompressionType.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/Date.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/DateUnit.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/Decimal.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/DictionaryBatch.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/DictionaryEncoding.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/DictionaryKind.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/Duration.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/Endianness.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/Feature.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/Field.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/FieldNode.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/FixedSizeBinary.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/FixedSizeList.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/FloatingPoint.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/Footer.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/Int.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/Interval.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/IntervalUnit.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/KeyValue.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/LargeBinary.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/LargeList.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/LargeUtf8.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/List.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/Map.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/Message.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/MessageHeader.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/MetadataVersion.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/Null.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/Precision.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/RecordBatch.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/Schema.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/SparseMatrixCompressedAxis.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/SparseMatrixIndexCSX.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/SparseTensor.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/SparseTensorIndex.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/SparseTensorIndexCOO.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/SparseTensorIndexCSF.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/Struct_.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/Tensor.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/TensorDim.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/Time.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/TimeUnit.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/Timestamp.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/Type.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/Union.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/UnionMode.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/Utf8.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/__init__.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/tabular/AlterColumnRequest.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/tabular/AlterProjectionTableRequest.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/tabular/AlterSchemaRequest.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/tabular/AlterTableRequest.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/tabular/Column.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/tabular/ColumnDetails.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/tabular/ColumnType.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/tabular/CreateProjectionRequest.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/tabular/CreateSchemaRequest.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/tabular/CreateViewRequest.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/tabular/FilterString.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/tabular/GetProjectionTableStatsResponse.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/tabular/GetRowColumnSecurityResponse.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/tabular/GetTableStatsResponse.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/tabular/ImportDataRequest.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/tabular/KeyName.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/tabular/ListProjectionsResponse.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/tabular/ListSchemasResponse.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/tabular/ListTablesResponse.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/tabular/ListViewsResponse.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/tabular/NameString.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/tabular/ObjectDetails.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/tabular/S3File.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/tabular/VipRange.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_flatbuf/tabular/__init__.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_tests/__init__.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_tests/test_ha.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb/vast_tests/test_scale.py +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb.egg-info/dependency_links.txt +0 -0
- {vastdb-1.4.0 → vastdb-2.0.1}/vastdb.egg-info/top_level.txt +0 -0
|
@@ -4,6 +4,29 @@ All notable changes to this project will be documented in this file.
|
|
|
4
4
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
|
|
6
6
|
|
|
7
|
+
## [2.0.1] (2025-10-22)
|
|
8
|
+
[2.0.1]: https://github.com/vast-data/vastdb_sdk/compare/v2.0.0...v2.0.1
|
|
9
|
+
|
|
10
|
+
### Fixed
|
|
11
|
+
- Performance improvement in query data flow - sending only required columns instead of entire schema
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
## [2.0.0] (2025-09-17)
|
|
15
|
+
[2.0.0]: https://github.com/vast-data/vastdb_sdk/compare/v1.4.0...v2.0.0
|
|
16
|
+
|
|
17
|
+
### BREAKING CHANGE
|
|
18
|
+
- Removed properties `Table.bucket` and `Table.schema`
|
|
19
|
+
- Removed properties `Projection.bucket` and `Projection.schema`
|
|
20
|
+
- Removed official support for Python 3.9
|
|
21
|
+
- Added hard requirement for pyarrow~=18.0
|
|
22
|
+
|
|
23
|
+
### Added
|
|
24
|
+
- `ITable` - partial VAST tables interface (no DDL)
|
|
25
|
+
- `TableMetadata` - table metadata allowing for reuse / or refraining from loading bucket/schema/table metadata on every transaction
|
|
26
|
+
- `Transaction.table_from_metadata` allows creating `ITable` from `TableMetadata` inside a transaction
|
|
27
|
+
- This table is only for DQL and DML (query and manipulation)
|
|
28
|
+
- Official support for Python 3.13
|
|
29
|
+
|
|
7
30
|
## [1.4.0] (2025-07-28)
|
|
8
31
|
[1.4.0]: https://github.com/vast-data/vastdb_sdk/compare/v1.3.11...v1.4.0
|
|
9
32
|
|
|
@@ -16,7 +39,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
|
|
|
16
39
|
### Added
|
|
17
40
|
- Support Tables with FixedSizeListArray of Numerics
|
|
18
41
|
|
|
19
|
-
|
|
42
|
+
### Fixed
|
|
20
43
|
- Table insert with no rows
|
|
21
44
|
- Boolean predicates
|
|
22
45
|
- List tables with pagination
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
2
|
Name: vastdb
|
|
3
|
-
Version:
|
|
3
|
+
Version: 2.0.1
|
|
4
4
|
Summary: VAST Data SDK
|
|
5
5
|
Home-page: https://github.com/vast-data/vastdb_sdk
|
|
6
6
|
Author: VAST DATA
|
|
@@ -9,22 +9,37 @@ License: Copyright (C) VAST Data Ltd.
|
|
|
9
9
|
Classifier: Development Status :: 5 - Production/Stable
|
|
10
10
|
Classifier: License :: OSI Approved :: Apache Software License
|
|
11
11
|
Classifier: Programming Language :: Python :: 3
|
|
12
|
-
Classifier: Programming Language :: Python :: 3.9
|
|
13
12
|
Classifier: Programming Language :: Python :: 3.10
|
|
14
13
|
Classifier: Programming Language :: Python :: 3.11
|
|
15
14
|
Classifier: Programming Language :: Python :: 3.12
|
|
15
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
16
16
|
Classifier: Topic :: Database
|
|
17
17
|
Classifier: Topic :: Database :: Front-Ends
|
|
18
|
-
Requires-Python: >=3.
|
|
18
|
+
Requires-Python: >=3.10.0
|
|
19
19
|
Description-Content-Type: text/markdown
|
|
20
20
|
License-File: LICENSE
|
|
21
21
|
Requires-Dist: aws-requests-auth
|
|
22
|
+
Requires-Dist: ibis-framework~=10.1
|
|
23
|
+
Requires-Dist: pyarrow~=18.0
|
|
24
|
+
Requires-Dist: pyarrow-hotfix==0.7
|
|
22
25
|
Requires-Dist: flatbuffers
|
|
23
|
-
Requires-Dist:
|
|
24
|
-
Requires-Dist:
|
|
26
|
+
Requires-Dist: packaging
|
|
27
|
+
Requires-Dist: pandas
|
|
28
|
+
Requires-Dist: numpy
|
|
25
29
|
Requires-Dist: requests
|
|
26
30
|
Requires-Dist: xmltodict
|
|
27
31
|
Requires-Dist: backoff==2.2.1
|
|
32
|
+
Dynamic: author
|
|
33
|
+
Dynamic: author-email
|
|
34
|
+
Dynamic: classifier
|
|
35
|
+
Dynamic: description
|
|
36
|
+
Dynamic: description-content-type
|
|
37
|
+
Dynamic: home-page
|
|
38
|
+
Dynamic: license
|
|
39
|
+
Dynamic: license-file
|
|
40
|
+
Dynamic: requires-dist
|
|
41
|
+
Dynamic: requires-python
|
|
42
|
+
Dynamic: summary
|
|
28
43
|
|
|
29
44
|
|
|
30
45
|
`vastdb` is a Python-based SDK designed for interacting
|
|
@@ -18,7 +18,7 @@ For technical details about VAST Database architecture, see the [whitepaper](htt
|
|
|
18
18
|
|
|
19
19
|
### Requirements
|
|
20
20
|
|
|
21
|
-
- Linux client with Python 3.
|
|
21
|
+
- Linux client with Python 3.10 - 3.13, and network access to the VAST Cluster
|
|
22
22
|
- [Virtual IP pool configured with DNS service](https://support.vastdata.com/s/topic/0TOV40000000FThOAM/configuring-network-access-v50)
|
|
23
23
|
- [S3 access & secret keys on the VAST cluster](https://support.vastdata.com/s/article/UUID-4d2e7e23-b2fb-7900-d98f-96c31a499626)
|
|
24
24
|
- [Tabular identity policy with the proper permissions](https://support.vastdata.com/s/article/UUID-14322b60-d6a2-89ac-3df0-3dfbb6974182)
|
|
@@ -156,6 +156,39 @@ snaps = bucket.list_snapshots()
|
|
|
156
156
|
batches = snaps[0].schema('schema-name').table('table-name').select()
|
|
157
157
|
```
|
|
158
158
|
|
|
159
|
+
## Interactive and Non-Interactive Workflows
|
|
160
|
+
|
|
161
|
+
Interactive `Table` created via the `Schema` object (`tx.bucket('..').schema('..').table('..')`) loads metadata and stats eagrly allowing for interactive development.
|
|
162
|
+
|
|
163
|
+
For more efficient use-cases where the extra round-trips to the server hurt use the Non-Interactive workflow.
|
|
164
|
+
|
|
165
|
+
```python
|
|
166
|
+
# load the table schema & stats into an object we can use across transactions
|
|
167
|
+
table_md = TableMetadata(TableRef("bucket-name", "schema-name", "table-name"))
|
|
168
|
+
with session.transaction() as tx:
|
|
169
|
+
table_md.load(tx)
|
|
170
|
+
|
|
171
|
+
# you may init the TableMetadata with the schema in advanced (to save that round-trip)
|
|
172
|
+
table_md = TableMetadata(TableRef("bucket-name", "schema-name", "table-name"),
|
|
173
|
+
arrow_schema=<some-arrow-schema>)
|
|
174
|
+
|
|
175
|
+
# now we can reuse without the overhead of reloading the schema and stats,
|
|
176
|
+
# such as for inserts:
|
|
177
|
+
with session.transaction() as tx:
|
|
178
|
+
table = tx.table_from_metadata(table_md)
|
|
179
|
+
rows = [{"id": 1, "name": "row1"}]
|
|
180
|
+
py_records = pa.RecordBatch.from_pylist(rows, schema=table_md.arrow_schema)
|
|
181
|
+
table.insert(py_records)
|
|
182
|
+
|
|
183
|
+
# and selects:
|
|
184
|
+
with session.transaction() as tx:
|
|
185
|
+
table = tx.table_from_metadata(table_md)
|
|
186
|
+
reader = table.select()
|
|
187
|
+
results = reader.read_all()
|
|
188
|
+
print(results)
|
|
189
|
+
```
|
|
190
|
+
|
|
191
|
+
|
|
159
192
|
## Post-processing
|
|
160
193
|
|
|
161
194
|
### Export
|
|
@@ -214,6 +247,10 @@ with session.transaction() as tx:
|
|
|
214
247
|
print("Distinct element types on the system:")
|
|
215
248
|
print(distinct_elements)
|
|
216
249
|
```
|
|
250
|
+
|
|
251
|
+
|
|
252
|
+
|
|
253
|
+
|
|
217
254
|
## More Information
|
|
218
255
|
|
|
219
256
|
See these blog posts for more examples:
|
|
@@ -222,3 +259,5 @@ See these blog posts for more examples:
|
|
|
222
259
|
- https://vastdata.com/blog/the-vast-catalog-in-action-part-2
|
|
223
260
|
|
|
224
261
|
See also the [full Vast DB Python SDK documentation](https://vastdb-sdk.readthedocs.io/en/latest/)
|
|
262
|
+
|
|
263
|
+
|
|
@@ -27,9 +27,9 @@ if os.environ.get('VASTDB_APPEND_VERSION_SUFFIX'):
|
|
|
27
27
|
|
|
28
28
|
setup(
|
|
29
29
|
name='vastdb',
|
|
30
|
-
python_requires='>=3.
|
|
30
|
+
python_requires='>=3.10.0',
|
|
31
31
|
description='VAST Data SDK',
|
|
32
|
-
version='
|
|
32
|
+
version='2.0.1' + suffix,
|
|
33
33
|
url='https://github.com/vast-data/vastdb_sdk',
|
|
34
34
|
author='VAST DATA',
|
|
35
35
|
author_email='hello@vastdata.com',
|
|
@@ -42,10 +42,10 @@ setup(
|
|
|
42
42
|
'Development Status :: 5 - Production/Stable',
|
|
43
43
|
'License :: OSI Approved :: Apache Software License',
|
|
44
44
|
'Programming Language :: Python :: 3',
|
|
45
|
-
'Programming Language :: Python :: 3.9',
|
|
46
45
|
'Programming Language :: Python :: 3.10',
|
|
47
46
|
'Programming Language :: Python :: 3.11',
|
|
48
47
|
'Programming Language :: Python :: 3.12',
|
|
48
|
+
'Programming Language :: Python :: 3.13',
|
|
49
49
|
'Topic :: Database',
|
|
50
50
|
'Topic :: Database :: Front-Ends',
|
|
51
51
|
],
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import ibis
|
|
2
|
+
import pyarrow as pa
|
|
3
|
+
from ibis.expr.types.structs import IbisError
|
|
4
|
+
|
|
5
|
+
from vastdb import errors
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
def validate_ibis_support_schema(arrow_schema: pa.Schema):
|
|
9
|
+
"""Validate that the provided Arrow schema is compatible with Ibis.
|
|
10
|
+
|
|
11
|
+
Raises NotSupportedSchema if the schema contains unsupported fields.
|
|
12
|
+
"""
|
|
13
|
+
unsupported_fields = []
|
|
14
|
+
first_exception = None
|
|
15
|
+
for f in arrow_schema:
|
|
16
|
+
try:
|
|
17
|
+
ibis.Schema.from_pyarrow(pa.schema([f]))
|
|
18
|
+
except (IbisError, ValueError, KeyError) as e:
|
|
19
|
+
if first_exception is None:
|
|
20
|
+
first_exception = e
|
|
21
|
+
unsupported_fields.append(f)
|
|
22
|
+
|
|
23
|
+
if unsupported_fields:
|
|
24
|
+
raise errors.NotSupportedSchema(
|
|
25
|
+
message=f"Ibis does not support the schema {unsupported_fields=}",
|
|
26
|
+
schema=arrow_schema,
|
|
27
|
+
cause=first_exception
|
|
28
|
+
)
|