This section highlights several key concepts in Rockset.
A [collection](🔗) is a set of Rockset documents. Similar to tables in traditional SQL databases, collections can be queried using SQL, either directly or using Query Lambdas (see more below).
### Virtual Instances
A [Virtual Instance](🔗) is a set of compute resources used to process streaming ingest and queries.
Every Rockset organization starts with one Virtual Instance per active region. Unless otherwise explicitly specified, all streaming ingest and queries are routed to this Virtual Instance. To provide isolation between ingest and queries or isolation across different query workloads, multiple Virtual Instances can be used to leverage Rockset's [compute-compute separated architecture](🔗).
### Data Sources
Rockset supports ingesting data from many types of [data sources](🔗):
data streams (Kafka, Kinesis)
OLTP databases (DynamoDB, MongoDB, MySQL, PostgreSQL)
data lakes (S3, GCS)
As new data shows up in your data sources, it will get indexed within seconds into Rockset.
[Integrations](🔗) associate authentication credentials with your data sources and provide finer-grained control over data ingestion. A given integration can be used with multiple collections.
Fully-managed integrations for a variety of data sources are currently supported, meaning that changes to your data sources will be automatically detected and replicated into Rockset in real-time.
### Ingest Transformations
[Ingest transformations](🔗) allow you to transform the raw input data coming from your data sources before it is loaded into your Rockset collections. Rockset's ingestion platform applies these transformations both during the initial load of a new collection's data and on an ongoing basis to new documents coming from your data source, giving you a real-time materialized view of your data.
### Query Lambdas
[Query Lambdas](🔗) are named, parameterized SQL queries stored in Rockset that can be executed from a dedicated REST endpoint. Using query lambdas, you can save your SQL queries as separate resources in Rockset and manage them through development and production.
[Aliases](🔗) are used to associate multiple names with Rockset collections. You can use the alias name in your queries in place of the actual collection name. Additionally, you can configure an alias to point to a different collection at any time without any downtime for your queries.
[Views](🔗) are virtual collections defined by SQL queries. A view’s SQL query can reference other views, collections, aliases, or it may not reference anything. For example, `
SELECT 1` does not reference anything, but is still a valid query for a view. Views modularize the process of writing SQL queries.
Note that a view does not store any data: whenever a view is queried, the defining query is executed.
[Workspaces](🔗) are containers that hold Rockset resources (ie. collections, query lambdas, views, etc.) as well as other workspaces.
Conceptually, workspaces are analogous to folders in a filesystem, while the Rockset resources they contain are analogous to files. Every Rockset resource must be part of exactly one workspace.