A dataset is contained within a specific project. Datasets enable you to organize and control access to your tables and views. A table or view must belong to a dataset, so you need to create at least one dataset before loading data into BigQuery.
You share BigQuery data with others by defining roles and setting permissions for organizations, projects, and datasets, but not on the tables or views within them. For more information on IAM roles and permissions in BigQuery, see Access Control.
For more information about datasets, see Using datasets.
A BigQuery table contains individual records organized in rows, and a data type assigned to each column (also called a field). Individual fields within a record data type can contain nested and repeated fields.
Every table is defined by a schema that describes field names, types, and other information. You can specify the schema of a table during the initial table creation request, or you can create a table without a schema and declare the schema in the query or load job that first populates the table. If you need to change the schema later, you can update the schema.
For more information on tables, see Using tables.
A view is a virtual table defined by a SQL query. You can query views in BigQuery using the web UI, the command-line tool, or the API. You can also use a view as a data source for a visualization tool such as Google Data Studio.
For more information on views, see Using views.
To help organize your BigQuery resources, you can add labels to your datasets, tables, and views. After labeling your resources, you can search for them based on label values. For example, you can use labels to group datasets by purpose, environment, department, and so on.
For more information on labels, see Using labels.