Docs 菜单
Docs 主页
/
MongoDB Atlas
/

创建、查看、删除和对集合进行分片

在此页面上

  • 所需角色
  • 创建集合
  • 查看集合
  • 删除集合
  • 将集合分片

您可以使用 Atlas UI 来管理集群中的集合。

下表描述了在 Atlas 用户界面中对数据库执行各种动作所需的角色:

操作
所需角色

创建集合

以下角色之一:

查看集合

至少是 Project Data Access Read Only 角色。

删除集合

碎片集合

以下角色之一:

提示

要在新数据库中创建第一个集合,请参阅创建数据库

重要

您无法在 configsystem 数据库上创建新集合。在不久的将来,Atlas 将不再支持向这些数据库上的现有集合写入数据。

要通过 Atlas 用户界面在现有数据库中创建集合:

1
  1. 如果尚未显示,请从导航栏上的 Organizations 菜单中选择包含所需项目的组织。

  2. 如果尚未显示,请从导航栏的Projects菜单中选择所需的项目。

  3. 如果尚未出现,请单击侧边栏中的 Clusters(集群)。

    显示 集群页面。

2

单击集群的对应 Browse Collections 按钮。

显示数据浏览器

3

选择或将鼠标悬停在要删除的数据库上,然后单击加号 + 图标。

4

重要

请勿在集合名称中包含敏感信息

有关 MongoDB 集合名称的更多信息,请参阅命名限制

5

选择集合是否为固定大小集合。如果选择创建有固定大小集合,请指定最大大小(以字节为单位)。

6

选择该数据集是否为时间序列集合。如果选择创建时间序列集合,请指定时间字段和粒度。您可以选择指定元字段以及使集合中旧数据过期的时间。

7

成功创建后,该集合将显示在 Atlas UI 中的数据库下方。

要查看部署中的数据库和集合,请执行以下操作:

1
  1. 如果尚未显示,请从导航栏上的 Organizations 菜单中选择包含所需项目的组织。

  2. 如果尚未显示,请从导航栏的Projects菜单中选择所需的项目。

  3. 如果尚未出现,请单击侧边栏中的 Clusters(集群)。

    会显示集群页面。

2

单击集群的对应 Browse Collections 按钮。

显示数据浏览器

3

单击数据库名称。

注意

Atlas 在此标签页上显示的文档计数是基于缓存的元数据并使用 collStats 得出的。此计数可能与集合中的实际文档计数不同。例如,意外关机可能会引发计数失败。请使用 db.collection.countDocuments()方法获得最准确的文档计数。

启动 MongoDB Charts 以可视化数据库和集合中的数据。

1
  1. 如果尚未显示,请从导航栏上的 Organizations 菜单中选择包含所需项目的组织。

  2. 如果尚未显示,请从导航栏的Projects菜单中选择所需的项目。

  3. 如果尚未出现,请单击侧边栏中的 Clusters(集群)。

    会显示集群页面。

2

单击集群的对应 Browse Collections 按钮。

显示数据浏览器

3

要从 Atlas 用户界面可视化 MongoDB Charts 中的数据,请在查看特定数据库或集合时单击 Visualize Your Data(可视化您的数据)。Charts 将加载数据源,而您可以开始在 Charts 视图中构建图表。有关详细步骤,请参阅构建图表

要通过 Atlas UI 删除集合(包括其文档和索引):

1

选择要删除的集合或将鼠标悬停在其上,然后单击垃圾箱图标。

2

键入集合名称进行确认,然后单击 Drop(删除)。

如果有大型数据集并执行高吞吐量操作,则可以对集合进行分片以在分片之间分配数据。

注意

开始之前,您必须具备以下条件:

要通过 Atlas 用户界面对集合进行分片,请执行以下操作:

1

请参阅通过 mongosh 连接。

2

若要启用分片操作,请运行以下命令:

sh.enableSharding("<database-name>")

例子

要为 sample_analytics 数据集启用分片:

sh.enableSharding("sample_analytics")

请参阅 MongoDB 手册中的为数据库启用分片,了解详情。

3

若要在分片键上创建索引,运行以下命令:

db.<collection-name>.createIndex({<shard_key_definition>})

例子

sample_analytics.customers 集合的分片键创建索引:

db.sample_analytics.runCommand( { createIndexes: "customers", indexes: [ { key: { "username": 1 }, "name": "usernameIndex" }], "commitQuorum": "majority" } )

要了解详情,请参阅:

4

要对集合进行分片,请运行以下命令:

sh.shardCollection("<database>.<collection>", { "<indexed-field>" : 1 } )

例子

要对 sample_analytics.customers 集合进行分片,请执行以下操作:

sh.shardCollection("sample_analytics.customers",{"username":1})

警告

如果您对已具有 Atlas Search 索引的集合进行分片,当该集合开始出现在分片上时,您可能会遇到短暂的查询停机时间。此外,如果您为包含 Atlas Search 索引的已分片集合添加分片,针对该集合的搜索查询将失败,直到添加的分片完成初始同步过程为止。要了解更多信息,请参阅初始同步进程。

如需了解更多信息,请参阅 MongoDB 手册中的“分片集合”。

后退

Databases