Pratique du Shadowing: Build a Real-Time Leaderboard on AWS with DynamoDB - Apprendre l'anglais à l'oral avec la vidéo

Choisissez un mode d'entraînement

Chaque mode ouvre une salle d'entraînement en plein écran.

96 phrases
Si les phrases sont trop courtes ou trop longues, cliquez sur Edit pour les ajuster.
1
Did you know that every match weekend, millions of people playing fantasy soccer get re-ranked within minutes of the final whistle?
2
Your striker scores twice, and before the highlights even air, your rank has jumped thousands of places.
3
Think about what that takes.
4
Millions of scores, reshuffled again and again, always in perfect order.
5
Ask any engineer how, and you'll get one word back.
6
Redis.
7
A cash to babysit A cluster to pay for One more thing that can fall over at 2 in the morning
8
We're skipping all of it Today, we build a real-time leaderboard on AWS where the database does the ranking itself Live boards,
9
daily and weekly rankings percentiles,
10
history and the entire ranking engine is one clever sort key We'll walk the diagram piece by piece and at the end,
11
there's a free, hands-on lab where you build every bit of it yourself.
12
Let's start with the hard part.
13
A leaderboard has one job that's harder than it looks, keeping thousands of scores in order all the time.
14
Sort them on every page load, and you're resorting the same data thousands of times a second, slow and expensive.
15
The trick is to never sort at read time at all.
16
So we store every score in Amazon DynamoDB, a serverless database that keeps rows physically ordered by their sort key.
17
Ordered ascending, smallest first.
18
Which is exactly the wrong direction for a leaderboard.
19
So we flip the scores upside down.
20
When a player scores 4,000, we subtract it from a fixed ceiling, 6 nines, and store the result as a sort key.
21
Now, the best player has the smallest key, and ascending order becomes highest score first.
22
Two small details make it bulletproof.
23
We pad the number with zeros so it sorts correctly as text.
24
And we glue the player's ID onto the end, so two identical scores can never collide.
25
The table itself is keyed by player.
26
One row per player, per board.
27
So updating your score is a single write.
28
Then we add a global secondary index.
29
A second, automatically maintained view of the same data, grouped by board and sorted by that inverted score.
30
That index is the leaderboard Read it top-down, and the ranking is already done The live board never stops moving, though The moment scores change,
31
yesterday's top 10 is gone forever So we add a second,
32
smaller table for history A snapshot table that freezes the top 50 Who ranked where,
33
at what moment Before a single line of code touches these tables, we decide who's allowed to That's IAM,
34
one execution role, shared by every function we're about to build With exactly two abilities Access to our tables,
35
and permission to write logs Five functions, same job description One role covers them all
36
Now the backend Five AWS Lambda functions Small pieces of Python that only run when called, and cost nothing in between
37
Each one does a single job The first takes score submissions
38
It writes your score to three boards at once The all-time board, today's daily board, and this week's weekly board
39
And it plays fair It only overwrites your old score if the new one is higher The second reads the board
40
One query against that inverted index, the top 25 rows, stamped rank 1 through 25
41
A few milliseconds and no sorting anywhere The third answers the question every player actually cares about Where do you rank?
42
It counts how many players sit above you in the index Adds one, and that's your rank
43
Turn that into a percentile against the whole board Because top 8% sounds a lot better than rank 200.
44
The fourth is the historian.
45
On request, it copies the current top 50 into the snapshot table, stamped with the moment it was taken.
46
And the fifth works for us.
47
A simulator that invents dozens of players, names, countries, scores, so we can test the system under load without recruiting real gamers.
48
It batch writes up to 90 rows in one shot More than Lambda's default 3 second timeout can survive
49
So we raise its timeout to 10 Five functions, but a browser can't call a Lambda directly So we put Amazon API Gateway in front
50
A REST API with five routes Submit a score, read the board, check a player,
51
take a snapshot, run the simulator Each route uses proxy integration The whole HTTP request goes straight to the function,
52
and the function shapes the whole response.
53
And every route allows cores, cross-origin requests, because our dashboard will live at a different address than the API,
54
and browsers block that unless the API explicitly allows it.
55
Deploy it to a production stage, and the whole backend sits behind one public URL.
56
Last piece, something for humans One small EC2 instance running Ubuntu With two doors open Web traffic for visitors,
57
SSH for us On it,
58
Nginx A web server built to hand out static files fast Serving a one-page dashboard A tiny config file tells
59
that page the backend's URL No framework,
60
no build step One HTML file and Nginx And quietly watching all of it CloudWatch.
61
Every one of the five functions streams its logs there.
62
That's the second half of the role we created.
63
When a score doesn't show up, that's the first place we look.
64
Now the payoff.
65
Open the instances public IP in a browser.
66
The dashboard loads.
67
Empty.
68
Click Seed Data, and the simulator floods the table.
69
Refresh.
70
There's the board.
71
Sorted top to bottom, avatars, country flags, the query time on screen reading just milliseconds.
72
Flip to daily.
73
Weekly.
74
Click a player.
75
Rank, percentile, games played.
76
No cache to warm, no cluster to babysit The database never sorted anything The scores were born sorted
77
Step back and count the pieces
78
Two DynamoDB tables A live board that sorts itself And one for history One shared IAM role Five Lambda functions Submit,
79
query, stats, snapshot, simulate One API gateway front door with five routes One EC2 instance serving the dashboard,
80
and CloudWatch logging every run.
81
And when nobody's playing, the serverless half costs nothing.
82
Functions and tables bill by use, not by the hour.
83
You've watched it come together on a diagram, but this design really sticks the moment the board lights up in your own browser, running on your own build.
84
So we made that free.
85
Two kinds of hands-on labs.
86
First, five mini labs.
87
IAM, DynamoDB, Lambda, API Gateway, and EC2.
88
Each a short, focused rep on one service from this video.
89
Then the capstone, a real AWS account where you build this exact system, the role, the two tables with the inverted index,
90
all five functions, the five API routes, the dashboard.
91
Then seed it and watch your own leaderboard sort itself.
92
The links are below.
93
If this one clicked, subscribe.
94
This video is part of a free AWS Crash Course, and more builds like it are on the way.
95
Tell us in the comments which system you want us to design next.
96
See you in the next one.

Télécharger l'application

Tout pour parler couramment

Prononciation IAChaque phrase notée
Phonétique (IPA)Maîtrisez chaque son
VocabulaireEnrichissez votre lexique
Jeu de vocabulaireApprenez en jouant

Vocabulaire et conseils d’expression pour cette leçon

Cette leçon d’expression orale de niveau C1 s’appuie sur la vidéo « Build a Real-Time Leaderboard on AWS with DynamoDB ». Les mots qui reviennent le plus souvent : score, board, function, table, player. Cette vidéo contient 96 phrases et 1172 mots à répéter en shadowing. La partie parlée dure 7:47. Le locuteur parle à un rythme naturel d’environ 151 mots par minute, proche d’une conversation courante. Seuls 77 % des mots font partie des 3 000 mots les plus courants en anglais, le vocabulaire est donc exigeant.

Vocabulaire clé de cette vidéo

Les 15 mots les plus avancés de la vidéo, avec leur prononciation et leur sens :

MotPrononciationSens
dashboard nom/ˈdæʃˌboɹd/tableau de bord
leaderboard nomclassement
snapshot nom/ˈsnæpʃɒt/instantané
invert verbe/ɪnˈvɜɹt/invertir
simulator nom/ˈsɪmjəˌleɪtɚ/simulateur
query nom/ˈkwɪɹ.i/question
ascend verbe/əˈsɛnd/monter
babysit verbe/ˈbeɪ.bi.sɪt/faire du baby-sitting, garder
millisecond nom/ˈmɪlɪˌsɛkənd/milliseconde
diagram nom/ˈdaɪ.ə.ɡɹæm/diagramme, schéma
cluster nom/ˈklʌstɚ/groupe
bulletproof adjectif/ˈbʊlɪtpɹuf/pare-balle, blindé
capstone nom/ˈkæpˌstoʊn/couronnement
collide verbe/kəˈlaɪd/entrer en collision, heurter
overwrite verbe/oʊ.vɚˈɹaɪt/écraser

Les verbes à particule que vous entendrez

MotSens
hand out verbedistribuer
show up verbeapparaître, se montrer se pointer

La grammaire de cette vidéo

Les structures que le locuteur utilise le plus, avec les mots exacts de la vidéo :

StructureDans la vidéo
Voix passive be + participe passé — l’accent est mis sur ce qui arrive, pas sur qui le faitis keyed · is already done · was taken
Present perfect have/has + participe passé — une action passée qui compte encore maintenanthas jumped · You've watched

Prononciation à surveiller

Le locuteur utilise 8 contractions et formes réduites, comme we're, can't, doesn't. Prononcez-les sous leur forme courte, telles que vous les entendez.

  • Les sons « sh » et « zh »: dashboard /ˈdæʃˌboɹd/, snapshot /ˈsnæpʃɒt/, cache /kæʃ/, refresh /ɹɪˈfɹɛʃ/, submission /səbˈmɪʃən/
  • Mots longs — placez bien l’accent: simulator /ˈsɪmjəˌleɪtɚ/, millisecond /ˈmɪlɪˌsɛkənd/, historian /hɪˈstɔɹi.ən/

Les sons difficiles pour les francophones :

  • /r/ anglais — langue recourbée, sans frotter la gorge: dashboard /ˈdæʃˌboɹd/, browser /ˈbɹaʊ.zəɹ/, invert /ɪnˈvɜɹt/, query /ˈkwɪɹ.i/, diagram /ˈdaɪ.ə.ɡɹæm/

Comment s’entraîner avec cette vidéo

  1. Écoutez la vidéo en entier une fois sans parler et notez les mots que vous ne connaissez pas.
  2. Commencez à la vitesse 0,75×, répétez phrase par phrase, puis revenez à la vitesse normale quand cela devient facile.
  3. Enregistrez-vous et comparez avec l’original, en faisant attention à des mots comme dashboard, leaderboard, snapshot.

Qu'est-ce que la technique du Shadowing ?

Le Shadowing est une technique d'apprentissage des langues fondée sur la science, développée à l'origine pour la formation des interprètes professionnels. Le principe est simple mais puissant : vous écoutez de l'anglais natif et le répétez immédiatement à voix haute — comme une ombre suivant le locuteur avec un décalage de 1 à 2 secondes. Les recherches montrent une amélioration significative de la précision de la prononciation, de l'intonation, du rythme, des liaisons, de la compréhension orale et de la fluidité.

Technique du shadowing : lire le guide complet étape par étape →