Skip to Content
Neo4j: The Definitive Guide
book

Neo4j: The Definitive Guide

by Luanne Misquitta, Christophe Willemsen
July 2025
Intermediate to advanced
410 pages
6h 21m
Japanese
O'Reilly Media, Inc.
Content preview from Neo4j: The Definitive Guide

第9章 バックアップとリストア バックアップとリストア

この作品はAIを使って翻訳されている。ご意見、ご感想をお待ちしている:translation-feedback@oreilly.com

ElectricHarmonyのNeo4jとの旅は、トランスフォーマーに他ならない。アーティスト、アルバム、ユーザの嗜好をマッピングするための実験的なグラフデータベースとしてスタートしたものが、瞬く間にレコメンデーション・エンジンの中核要素となった。チームは、リアルタイムの音楽ディスカバリー、プレイリストのキュレーション、アーティストのリレーションマッピングの構築に成功し、そのすべてがNeo4jの複雑なコネクションを光速でトラバースする能力によって支えられている。

しかし、成功には規模が伴い、規模にはリスクが伴う。

ElectricHarmonyのユーザベースが爆発的に増えるにつれ、グラフデータベースも爆発的に増えている。毎日何百万ものリレーションシップが作成・更新され、停止時間という選択肢はもはやない。同社のエンジニアリングチームは、クエリを最適化し、インデックスをチューニングし、Neo4jを本番環境にデプロイしたが、まだ1つの重要なピースが残っている。

書き込みパス

バックアップ戦略の前に、Neo4jがどのようにデータを書き込み、永続化するかを理解することが重要である。Neo4jのトランザクション・ライフサイクルは、耐久性と一貫性を保証するために、構造化されたシーケンスに従う。

図9-1にシーケンスの概要を示す。

図 9-1. トランザクションのライフサイクル

第2章を思い出してほしい。トランザクションは、データベースに変更が加えられると、、開始される。これらの変更は初期化時にメモリに適用され、データが最終的にディスクに書き込まれる前に中間層として機能するページキャッシュにストアされる。

トランザクションがコミットされる前に、その変更はトランザクションログに書き込まれなければならない。このステップは、トランザクションディレクトリの下に位置する、別の逐次ログファイルに変更を記録することにより、耐久性を保証する。

トランザクションログエントリが耐久性をもってディスクに書き込まれると、システムはそのトランザクションをコミットしたものとしてマークする。これにより、障害が発生しても変更が回復可能であることが保証される。コミット演算子はトランザクションを確定し、その変更を公式に可視化し、、システムが後続のリクエストに続行できるようにする。

チェックポイント

Neo4jのチェックポイントは 、データベースのハウスキーピングプロセスの一部である。トランザクション・ログがすべての変更を記録することで耐久性を保証する一方、チェックポイントは、ダーティ・ページ(コミットされたトランザクションによって変更されたページ)をページ・キャッシュからストア・ファイルにフラッシュすることで、リカバリ時間を最適化するのに役立つ。チェックポイントの間、Neo4jはすべての変更がストアファイルに反映されるまでの最新のログポジションを記録する。これにより、システムはトランザクションログの古い部分を破棄し、クラッシュ後、ログ全体を再生する必要なく、より迅速に再起動することができる。

チェックポイントには2つの主な目的がある: ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

Elasticsearch in Action, Second Edition

Elasticsearch in Action, Second Edition

Madhusudhan Konda
Fluent Python ―Pythonicな思考とコーディング手法

Fluent Python ―Pythonicな思考とコーディング手法

Luciano Ramalho, 豊沢 聡, 桑井 博之, 梶原 玲子

Publisher Resources

ISBN: 9798341664760