我正在使用pymongo,我无法弄清楚如何执行相当于"show dbs"的mongodb交互式shell.
我正在运行一个分片的mongodb环境 - 3个mongod分片,1个mongod配置,1个mongos(没有复制).
我想使用mongoimport将csv数据导入数据库.我有超过210个csv文件,以500,000的增量存储了1.05亿条记录.我知道mongoimport是单线程的,我读到我应该运行多个mongoimport进程以获得更好的性能.但是,我试过了,并没有加快速度:
当并行运行3个mongoimports时,每个进程得到~6k插入/秒(所以18k i/s)与运行1 mongoimport相比,我得到~20k插入/秒.
由于这些进程是通过单个mongod配置和mongos路由的,我想知道这是否是由于我的群集配置.我的问题是,如果我以不同的方式设置我的群集配置,我会获得更好的mongoimport速度吗?我想要更多的mongos流程吗?我应该一次关闭多少个mongoimports进程?
长时间潜伏,第一次海报,请耐心等待.
我正在尝试建立一个分片的,安全的Mongodb环境.我想利用Mongo的自动分享功能,因为我对数据库和时间紧迫都不熟悉.
似乎自动分片仅适用于单个集合(表),但我不希望用户有权访问整个集合.此外,mongoDB只允许对数据库进行身份验证,因此一旦经过身份验证,用户就可以看到1)数据库中的每个集合和2)每个集合中的所有数据.所以,据我所知,我可以拥有自动分片和无需身份验证,或手动分片和身份验证.
我想要两全其美,即:自动收费和身份验证.这可能吗?如果没有,我应该如何在MongoDB中进行手动分片?
此系统的简化用例:集合"用户"拥有每个用户的数据.我想验证用户X,以便X只能看到用户集合中的X数据.用户分布在user_name分区(分片)的多个服务器上.