commit | 8d9c57abe191b76dd976d7ab2f611ae1beb7bf6e | [log] [tgz] |
---|---|---|
author | Caleb Herbel <caherbel@gmail.com> | Fri Aug 14 20:41:13 2020 -0600 |
committer | Dmitry Lychagin <dmitry.lychagin@couchbase.com> | Mon Aug 17 18:43:53 2020 +0000 |
tree | 06a3422f8b175fd0c4487dad9fcd24427605dd94 | |
parent | e33684506b73368f1f3cd93e82ac03bf9861d21d [diff] |
[NO ISSUE] Added Optimized Interval Joins - user model changes: no - storage format changes: no - interface changes: no details: -Support for optimized interval joins over the 7 of the 13 Allen's relations: Before, After, Covers, Covered_by, Overlaps, Overlapping, and Overlapped_by. Starts, Started_by, ends, ended_by, meets, and met_by are not yet implemented and will default to Hybrid Hash Join. -Adds a RangeHint -Updates Optimizer tests for interval joins -Updates interval join runtime tests to include range hints, tests for time and datetime, and a new data point that tests for additional cases -Support for PartialBroadcastRangeFollowingExchange and PartialBroadcastRangeIntersectExchange physical operators -Adds IntervalMergeJoinPOperator and a IntervalMergeJoin Operator Descriptor with a IntervalMergeJoin algorithm and supporting files -Adds a RunFileStream, RunFilePointer, and a TupleAccessor Change-Id: Ib90a953881461f8574f1170ad2264b95fa81fd4b Reviewed-on: https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/7163 Integration-Tests: Jenkins <jenkins@fulliautomatix.ics.uci.edu> Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu> Reviewed-by: Dmitry Lychagin <dmitry.lychagin@couchbase.com>
AsterixDB is a BDMS (Big Data Management System) with a rich feature set that sets it apart from other Big Data platforms. Its feature set makes it well-suited to modern needs such as web data warehousing and social data storage and analysis. AsterixDB has:
Data model
A semistructured NoSQL style data model (ADM) resulting from extending JSON with object database ideas
Query languages
Two expressive and declarative query languages (SQL++ and AQL) that support a broad range of queries and analysis over semistructured data
Scalability
A parallel runtime query execution engine, Apache Hyracks, that has been scale-tested on up to 1000+ cores and 500+ disks
Native storage
Partitioned LSM-based data storage and indexing to support efficient ingestion and management of semistructured data
External storage
Support for query access to externally stored data (e.g., data in HDFS) as well as to data stored natively by AsterixDB
Data types
A rich set of primitive data types, including spatial and temporal data in addition to integer, floating point, and textual data
Indexing
Secondary indexing options that include B+ trees, R trees, and inverted keyword (exact and fuzzy) index types
Transactions
Basic transactional (concurrency and recovery) capabilities akin to those of a NoSQL store
Learn more about AsterixDB at its website.
To build AsterixDB from source, you should have a platform with the following:
Instructions for building the master:
Checkout AsterixDB master:
$git clone https://github.com/apache/asterixdb.git
Build AsterixDB master:
$cd asterixdb $mvn clean package -DskipTests
Here are steps to get AsterixDB running on your local machine:
Start a single-machine AsterixDB instance:
$cd asterixdb/asterix-server/target/asterix-server-*-binary-assembly/apache-asterixdb-*-SNAPSHOT $./opt/local/bin/start-sample-cluster.sh
Good to go and run queries in your browser at:
http://localhost:19006
Read more documentation to learn the data model, query language, and how to create a cluster instance.