mongodb迁移工具
项目地址 [github]地址戳这里.(https://github.com/xbsura/mongo-migrate) 使用go语言编写,与m-tools保持一致,除了go语言自带的库,还需要mgo库支持. 功能 mongodb实例之间的数据迁移,带有根据源与目的的节点性质,进行自动分片,预split与movechunk,创建索引,
项目地址
[github]地址戳这里.(https://github.com/xbsura/mongo-migrate)
使用go语言编写,与m-tools保持一致,除了go语言自带的库,还需要mgo库支持.
功能
mongodb实例之间的数据迁移,带有根据源与目的的节点性质,进行自动分片,预split与movechunk,创建索引,拷贝数据与同步oplog几个过程.
设计
迁移工具分为三个阶段,初始化阶段,数据拷贝与oplog同步,分别使用InitCollection
类,CopyData
类与OplogSync
类实现.
InitCollection
过程:
- 建立与源,目标的连接,若失败,raise.
- 初始化两个标识位,s(shard),o(oplog),为0, 0.
- 检测源类型,若为mongod,检测是否为复制集,若无法检测,raise;若为复制集,令o=1;若为mongos,查看要迁移的ns是否分片,如果分片,检测数据分片类型,若都为复制集,令o=1.
- 检测目标类型,若为mongod,令s=0.
- 若s=1,在目标进行分片,按照源的chunk进行split并随机movechunk.
CopyData
过程:
1. 建立源与目的的连接.
2. 获取要迁移的ns.
4. 如果o=1,记录源每个数据分片oplog最新值.
5. 如果源ns分片,按照chunk边界从源并发读,并向目标并发写;如果源未分片,使用一个query查询数据并向目标写.
OplogSync
过程:
1. 如果o=0,退出.
2. 建立源各个数据节点,目标节点(单节点)的连接.
3. 在每个源分片查找oplog ts大于等于CopyData记录时间点的记录,并逐条应用到目标节点.
问题
- 日志貌似打印有一点点问题.
- 性能没测试.
- 代码有点烂.
目前进度 :
完成可运行的版本,没有完整测试.
原文地址:mongodb迁移工具, 感谢原作者分享。

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Recommended apps for the top ten virtual currency viewing platforms: 1. OKX, 2. Binance, 3. Gate.io, 4. Huobi, 5. Coinbase, 6. Kraken, 7. Bitfinex, 8. KuCoin, 9. Bybit, 10. Bitstamp, these platforms provide real-time market trends, technical analysis tools and user-friendly interfaces to help investors make effective market analysis and trading decisions.

Les trois meilleurs logiciels de visualisation du marché libre dans le cercle des devises sont OKX, Binance et Gate.io. 1. OKX fournit une interface simple et des données en temps réel, prenant en charge une variété de graphiques et d'analyse de marché. 2. Binance a des fonctions puissantes, des données précises et convient à toutes sortes de commerçants. 3. Gate.io est connu pour sa stabilité et son exhaustivité, et convient aux investisseurs à long terme et à court terme.

Lorsque vous choisissez une plate-forme de trading de devises numériques adaptée aux débutants, vous devez considérer la sécurité, la facilité d'utilisation, les ressources éducatives et la transparence des coûts: 1. La priorité est accordée aux plateformes qui fournissent un stockage à froid, une vérification à deux facteurs et une assurance active; 2. Les applications avec une interface simple et une opération claire sont plus adaptées aux débutants; 3. La plate-forme doit fournir des outils d'apprentissage tels que des tutoriels et une analyse du marché; 4. Faites attention aux frais cachés tels que les frais de transaction et les frais de retrait en espèces.

Les plates-formes les plus appropriées pour les pièces MEME trading comprennent: 1. Binance, la plus grande du monde, avec une liquidité élevée et des frais de manutention faibles; 2. Okx, un moteur de trading efficace, soutenant une variété de pièces de monnaie; 3. Xbit, décentralisé, soutenant le trading croisé; 4. Redim (Solana Dex), faible coût, combiné avec un carnet de commandes sérique; 5. Pancakeswap (BSC DEX), frais de transaction faibles et vitesse rapide; 6. Orca (Solana Dex), optimisation de l'expérience utilisateur; 7. Coinbase, haute sécurité, adapté aux débutants; 8. Huobi, bien connu en Asie, riches paires commerciales; 9. dexrabbit, intelligent

Les applications d'échange de devises virtuelles fiables et faciles à utiliser sont: 1. Binance, 2. Okx, 3. Gate.io, 4. Coinbase, 5. Kraken, 6. Huobi Global, 7. Bitfinex, 8. Kucoin, 9. Bittrex, 10. Poloniex. Ces plateformes ont été sélectionnées comme les meilleures pour leur volume de transaction, leur expérience utilisateur et leur sécurité, et toutes offrent des opérations d'enregistrement, de vérification, de dépôt, de retrait et de transaction.

Les plateformes de données de crypto-monnaie adaptées aux débutants incluent CoinmarketCap et la trompette non à petites choses. 1. CoinmarketCap fournit des classements mondiaux de prix, de valeur marchande et de volume de trading pour les besoins novices et d'analyse de base. 2. La citation non à petites choses fournit une interface adaptée aux Chinois, adaptée aux utilisateurs chinois afin de projeter rapidement des projets potentiels à faible risque.

Les solutions d'adaptation des utilisateurs nationaux comprennent les canaux de conformité et les outils de localisation. 1. Canaux de conformité: échange de devises de franchise via des plates-formes en vente libre telles que Circle Trade, au niveau national, ils doivent passer par des plateformes de Hong Kong ou d'outre-mer. 2.

Les applications recommandées sur les dix premiers échanges de devises numériques: 1. Okx, 2. Binance, 3. Gate.io, 4. Huobi, 5. Coinbase, 6. Kucoin, 7. Kraken, 8. Bitfinex, 9. Bybit, 10. Bitstamp, ces applications fournissent des tendances du marché en temps réel, une analyse technique et des prix des prix pour aider les utilisateurs à surveiller la dynamique du marché dans le temps réel.
