**Apache Airflow version**: 1.10.*
**BackPort Packages version**: 2020.10.5rc1

**What happened**:

`BigQueryInsertJobOperator` tries to start a BigQuery job by specifying a job_id which is a combination of `dag_id`, `task_id`, `execution_date` and an additional `uniqueness_suffix`.

https://github.com/apache/airflow/blob/master/airflow/providers/google/cloud/operators/bigquery.py#L2072

However, because BigQuery only accepts alphanumeric (in additon to dashes and underscore) characters then, if a DagID contains a version number whcih includes a `.` character then this will cause the task to fail.

https://cloud.google.com/bigquery/docs/running-jobs#generate-jobid

**How to reproduce it**:
Create a DAG with the name `my-dag-v1.0`.
airflow/providers/google/cloud/operators/bigquery.py
:param flatten_results: If true and query uses legacy SQL dialect, flattens
        all nested and repeated fields in the query results. ``allow_large_results``
        must be ``true`` if this is set to ``false``. For standard SQL queries, this
        flag is ignored and results are never flattened.
    :type flatten_results: bool
    :param gcp_conn_id: (Optional) The connection ID used to connect to Google Cloud.
    :type gcp_conn_id: str
    :param bigquery_conn_id: (Deprecated) The connection ID used to connect to Google Cloud.
        This parameter has been deprecated. You should pass the gcp_conn_id parameter instead.
    :type bigquery_conn_id: str
    :param delegate_to: The account to impersonate using domain-wide delegation of authority,
        if any. For this to work, the service account making the request must have
        domain-wide delegation enabled.
    :type delegate_to: str
    :param udf_config: The User Defined Function configuration for the query.
        See https://cloud.google.com/bigquery/user-defined-functions for details.
    :type udf_config: list
    :param use_legacy_sql: Whether to use legacy SQL (true) or standard SQL (false).
    :type use_legacy_sql: bool
    :param maximum_billing_tier: Positive integer that serves as a multiplier
        of the basic price.
        Defaults to None, in which case it uses the value set in the project.
    :type maximum_billing_tier: int
    :param maximum_bytes_billed: Limits the bytes billed for this job.
        Queries that will have bytes billed beyond this limit will fail
        (without incurring a charge). If unspecified, this will be
        set to your project default.
    :type maximum_bytes_billed: float
    :param api_resource_configs: a dictionary that contain params
        'configuration' applied for Google BigQuery Jobs API: