Skip to content

Commit d3248cb

Browse files
committed
Merge branch 'master' of https://github.com/MicrosoftDocs/azure-docs-pr into 90939
2 parents 1fe7f77 + 915fce0 commit d3248cb

File tree

59 files changed

+312
-100
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

59 files changed

+312
-100
lines changed

articles/active-directory/conditional-access/howto-conditional-access-policy-admin-mfa.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -37,16 +37,16 @@ Organizations can choose to include or exclude roles as they see fit.
3737

3838
Conditional Access policies are powerful tools, we recommend excluding the following accounts from your policy:
3939

40-
* **Emergency access** or **break-glass** accountsto prevent tenant-wide account lockout. In the unlikely scenario all administrators are locked out of your tenant, your emergency-access administrative account can be used to log into the tenant take steps to recover access.
40+
* **Emergency access** or **break-glass** accounts to prevent tenant-wide account lockout. In the unlikely scenario all administrators are locked out of your tenant, your emergency-access administrative account can be used to log into the tenant take steps to recover access.
4141
* More information can be found in the article, [Manage emergency access accounts in Azure AD](../users-groups-roles/directory-emergency-access.md).
4242
* **Service accounts** and **service principles**, such as the Azure AD Connect Sync Account. Service accounts are non-interactive accounts that are not tied to any particular user. They are normally used by back-end services and allow programmatic access to applications. Service accounts should be excluded since MFA can’t be completed programmatically.
43-
* If your organization has these accounts in use in scripts or code, consider replacing them with[managed identities](../managed-identities-azure-resources/overview.md). As a temporary workaround, you can exclude these specific accounts from the baseline policy.
43+
* If your organization has these accounts in use in scripts or code, consider replacing them with [managed identities](../managed-identities-azure-resources/overview.md). As a temporary workaround, you can exclude these specific accounts from the baseline policy.
4444

4545
## Create a Conditional Access policy
4646

4747
The following steps will help create a Conditional Access policy to require those assigned administrative roles to perform multi-factor authentication.
4848

49-
1. Sign in to the**Azure portal**as a global administrator, security administrator, or Conditional Access administrator.
49+
1. Sign in to the **Azure portal** as a global administrator, security administrator, or Conditional Access administrator.
5050
1. Browse to **Azure Active Directory** > **Conditional Access**.
5151
1. Select **New policy**.
5252
1. Give your policy a name. We recommend that organizations create a meaningful standard for the names of their policies.

articles/active-directory/conditional-access/howto-conditional-access-policy-azure-management.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -29,16 +29,16 @@ These tools can provide highly privileged access to resources, that can alter su
2929

3030
Conditional Access policies are powerful tools, we recommend excluding the following accounts from your policy:
3131

32-
* **Emergency access** or **break-glass** accountsto prevent tenant-wide account lockout. In the unlikely scenario all administrators are locked out of your tenant, your emergency-access administrative account can be used to log into the tenant take steps to recover access.
32+
* **Emergency access** or **break-glass** accounts to prevent tenant-wide account lockout. In the unlikely scenario all administrators are locked out of your tenant, your emergency-access administrative account can be used to log into the tenant take steps to recover access.
3333
* More information can be found in the article, [Manage emergency access accounts in Azure AD](../users-groups-roles/directory-emergency-access.md).
3434
* **Service accounts** and **service principles**, such as the Azure AD Connect Sync Account. Service accounts are non-interactive accounts that are not tied to any particular user. They are normally used by back-end services and allow programmatic access to applications. Service accounts should be excluded since MFA can’t be completed programmatically.
35-
* If your organization has these accounts in use in scripts or code, consider replacing them with[managed identities](../managed-identities-azure-resources/overview.md). As a temporary workaround, you can exclude these specific accounts from the baseline policy.
35+
* If your organization has these accounts in use in scripts or code, consider replacing them with [managed identities](../managed-identities-azure-resources/overview.md). As a temporary workaround, you can exclude these specific accounts from the baseline policy.
3636

3737
## Create a Conditional Access policy
3838

3939
The following steps will help create a Conditional Access policy to require those assigned administrative roles to perform multi-factor authentication.
4040

41-
1. Sign in to the**Azure portal**as a global administrator, security administrator, or Conditional Access administrator.
41+
1. Sign in to the **Azure portal** as a global administrator, security administrator, or Conditional Access administrator.
4242
1. Browse to **Azure Active Directory** > **Conditional Access**.
4343
1. Select **New policy**.
4444
1. Give your policy a name. We recommend that organizations create a meaningful standard for the names of their policies.

articles/active-directory/conditional-access/howto-conditional-access-policy-block-legacy.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ Due to the increased risk associated with legacy authentication protocols, Micro
2323

2424
The following steps will help create a Conditional Access policy to block legacy authentication requests.
2525

26-
1. Sign in to the**Azure portal**as a global administrator, security administrator, or Conditional Access administrator.
26+
1. Sign in to the **Azure portal** as a global administrator, security administrator, or Conditional Access administrator.
2727
1. Browse to **Azure Active Directory** > **Conditional Access**.
2828
1. Select **New policy**.
2929
1. Give your policy a name. We recommend that organizations create a meaningful standard for the names of their policies.

articles/active-directory/conditional-access/howto-conditional-access-policy-compliant-device.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ This policy compliance information is forwarded to Azure AD where Conditional Ac
3030

3131
The following steps will help create a Conditional Access policy to require devices accessing resources be marked as compliant with your organization's Intune compliance policies.
3232

33-
1. Sign in to the**Azure portal**as a global administrator, security administrator, or Conditional Access administrator.
33+
1. Sign in to the **Azure portal** as a global administrator, security administrator, or Conditional Access administrator.
3434
1. Browse to **Azure Active Directory** > **Conditional Access**.
3535
1. Select **New policy**.
3636
1. Give your policy a name. We recommend that organizations create a meaningful standard for the names of their policies.

articles/active-directory/conditional-access/howto-conditional-access-policy-location.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ With the location condition in Conditional Access, you can control access to you
2121

2222
## Define locations
2323

24-
1. Sign in to the**Azure portal**as a global administrator, security administrator, or Conditional Access administrator.
24+
1. Sign in to the **Azure portal** as a global administrator, security administrator, or Conditional Access administrator.
2525
1. Browse to **Azure Active Directory** > **Conditional Access**.
2626
1. Choose **New location**.
2727
1. Give your location a name.
@@ -35,7 +35,7 @@ More information about the location condition in Conditional Access can be found
3535

3636
## Create a Conditional Access policy
3737

38-
1. Sign in to the**Azure portal**as a global administrator, security administrator, or Conditional Access administrator.
38+
1. Sign in to the **Azure portal** as a global administrator, security administrator, or Conditional Access administrator.
3939
1. Browse to **Azure Active Directory** > **Conditional Access**.
4040
1. Select **New policy**.
4141
1. Give your policy a name. We recommend that organizations create a meaningful standard for the names of their policies.

articles/cosmos-db/TOC.yml

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,8 +57,10 @@
5757
href: tutorial-global-distribution-sql-api.md
5858
- name: Samples
5959
items:
60-
- name: .NET samples
60+
- name: .NET V2 SDK samples
6161
href: sql-api-dotnet-samples.md
62+
- name: .NET V3 SDK samples
63+
href: sql-api-dotnet-v3sdk-samples.md
6264
- name: Java samples
6365
href: sql-api-java-samples.md
6466
- name: Async Java samples
@@ -1022,6 +1024,8 @@
10221024
href: odbc-driver.md
10231025
- name: Migrate data to Cosmos DB
10241026
items:
1027+
- name: Options to migrate data into Cosmos DB
1028+
href: cosmosdb-migrationchoices.md
10251029
- name: Migrate to SQL API using Striim
10261030
href: cosmosdb-sql-api-migrate-data-striim.md
10271031
- name: Migrate to Cassandra API using Striim

articles/cosmos-db/cosmos-db-advanced-threat-protection.md

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,7 @@ author: monhaber
55
ms.service: cosmos-db
66
ms.topic: conceptual
77
ms.date: 08/21/2019
8-
ms.author: rimman
98
ms.author: sngun
10-
ms.author: v-mohabe
119
ms.custom: seodec18
1210
---
1311

Lines changed: 74 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
---
2+
title: Cosmos DB Migration options
3+
description: This doc describes the various options to migrate your on-premises or cloud data to Azure Cosmos DB
4+
author: bharathsreenivas
5+
ms.service: cosmos-db
6+
ms.topic: conceptual
7+
ms.date: 10/03/2019
8+
ms.author: bharathb
9+
10+
---
11+
# Options to migrate your on-premises or cloud data to Azure Cosmos DB
12+
13+
You can load data from various data sources to Azure Cosmos DB. Additionally, since Azure Cosmos DB supports multiple APIs, the targets can be any of the existing APIs. In order to support migration paths from the various sources to the different Azure Cosmos DB APIs, there are multiple solutions that provide specialized handling for each migration path. This document lists the available solutions and describes their advantages and limitations.
14+
15+
## Factors affecting the choice of migration tool
16+
17+
The following factors determine the choice of the migration tool:
18+
* **Online vs offline migration**: Many migration tools provide a path to do a one-time migration only. This means that the applications accessing the database might experience a period of downtime. Some migration solutions provide a way to do a live migration where there is a replication pipeline set up between the source and the target.
19+
20+
* **Data source**: The existing data can be in various data sources like Oracle DB2, Datastax Cassanda, Azure SQL Server, PostgreSQL, etc. The data can also be in an existing Azure Cosmos DB account and the intent of migration can be to change the data model or repartition the data in a container with a different partition key.
21+
22+
* **Azure Cosmos DB API**: For the SQL API in Azure Cosmos DB, there are a variety of tools developed by the Azure Cosmos DB team which aid in the different migration scenarios. All of the other APIs have their own specialized set of tools developed and maintained by the community. Since Azure Cosmos DB supports these APIs at a wire protocol level, these tools should work as-is while migrating data into Azure Cosmos DB too. However, they might require custom handling for throttles as this concept is specific to Azure Cosmos DB.
23+
24+
* **Size of data**: Most migration tools work very well for smaller datasets. When the data set exceeds a few hundred gigabytes, the choices of migration tools are limited.
25+
26+
* **Expected migration duration**: Migrations can be configured to take place at a slow, incremental pace that consumes less throughput or can consume the entire throughput provisioned on the target Azure Cosmos DB container and complete the migration in less time.
27+
28+
## Azure Cosmos DB SQL API
29+
|**Migration type**|**Solution**|**Considerations**|
30+
|---------|---------|---------|
31+
|Offline|[Data Migration Tool](https://docs.microsoft.com/azure/cosmos-db/import-data)|&bull; Easy to set up and supports multiple sources <br/>&bull; Not suitable for large datasets|
32+
|Offline|[Azure Data Factory](https://docs.microsoft.com/azure/data-factory/connector-azure-cosmos-db)|&bull; Easy to set up and supports multiple sources <br/>&bull; Makes use of the Azure Cosmos DB bulk executor library <br/>&bull; Suitable for large datasets <br/>&bull; Lack of checkpointing - It means that if an issue occurs during the course of migration, you need to restart the whole migration process<br/>&bull; Lack of a dead letter queue - It means that a few erroneous files can stop the entire migration process.|
33+
|Offline|[Azure Cosmos DB Spark connector](https://docs.microsoft.com/azure/cosmos-db/spark-connector)|&bull; Makes use of the Azure Cosmos DB bulk executor library <br/>&bull; Suitable for large datasets <br/>&bull; Needs a custom Spark setup <br/>&bull; Spark is sensitive to schema inconsistencies and this can be a problem during migration |
34+
|Offline|[Custom tool with Cosmos DB bulk executor library](https://docs.microsoft.com/azure/cosmos-db/migrate-cosmosdb-data)|&bull; Provides checkpointing, dead-lettering capabilities which increases migration resiliency <br/>&bull; Suitable for very large datasets (10 TB+) <br/>&bull; Requires custom setup of this tool running as an App Service |
35+
|Online|[Cosmos DB Functions + ChangeFeed API](https://docs.microsoft.com/azure/cosmos-db/change-feed-functions)|&bull; Easy to set up <br/>&bull; Works only if the source is an Azure Cosmos DB container <br/>&bull; Not suitable for large datasets <br/>&bull; Does not capture deletes from the source container |
36+
|Online|[Custom Migration Service using ChangeFeed](https://aka.ms/CosmosDBMigrationSample)|&bull; Provides progress tracking <br/>&bull; Works only if the source is an Azure Cosmos DB container <br/>&bull; Works for larger datasets as well <br/>&bull; Requires the user to set up an App Service to host the Change feed processor <br/>&bull; Does not capture deletes from the source container|
37+
|Online|[Striim](https://docs.microsoft.com/azure/cosmos-db/cosmosdb-sql-api-migrate-data-striim)|&bull; Works with a large variety of sources like Oracle, DB2, SQL Server <br/>&bull; Easy to build ETL pipelines and provides a dashboard for monitoring <br/>&bull; Supports larger datasets <br/>&bull; Since this is a third-party tool, it needs to be purchased from the marketplace and installed in the user's environment|
38+
39+
## Azure Cosmos DB Mongo API
40+
|**Migration type**|**Solution**|**Considerations**|
41+
|---------|---------|---------|
42+
|Offline|[Data Migration Tool](https://docs.microsoft.com/azure/cosmos-db/import-data)|&bull; Easy to set up and supports multiple sources <br/>&bull; Not suitable for large datasets|
43+
|Offline|[Azure Data Factory](https://docs.microsoft.com/azure/data-factory/connector-azure-cosmos-db)|&bull; Easy to set up and supports multiple sources <br/>&bull; Makes use of the Azure Cosmos DB bulk executor library <br/>&bull; Suitable for large datasets <br/>&bull; Lack of checkpointing means that any issue during the course of migration would require a restart of the whole migration process<br/>&bull; Lack of a dead letter queue would mean that a few erroneous files could stop the entire migration process <br/>&bull; Needs custom code to increase read throughput for certain data sources|
44+
|Offline|[Existing Mongo Tools (mongodump, mongorestore, Studio3T)](https://azure.microsoft.com/resources/videos/using-mongodb-tools-with-azure-cosmos-db/)|&bull; Easy to set up and integration <br/>&bull; Needs custom handling for throttles|
45+
|Online|[Azure Database Migration Service](https://docs.microsoft.com/azure/dms/tutorial-mongodb-cosmos-db-online)|&bull; Makes use of the Azure Cosmos DB bulk executor library <br/>&bull; Suitable for large datasets and takes care of replicating live changes <br/>&bull; Works only with other MongoDB sources|
46+
47+
## Azure Cosmos DB Cassandra API
48+
|**Migration type**|**Solution**|**Considerations**|
49+
|---------|---------|---------|
50+
|Offline|[cqlsh COPY command](https://docs.microsoft.com/azure/cosmos-db/cassandra-import-data#migrate-data-using-cqlsh-copy-command)|&bull; Easy to set up <br/>&bull; Not suitable for large datasets <br/>&bull; Works only when the source is a Cassandra table|
51+
|Offline|[Copy table with Spark](https://docs.microsoft.com/azure/cosmos-db/cassandra-import-data#migrate-data-using-spark) |&bull; Can make use of Spark capabilities to parallelize transformation and ingestion <br/>&bull; Needs configuration with a custom retry policy to handle throttles|
52+
|Online|[Striim (from Oracle DB/Apache Cassandra)](https://docs.microsoft.com/azure/cosmos-db/cosmosdb-cassandra-api-migrate-data-striim)|&bull; Works with a large variety of sources like Oracle, DB2, SQL Server <br/>&bull; Easy to build ETL pipelines and provides a dashboard for monitoring <br/>&bull; Supports larger datasets <br/>&bull; Since this is a third-party tool, it needs to be purchased from the marketplace and installed in the user's environment|
53+
|Online|[Blitzz (from Oracle DB/Apache Cassandra)](https://docs.microsoft.com/azure/cosmos-db/oracle-migrate-cosmos-db-blitzz)|<br/>&bull; Supports larger datasets <br/>&bull; Since this is a third-party tool, it needs to be purchased from the marketplace and installed in the user's environment|
54+
55+
## Other APIs
56+
For APIs other than the SQL API, Mongo API and the Cassandra API, there are various tools supported by each of the API's existing ecosystems.
57+
58+
**Table API**
59+
* [Data Migration Tool](https://docs.microsoft.com/azure/cosmos-db/table-import#data-migration-tool)
60+
* [AzCopy](https://docs.microsoft.com/azure/cosmos-db/table-import#migrate-data-by-using-azcopy)
61+
62+
**Gremlin API**
63+
* [Graph bulk executor library](https://docs.microsoft.com/azure/cosmos-db/bulk-executor-graph-dotnet)
64+
* [Gremlin Spark](https://github.com/Azure/azure-cosmosdb-spark/blob/2.4/samples/graphframes/main.scala)
65+
66+
## Next steps
67+
68+
* Learn more by trying out the sample applications consuming the bulk executor library in [.NET](bulk-executor-dot-net.md) and [Java](bulk-executor-java.md).
69+
* The bulk executor library is integrated into the Cosmos DB Spark connector, to learn more, see [Azure Cosmos DB Spark connector](spark-connector.md) article.
70+
* Contact the Azure Cosmos DB product team by opening a support ticket under the "General Advisory" problem type and "Large (TB+) migrations" problem subtype for additional help with large scale migrations.
71+
* Use the [Cosmos DB Bootstrap Program](https://azurecosmosdb.github.io/CosmosBootstrap/) to accelerate building or migrating your applications on Azure Cosmos DB.
72+
73+
> [!div class="nextstepaction"]
74+
> [Cosmos DB Bootstrap Program](https://azurecosmosdb.github.io/CosmosBootstrap/)

articles/cosmos-db/sql-api-async-java-samples.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,8 @@ ms.author: sngun
1212
# Azure Cosmos DB: Async Java examples for the SQL API
1313

1414
> [!div class="op_single_selector"]
15-
> * [.NET Examples](sql-api-dotnet-samples.md)
15+
> * [.NET V2 SDK Examples](sql-api-dotnet-samples.md)
16+
> * [.NET V3 SDK Examples](sql-api-dotnet-v3sdk-samples.md)
1617
> * [Java Examples](sql-api-java-samples.md)
1718
> * [Async Java Examples](sql-api-async-java-samples.md)
1819
> * [Node.js Examples](sql-api-nodejs-samples.md)

0 commit comments

Comments
 (0)