Heim Datenbank MySQL-Tutorial mongodb 分布式读写操作(1)

mongodb 分布式读写操作(1)

Jun 07, 2016 pm 04:37 PM
mongodb 分布式 操作 读写

mongodb shared cluster 和 replica set 架构应用非常广泛。在生产环境中,这两种架构随着业务量,数据量的增长以及高可用性的需求,日渐提上日程,系统架构从单台慢慢转向集群的架构,所有底层设施集群化。一. 分布式读操作介绍分片集群和副本集如何影响读

mongodb shared cluster 和 replica set 架构应用非常广泛。在生产环境中,这两种架构随着业务量,数据量的增长以及高可用性的需求,日渐提上日程,系统架构从单台慢慢转向集群的架构,所有底层设施集群化。 一. 分布式读操作 介绍分片集群和副本集如何影响读操作的性能。 1.1 分片集群读操作 分片集群允许数据分割到集群内的不同mongod实例上,这对应用程序来说几乎是透明的。 对于分片集群,应用程序发出操作与集群相关的mongos实例。   sharded-cluster 读操作直接定向到一个特定的分片上,集群读操作是最有效的。 查询到分片集合应该包括集合分片片键。?当一个查询包含分片片键,mongos从config ?server使用集群元数据将查询路由到分片。 查询条件包括分片关键。查询路由器mongos将查询直接到定位到相应的分片。 sharded-cluster-targeted-query 如果查询不包含分片片键,mongos将查询广播到集群中的所有分片。 这种分散聚集查询是非常低效的。对于大型集群,这种操作是要命的。 sharded-cluster-scatter-gather-query 1.2 复制集读操作 副本集使用读的优先模式来决定在哪里以及如何路由读操作到副本集的成员。 默认情况下,应用程序读操作在复制集的primary上。从primary读可以保证文档的最新版本,因为复制集是异步复制的。然后,通过分配部分或者全部读操作到复制集的secondary节点上,可以提高读取吞吐量或减少等待时间,对实时性应用程序需要并不高。 可以通过修改读操作的优先模式来更改读的特性。 读操作的模式有:
读模式 描述
primary 默认模式。所有读操作都从primary节点读取。
primaryPreferred 在大多数情况下,读操作从primary节点读取,但如果primary节点不可用,读操作从secondary节点读取。
secondary 所有读操作都从secondary节点读取。
secondaryPreferred 在大多数情况下,读操作从secondary节点读取,但如果secondary节点不可用,读操作从primary节点读取。
nearest 读操作从副本集网络延迟最小的节点读取,无论该节点的类型。
根据应用程序的需求,选择不同的读操作模式。 最大限度的一致性:在任何情况下,避免读取到旧数据,使用primary模式。在没有primary节点,发生在选举阶段,或大部分节点不可用,将阻塞所有的读取操作。 最大限度的高可用性:尽可能的保证读操作,使用?primaryPreferred 模式。当有一个primary节点会得到一致性读,如果没有,仍然可以查询secondary节点。 减少等待时间 :要始终从低延迟的节点读取,使用nearest。驱动和mongos从最少延迟读取。nearest不保证一致性。如果复制延迟,查询可能返回过期数据。nearest只反映网络的延迟,并不能反映I/O和CPU的负载。 replica-set-read-preference 从secondary节点读取,并不能反映primary当前的状态,异步复制下,secondary节点可能落后primary节点一定的时间。通常情况下,应用程序不要求这种严格的一致性,对于高可用性的要求是最多的。 二.?分布式写操作 介绍MongoDB中如何引导的分片集群和副本集的写操作,并且这些写操作的性能特点。具体内容请关注下节内容。
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

<🎜>: Bubble Gum Simulator Infinity - So erhalten und verwenden Sie Royal Keys
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Nordhold: Fusionssystem, erklärt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Mandragora: Flüstern des Hexenbaum
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

Java-Tutorial
1670
14
PHP-Tutorial
1276
29
C#-Tutorial
1256
24
Verwenden Sie den Komponisten, um das Dilemma von Empfehlungssystemen zu lösen: Andres-Montanez/Empfehlungen-Bundle Verwenden Sie den Komponisten, um das Dilemma von Empfehlungssystemen zu lösen: Andres-Montanez/Empfehlungen-Bundle Apr 18, 2025 am 11:48 AM

Bei der Entwicklung einer E-Commerce-Website habe ich auf ein schwieriges Problem gestoßen: So liefern Sie den Benutzern personalisierte Produktempfehlungen. Anfangs habe ich einige einfache Empfehlungsalgorithmen ausprobiert, aber die Ergebnisse waren nicht ideal und die Benutzerzufriedenheit war ebenfalls betroffen. Um die Genauigkeit und Effizienz des Empfehlungssystems zu verbessern, habe ich mich entschlossen, eine professionellere Lösung zu übernehmen. Schließlich habe ich Andres-Montanez/Empfehlungen durch den Komponisten installiert, was nicht nur mein Problem löste, sondern auch die Leistung des Empfehlungssystems erheblich verbesserte. Sie können Komponist über die folgende Adresse lernen:

Navicat -Methode zum Anzeigen von MongoDB -Datenbankkennwort Navicat -Methode zum Anzeigen von MongoDB -Datenbankkennwort Apr 08, 2025 pm 09:39 PM

Es ist unmöglich, das MongoDB -Passwort direkt über Navicat anzuzeigen, da es als Hash -Werte gespeichert ist. So rufen Sie verlorene Passwörter ab: 1. Passwörter zurücksetzen; 2. Überprüfen Sie die Konfigurationsdateien (können Hash -Werte enthalten). 3. Überprüfen Sie Codes (May Hardcode -Passwörter).

So wählen Sie eine Datenbank für GitLab auf CentOS aus So wählen Sie eine Datenbank für GitLab auf CentOS aus Apr 14, 2025 pm 04:48 PM

Die GitLab -Datenbank -Bereitstellungshandbuch zum CentOS -System zur Auswahl der richtigen Datenbank ist ein wichtiger Schritt bei der erfolgreichen Bereitstellung von GitLab. GitLab ist mit einer Vielzahl von Datenbanken kompatibel, darunter MySQL, PostgreSQL und MongoDB. In diesem Artikel wird ausführlich erklärt, wie Sie diese Datenbanken auswählen und konfigurieren. Datenbankauswahlempfehlung MySQL: Ein weit verbreitetes relationales Datenbankverwaltungssystem (RDBMS) mit stabiler Leistung und für die meisten GitLab -Bereitstellungsszenarien geeignet. PostgreSQL: leistungsstarke Open -Source -RDBMs unterstützt komplexe Abfragen und erweiterte Funktionen, die für die Behandlung großer Datensätze geeignet sind. MongoDB: beliebte NoSQL -Datenbank, gut im Umgang mit See

Was ist die CentOS MongoDB -Backup -Strategie? Was ist die CentOS MongoDB -Backup -Strategie? Apr 14, 2025 pm 04:51 PM

Detaillierte Erläuterung der effizienten Backup -Strategie von MongoDB im CentOS -System Dieser Artikel wird die verschiedenen Strategien zur Implementierung der MongoDB -Sicherung im CentOS -System ausführlich einführen, um die Datensicherheit und die Geschäftsübergang zu gewährleisten. Wir werden manuelle Backups, zeitgesteuerte Sicherungen, automatisierte Skriptsicherungen und Sicherungsmethoden in Docker -Containerumgebungen abdecken und Best Practices für die Verwaltung von Sicherungsdateien bereitstellen. Handbuch Sicherung: Verwenden Sie den Befehl mongodump, um eine manuelle vollständige Sicherung durchzuführen.

MongoDB und relationale Datenbank: Ein umfassender Vergleich MongoDB und relationale Datenbank: Ein umfassender Vergleich Apr 08, 2025 pm 06:30 PM

MongoDB und relationale Datenbank: Eingehender Vergleich In diesem Artikel werden die Unterschiede zwischen der NOSQL-Datenbank MongoDB und traditionellen relationalen Datenbanken (wie MySQL und SQLServer) eingehend untersucht. Relationale Datenbanken verwenden Tabellenstrukturen von Zeilen und Spalten, um Daten zu organisieren, während MongoDB flexible dokumentorientierte Modelle verwendet, um den Anforderungen moderner Anwendungen besser entsprechen. Unterscheidet hauptsächlich Datenstrukturen: Relationale Datenbanken verwenden vordefinierte Schema -Tabellen, um Daten zu speichern, und die Beziehungen zwischen Tabellen werden durch Primärschlüssel und Fremdschlüssel hergestellt. MongoDB verwendet JSON-ähnliche BSON-Dokumente, um sie in einer Sammlung zu speichern, und jede Dokumentstruktur kann unabhängig geändert werden, um mustfreies Design zu erreichen. Architektures Design: Relationale Datenbanken müssen ein festgelegtes festes Schema vor definiert werden. MongoDB unterstützt

So richten Sie Benutzer in MongoDB ein So richten Sie Benutzer in MongoDB ein Apr 12, 2025 am 08:51 AM

Befolgen Sie die folgenden Schritte, um einen MongoDB -Benutzer einzurichten: 1. Stellen Sie eine Verbindung zum Server her und erstellen Sie einen Administratorbenutzer. 2. Erstellen Sie eine Datenbank, um Benutzern Zugriff zu gewähren. 3.. Verwenden Sie den Befehl createUser, um einen Benutzer zu erstellen und seine Rolle und Datenbankzugriffsrechte anzugeben. V. 5. Legen Sie optional andere Berechtigungen oder Gewährung der Benutzer Berechtigungen für eine bestimmte Sammlung ein.

So verschlüsseln Sie Daten in Debian MongoDB So verschlüsseln Sie Daten in Debian MongoDB Apr 12, 2025 pm 08:03 PM

Verschlüsseln Sie die MongoDB -Datenbank in einem Debian -System erfordert die folgenden Schritte: Schritt 1: Stellen Sie zuerst die MongoDB -Installation durch, dass Ihr Debian -System MongoDB installiert hat. Wenn nicht, lesen Sie bitte das offizielle MongoDB-Dokument für die Installation: https://docs.mongodb.com/manual/tutorial/install-mongodb-on-debian/step 2: Generieren Sie die Verschlüsselungsschlüsseldatei Erstellen Sie eine Datei, die die Verschlüsselungsschlüssel enthält, und setzen

Was sind die Werkzeuge, um eine Verbindung zu MongoDB herzustellen? Was sind die Werkzeuge, um eine Verbindung zu MongoDB herzustellen? Apr 12, 2025 am 06:51 AM

Die Hauptwerkzeuge für die Verbindung zu MongoDB sind: 1. MongoDB -Shell, geeignet, um Daten schnell anzusehen und einfache Vorgänge auszuführen; 2. Programmiersprach -Treiber (wie Pymongo, MongoDB Java -Treiber, MongoDB -Knoten.js -Treiber), geeignet für die Anwendungsentwicklung, aber Sie müssen die Verwendungsmethoden beherrschen. 3. GUI -Tools (z. B. Robo 3T, Compass) bieten eine grafische Schnittstelle für Anfänger und die schnelle Datenzusatz. Bei der Auswahl von Tools müssen Sie Anwendungsszenarien und Technologiestapel berücksichtigen und auf die Konfiguration der Verbindungszeichenfolge, die Berechtigungsverwaltung und die Leistungsoptimierung achten, z. B. die Verwendung von Verbindungspools und -indizes.

See all articles