**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/hooks/bigquery.py
self,
        project_id: str,
        dataset_id: str,
        table_id: str,
        rows: List,
        ignore_unknown_values: bool = False,
        skip_invalid_rows: bool = False,
        fail_on_error: bool = False,
    ) -> None:
        """
        Method to stream data into BigQuery one record at a time without needing
        to run a load job
        .. seealso::
            For more information, see:
            https://cloud.google.com/bigquery/docs/reference/rest/v2/tabledata/insertAll
        :param project_id: The name of the project where we have the table
        :type project_id: str
        :param dataset_id: The name of the dataset where we have the table
        :type dataset_id: str
        :param table_id: The name of the table
        :type table_id: str
        :param rows: the rows to insert
        :type rows: list
        **Example or rows**:
            rows=[{"json": {"a_key": "a_value_0"}}, {"json": {"a_key": "a_value_1"}}]
        :param ignore_unknown_values: [Optional] Accept rows that contain values
            that do not match the schema. The unknown values are ignored.