Fossil SCM

Updated stats and a typo fix in the technical overview document.

drh 2020-02-08 16:43 trunk
Commit bcae84663de82ab3ad8971fdef99dd32b1f6d4ecf2e9598cc70aa69d6827eb15
1 file changed +9 -7
--- www/tech_overview.wiki
+++ www/tech_overview.wiki
@@ -152,16 +152,18 @@
152152
[./fileformat.wiki | enduring, global, shared state] of the project.
153153
The artifacts are stored as BLOBs, compressed using
154154
[http://www.zlib.net/ | zlib compression] and, where applicable,
155155
using [./delta_encoder_algorithm.wiki | delta compression].
156156
The combination of zlib and delta compression results in a considerable
157
-space savings. For the SQLite project, at the time of this writing,
158
-the total size of all artifacts is over 2.0 GB but thanks to the
159
-combined zlib and delta compression, that content only takes up
160
-32 MB of space in the repository database, for a compression ratio
161
-of about 64:1. The average size of a content BLOB in the database
162
-is around 500 bytes.
157
+space savings. For the SQLite project (when this paragraph was last
158
+updated on 2020-02-08)
159
+the total size of all artifacts is over 7.1 GB but thanks to the
160
+combined zlib and delta compression, that content only takes less than
161
+97 MB of space in the repository database, for a compression ratio
162
+of about 74:1. The median size of all content BLOBs after delta
163
+and zlib compression have been applied is 156 bytes.
164
+The median size of BLOBs without compression is 45,312 bytes.
163165
164166
Note that the zlib and delta compression is not an inherent part of the
165167
Fossil file format; it is just an optimization.
166168
The enduring file format for Fossil is the unordered
167169
set of artifacts. The compression techniques are just a detail of
@@ -175,11 +177,11 @@
175177
[/help/artifact | fossil artifact] command.
176178
When accessing the repository database using raw SQL and the
177179
[/help/sqlite3 | fossil sql] command, the extension function
178180
"<tt>content()</tt>" with a single argument which is the SHA1 or
179181
SHA3-256 hash
180
-of an artifact will return the complete undeleted and uncompressed
182
+of an artifact will return the complete uncompressed
181183
content of that artifact.
182184
183185
Going the other way, the [/help/reconstruct | fossil reconstruct]
184186
command will scan a directory hierarchy and add all files found to
185187
a new repository database. The [/help/import | fossil import] command
186188
--- www/tech_overview.wiki
+++ www/tech_overview.wiki
@@ -152,16 +152,18 @@
152 [./fileformat.wiki | enduring, global, shared state] of the project.
153 The artifacts are stored as BLOBs, compressed using
154 [http://www.zlib.net/ | zlib compression] and, where applicable,
155 using [./delta_encoder_algorithm.wiki | delta compression].
156 The combination of zlib and delta compression results in a considerable
157 space savings. For the SQLite project, at the time of this writing,
158 the total size of all artifacts is over 2.0 GB but thanks to the
159 combined zlib and delta compression, that content only takes up
160 32 MB of space in the repository database, for a compression ratio
161 of about 64:1. The average size of a content BLOB in the database
162 is around 500 bytes.
 
 
163
164 Note that the zlib and delta compression is not an inherent part of the
165 Fossil file format; it is just an optimization.
166 The enduring file format for Fossil is the unordered
167 set of artifacts. The compression techniques are just a detail of
@@ -175,11 +177,11 @@
175 [/help/artifact | fossil artifact] command.
176 When accessing the repository database using raw SQL and the
177 [/help/sqlite3 | fossil sql] command, the extension function
178 "<tt>content()</tt>" with a single argument which is the SHA1 or
179 SHA3-256 hash
180 of an artifact will return the complete undeleted and uncompressed
181 content of that artifact.
182
183 Going the other way, the [/help/reconstruct | fossil reconstruct]
184 command will scan a directory hierarchy and add all files found to
185 a new repository database. The [/help/import | fossil import] command
186
--- www/tech_overview.wiki
+++ www/tech_overview.wiki
@@ -152,16 +152,18 @@
152 [./fileformat.wiki | enduring, global, shared state] of the project.
153 The artifacts are stored as BLOBs, compressed using
154 [http://www.zlib.net/ | zlib compression] and, where applicable,
155 using [./delta_encoder_algorithm.wiki | delta compression].
156 The combination of zlib and delta compression results in a considerable
157 space savings. For the SQLite project (when this paragraph was last
158 updated on 2020-02-08)
159 the total size of all artifacts is over 7.1 GB but thanks to the
160 combined zlib and delta compression, that content only takes less than
161 97 MB of space in the repository database, for a compression ratio
162 of about 74:1. The median size of all content BLOBs after delta
163 and zlib compression have been applied is 156 bytes.
164 The median size of BLOBs without compression is 45,312 bytes.
165
166 Note that the zlib and delta compression is not an inherent part of the
167 Fossil file format; it is just an optimization.
168 The enduring file format for Fossil is the unordered
169 set of artifacts. The compression techniques are just a detail of
@@ -175,11 +177,11 @@
177 [/help/artifact | fossil artifact] command.
178 When accessing the repository database using raw SQL and the
179 [/help/sqlite3 | fossil sql] command, the extension function
180 "<tt>content()</tt>" with a single argument which is the SHA1 or
181 SHA3-256 hash
182 of an artifact will return the complete uncompressed
183 content of that artifact.
184
185 Going the other way, the [/help/reconstruct | fossil reconstruct]
186 command will scan a directory hierarchy and add all files found to
187 a new repository database. The [/help/import | fossil import] command
188

Keyboard Shortcuts

Open search /
Next entry (timeline) j
Previous entry (timeline) k
Open focused entry Enter
Show this help ?
Toggle theme Top nav button