Passer aux informations sur le produit
Conception d'applications axée sur les données
Conception d'applications axée sur les données
Description
Introduction au livre
Les données sont au cœur de nombreux défis rencontrés lors de la conception de systèmes actuels.
Non seulement vous devez résoudre des problèmes complexes tels que l'évolutivité, la cohérence, la fiabilité, l'efficacité et la maintenabilité, mais vous êtes également submergé par la variété des outils disponibles, notamment les bases de données relationnelles, les bases de données NoSQL, les processeurs de flux ou par lots, les courtiers de messages, et bien plus encore.
Quelle option convient le mieux à votre application ? Comprenez-vous bien ces termes techniques ?

Dans ce guide pratique et complet, Martin Klefman examine les avantages et les inconvénients des différentes technologies de traitement et de stockage des données.
Ce livre constituera un guide précieux pour s'orienter dans le vaste domaine des problèmes.
Les logiciels évoluent constamment, mais les principes fondamentaux restent les mêmes.
Dans cet ouvrage, les ingénieurs et architectes logiciels apprendront comment appliquer ces concepts en pratique et comment tirer le meilleur parti des données dans les applications modernes.

Ce que vous apprendrez dans ce livre

Examinez de plus près le fonctionnement interne des systèmes que vous utilisez actuellement et apprenez à les utiliser et à les exploiter plus efficacement.
Comprendre les points forts et les faiblesses des différents outils pour permettre une prise de décision éclairée.
Découvrez les compromis entre cohérence, évolutivité, tolérance aux pannes et complexité.
Comprendre l'étude des systèmes distribués qui constituent la base des bases de données modernes.
Comprendre le contexte des principaux services en ligne et se familiariser avec l'architecture des services.

  • Vous pouvez consulter un aperçu du contenu du livre.
    Aperçu

indice

[Partie 1] Les bases des systèmes de données

Chapitre 1 : Applications fiables, évolutives et maintenables
Réflexions sur les systèmes de données
fiabilité
défaut matériel
Erreur logicielle
___erreur humaine
___Quelle importance revêt la fiabilité ?
Évolutivité
Décrivez la charge
___Décrire la performance
Approche de réponse à la charge
maintenabilité
___Facilité d'utilisation : Créer une facilité d'utilisation
___Simplicité : Gérer la complexité
___Développement : Faciliter le changement
organiser
Références

Chapitre 2 : Modèle de données et langage de requête
Modèle relationnel et modèle de document
La naissance de ___NoSQL
Incompatibilité objet-relationnelle
Relations plusieurs-à-un et plusieurs-à-plusieurs
Les bases de données documentaires répètent-elles l'histoire ?
Bases de données relationnelles et bases de données documentaires actuelles
Langage de requête pour les données
Requêtes déclaratives sur le web
Requête MapReduce
Modèle de données graphique
___graphique de propriétés
Langage de requête Cypher
Requêtes graphiques en SQL
Triple rangement et brillance
___Pierre angulaire : Datalog
organiser
Références

Chapitre 3 : Stockage et recherche
Les structures de données qui rendent les bases de données puissantes
___index de hachage
Tableau SS et arbre LSM
Arbre ___B
___Comparaison des arbres B et LSM
___Autres structures d'index
Traitement des transactions ou analyse ?
Entrepôt de données
Schémas d'analyse : schéma en étoile et schéma en flocon de neige
Stockage orienté en colonnes
compression de colonne
Triez l'ordre du stockage des colonnes
Écriture dans un stockage orienté colonnes
___Agrégations : Cubes de données et vues matérialisées
organiser
Références

Chapitre 4 : Programmation et développement
Format d'encodage des données
Format spécifique à la langue
___JSON et XML, variantes binaires
___Tampons d'économie et de protocole
___Abro
Avantages du schéma ___
Mode flux de données
Flux de données à travers la base de données ___
Flux de données via les services REST et RPC
Flux de données de transmission de messages
organiser
Références

[Partie 2] Données distribuées

Adaptation aux charges élevées
architecture ___sans rien partager
Réplication vs. Partitionnement
Références

Chapitre 5 : Réplication
Leaders et suiveurs
Réplication synchrone vs. asynchrone
___Créer de nouveaux abonnés
Traitement des interruptions de nœuds
___Implémentation des journaux de réplication
Problème de délai de réplication
___Lisez ce que vous avez écrit
Lecture ___ sur un ton monotone
___Lire dans un ordre cohérent
Solution pour le délai de réplication
Réplication à plusieurs leaders
___Cas d'utilisation de la réplication multi-leader
Gestion des conflits d'écriture
Topologie de réplication à plusieurs leaders
Réplication sans leader
Écriture dans la base de données lorsque le nœud ___ est hors service
___Limites de la cohérence du quorum
Quorum faible et transfert implicite
Détection d'écritures simultanées
organiser
Références

Chapitre 6 : Partitionnement
Partitionnement et réplication
Partitionnement des données clé-valeur
Partitionnement par plage de clés ___
Partitionnement basé sur la valeur de hachage de la clé ___
___Réduire la charge de travail et les points chauds
Partitionnement et index secondaires
Partitionnement d'index secondaire basé sur les documents
Partitionnement d'index secondaire basé sur les termes
Rééquilibrage des partitions
Stratégie de rééquilibrage
Opérations : Rééquilibrage automatique et manuel
Routage des requêtes
Exécution de requêtes parallèles
organiser
Références

Chapitre 7 : Transactions
Le concept de transactions ambiguës
La signification de ___ACIDE
Opérations sur un seul objet et opérations sur plusieurs objets
Assouplissement des mesures de confinement
___À lire après le commit
___Isolation instantanée et lectures répétables
Prévention des pertes de renouvellement
___Écriture de Skew et Phantom
Sérialité
___Exécution en série réelle
Verrouillage à 2 niveaux (2PL)
Isolation d'instantané sérialisable (SSI)
organiser
Références

Chapitre 8 : Les problèmes liés aux systèmes distribués
Défauts et défaillances partielles
___Informatique en nuage et supercalcul
Réseau peu fiable
___Dysfonctionnements du réseau dans le monde réel
détection des défauts
Délais d'attente et retards indéfinis
Réseaux synchrones vs. réseaux asynchrones
montre peu fiable
Horloge monophasée vs. horloge monophasée
Synchronisation et précision de l'horloge
___Fiez-vous à une horloge synchronisée
___Arrêt du processus
Connaissance, vérité et mensonges
La vérité est décidée par le vote majoritaire
___Faute byzantine
Modèle du système et réalité
organiser
Références

Chapitre 9 : Cohérence et accord
Assurer la cohérence
linéarité
Qu'est-ce qui confère sa linéarité à un système ___ ?
___S'appuyer sur la linéarité
___Mise en œuvre d'un système linéaire
___Coût de la linéarité
Commande garantie
___Ordre et causalité
___Commande par numéro de série
___Diffusion de l'ordre complet
Transactions distribuées et consensus
___Commande atomique et engagement en deux phases (2PC)
___Transactions distribuées dans le monde réel
Accord tolérant aux pannes
Services d'adhésion et de coordination
organiser
Références

[Partie 3] Produits dérivés

Chapitre 10 : Traitement par lots
Traitement par lots avec des outils Unix
___Analyse logarithmique simple
Philosophie Unix
MapReduce et systèmes de fichiers distribués
Exécution d'une tâche MapReduce
___Jointure et regroupement côté réduction
Joignure du côté de la carte
___Résultat du flux de travail par lots
___Comparaison entre Hadoop et les bases de données distribuées
Au-delà de MapReduce
___Concrétisation de l'état intermédiaire
___Graphes et traitement itératif
___API et langages de haut niveau
organiser
Références

Chapitre 11 : Traitement des flux
Transmission du flux d'événements
système de messagerie
journal partitionné
Bases de données et flux
___Maintenez le système synchronisé
___Saisie des données modifiées
___Approvisionnement d'événements
___État, flux et immuabilité
Traitement de flux
Utilisation du traitement de flux ___
Inférence concernant ___temps
___stream rejoindre
Tolérance aux pannes
organiser
Références

Chapitre 12 : L'avenir des systèmes de données
Intégration des données
___Une combinaison d'outils spécialisés pour les données dérivées
Traitement par lots et en flux continu
Dégroupage de la base de données
___Configuration de la technologie de stockage de données
Conception d'applications basée sur les flux de données
Observez l'état de la dérivée ___
Viser la précision
Argumentation de bout en bout concernant les bases de données
Faire respecter les contraintes ___
___Ponctualité et intégrité
___Croire.
Mais vérifiez.

Faites ce qui est juste
___Analyse prédictive
Confidentialité et suivi
organiser
Références

Glossaire
SPÉCIFICATIONS DES PRODUITS
- Date de publication : 12 avril 2018
Nombre de pages, poids, dimensions : 608 pages | 188 × 240 × 28 mm
- ISBN13 : 9791158390983
- ISBN10 : 115839098X

Vous aimerez peut-être aussi

카테고리