### Is there an existing issue for this?

- [X] I have searched the existing issues

### Enhancement description

Based on [customer request](https://localstack-community.slack.com/archives/C0598EHPT1N).
Implement operation `scan` and `query` for global tables in DynamoDB service.

Test sample:

```shell
# Create a table
awslocal dynamodb create-table --table-name global01 --key-schema AttributeName=id,KeyType=HASH --attribute-definitions AttributeName=id,AttributeType=S --billing-mode PAY_PER_REQUEST --region ap-south-1

#Create replicas
awslocal dynamodb update-table --table-name global01  --replica-updates '[{"Create": {"RegionName": "eu-central-1"}}, {"Create": {"RegionName": "us-west-1"}}]'  --region ap-south-1


# Table can be operated on in all replicated regions
awslocal dynamodb list-tables --region eu-central-1

awslocal dynamodb put-item --table-name global01 --item '{"id":{"S":"foo"}}' --region eu-central-1
awslocal dynamodb describe-table --table-name global01 --query 'Table.ItemCount' --region ap-south-1

# Get all replicas
awslocal dynamodb describe-table --table-name global01 --query 'Table.Replicas' --region us-west-1


# Query in all regions
awslocal dynamodb query --table-name global01 --key-condition-expression 'id = :id' --expression-attribute-values '{":id":{"S":"foo"}}' --region ap-south-1
awslocal dynamodb query --table-name global01 --key-condition-expression 'id = :id' --expression-attribute-values '{":id":{"S":"foo"}}' --region eu-central-1
awslocal dynamodb query --table-name global01 --key-condition-expression 'id = :id' --expression-attribute-values '{":id":{"S":"foo"}}' --region us-west-1
```


### 🧑‍💻 Implementation

_No response_

### Anything else?

_No response_
"""
        Get the access key to be used while communicating with DynamoDB Local.
        DDBLocal supports namespacing as an undocumented feature. It works based on the value of the `Credentials`
        field of the `Authorization` header. We use a concatenated value of account ID and region to achieve
        namespacing.
        """
        return "{account_id}{region_name}".format(
            account_id=account_id, region_name=region_name
        ).replace("-", "")
    @staticmethod
    def ddb_region_name(region_name: str) -> str:
        """Map `local` or `localhost` region to the default region. These values are used by NoSQL Workbench."""
        
        if region_name in ("local", "localhost"):
            region_name = aws_stack.get_local_region()
        return region_name
    @staticmethod
    def table_exists(account_id: str, region_name: str, table_name: str) -> bool:
        region_name = DynamoDBProvider.ddb_region_name(region_name)
        client = connect_to(
            aws_access_key_id=account_id,
            aws_secret_access_key=TEST_AWS_SECRET_ACCESS_KEY,
            region_name=region_name,
        ).dynamodb
        return dynamodb_table_exists(table_name, client)
    @staticmethod
    def ensure_table_exists(account_id: str, region_name: str, table_name: str):