考虑我们有3个节点N1,N2,N3。
现在我们有3个独立的分片,其复制集各有一个辅助和仲裁 在节点1上,我们在端口27019上启动configserver,接下来我们也使用这个configsvr实例启动一个mongos实例, 然后将每个分片添加到它。 现在我的问题是我的java代码插入文件应该与这个mongos实例进行对话以插入文档, 或者我可以直接在任何共享的主要实例中插入它们,它们会相应地自动拆分数据。
答案 0 :(得分:1)
这是分片的基本概念 - 它完全不受哪些机器运行哪些进程的影响。
您应该只将应用程序连接到mongos
进程。在任何情况下,您都不应该直接在任何碎片/主要数据上操作数据。
您唯一可以直接连接到分片的是各种管理维护任务。您的应用程序甚至不应该知道它们正在运行的主机或端口 - 它只需要知道如何连接到mongos
进程。
答案 1 :(得分:1)
首先,您的配置服务器必须正在运行。之后,您应该将应用程序与mongos服务器连接起来。 您应该只连接到mongos服务器,并且只应从中填充所有数据。
如果您将数据插入到分片服务器中,它将不会被分发,并且只会保留在该服务器上。