When a user creates a Delta Lake table, that table’s transaction log is automatically created in the
_delta_logsubdirectory. As he or she makes changes to that table, those changes are recorded as ordered, atomic commits in the transaction log. Each commit is written out as a JSON file, starting with
000000.json. Additional changes to the table generate subsequent JSON files in ascending numerical order so that the next commit is written out as
000001.json, the following as
000002.json, and so on.
It’s interesting that they chose JSON instead of a binary transaction log like relational databases use.