Synchronously Downloading Incremental Objects
Function
This function synchronizes all content in the specified path of the source bucket to the target bucket on OBS, ensuring that the content is consistent between the specified path of the source bucket and the target bucket. Incremental synchronization has the following meanings: (1) Increment: Compare the source object with the target file and download only the source object that has changes. (2) Synchronization: After the command is executed, ensure that the specified path of the source bucket is a subset of the local target path. That is, any object in the specified path of the source bucket has its corresponding file in the local target path.
- Do not change the source objects in the OBS bucket when synchronously downloading objects. Otherwise, the synchronization may fail or data may be inconsistent.
- If the storage class of the object to be copied is cold, you must restore the object to be downloaded first. Otherwise, the download fails.
- Each object can be synchronously downloaded only when it does not exist in the local path, its size is different from the namesake one in the local path, or it has the latest modification time.
When you compare each local file with data in the bucket, a billable HEAD request is generated. For details, see Requests.
Command Line Structure
- In Windows
obsutil sync obs://bucket[/key] folder_url [-tempFileDir=xxx] [-dryRun] [-vlength] [-vmd5] [-j=1] [-p=1] [-threshold=52428800] [-ps=auto] [-include=*.xxx] [-exclude=*.xxx] [-timeRange=time1-time2] [-mf] [-o=xxx] [-cpd=xxx] [-config=xxx] [-e=xxx] [-i=xxx] [-k=xxx] [-t=xxx]
- In Linux or macOS
./obsutil sync obs://bucket[/key] folder_url [-tempFileDir=xxx] [-dryRun] [-vlength] [-vmd5] [-j=1] [-p=1] [-threshold=52428800] [-ps=auto] [-include=*.xxx] [-exclude=*.xxx] [-timeRange=time1-time2] [-mf] [-o=xxx] [-cpd=xxx] [-config=xxx] [-e=xxx] [-i=xxx] [-k=xxx] [-t=xxx]
Examples
- Take the Windows OS as an example. Run the obsutil sync obs://bucket-test/temp d:\ temp command to download objects synchronously.
obsutil sync obs://bucket-test/temp d:\temp Start at 2024-09-30 08:53:22.327072 +0000 UTC Parallel: 5 Jobs: 5 Threshold: 50.00MB PartSize: auto VerifyLength: false VerifyMd5: false CheckpointDir: xxxx Task id: 3066a4b0-4d21-4929-bb84-4829c32cbd0f OutputDir: xxxx TempFileDir: xxxx [======================================================] 100.00% tps:17.86 155.59 KB/s 7.20MB/7.20MB 0s Succeed count: 6 Failed count: 0 Succeed bytes: xxxx Metrics [max cost:153 ms, min cost:129 ms, average cost:92.00 ms, average tps:17.86, transfered size: 7.20MB] Task id: 3066a4b0-4d21-4929-bb84-4829c32cbd0f
- For more examples, see Synchronous Download.
Parameter Description
Parameter |
Optional or Mandatory |
Description |
---|---|---|
folder_url |
Mandatory |
Local folder path |
bucket |
Mandatory |
Bucket name |
key |
Optional |
Indicates the name prefix of objects to be synchronously downloaded. The rules are as follows:
NOTE:
|
tempFileDir |
Optional (additional parameter) |
Indicates the directory for storing temporary files during synchronous download. The default value is the value of defaultTempFileDir in the configuration file.
NOTE:
|
dryRun |
Optional (additional parameter) |
Conducts a dry run. |
vlength |
Optional (additional parameter) |
Checks whether the sizes of the local files are the same as those of the objects in the bucket after the download is complete. |
vmd5 |
Optional (additional parameter) |
Checks whether MD5 values of the local files are the same as those of the objects in the bucket after the download is complete.
NOTE:
Objects in the bucket must contain metadata x-obs-meta-md5chksum, or MD5 verification will be skipped.
CAUTION:
If your object needs encryption, do not use this parameter. |
p |
Optional (additional parameter) |
Indicates the maximum number of concurrent multipart download tasks when downloading an object. The default value is the value of defaultParallels in the configuration file. |
threshold |
Optional (additional parameter) |
Indicates the threshold for enabling multipart download, in bytes. The default value is the value of defaultBigfileThreshold in the configuration file.
NOTE:
|
ps |
Optional (additional parameter) |
Indicates the size of each part in a multipart download task, in bytes. The default value is the value of defaultPartSize in the configuration file.
NOTE:
|
cpd |
Optional (additional parameter) |
Indicates the folder where the part records reside. The default value is .obsutil_checkpoint, the subfolder in the home directory of the user who executes obsutil commands.
NOTE:
A part record is generated during a multipart download and saved to the down subfolder. After the download succeeds, its part record is deleted automatically. If the download fails or is suspended, the system attempts to resume the task according to its part record when you perform the download the next time. |
j |
Optional for downloading objects in batches (additional parameter) |
Indicates the maximum number of concurrent tasks for downloading objects synchronously. The default value is the value of defaultJobs in the configuration file.
NOTE:
The value is ensured to be greater than or equal to 1. |
exclude |
Optional for downloading objects in batches (additional parameter) |
Indicates the matching patterns of source objects that are excluded, for example: *.txt.
NOTE:
NOTICE:
|
include |
Optional for downloading objects in batches (additional parameter) |
Indicates the matching patterns of source objects that are included, for example: *.jpg.
NOTE:
NOTICE:
|
timeRange |
Optional (additional parameter) |
Indicates the time range matching pattern when synchronously downloading objects. Only objects whose latest modification time is within the configured time range are downloaded. This pattern has a lower priority than the object matching patterns (exclude/include). That is, the time range matching pattern is executed after the configured object matching patterns.
NOTE:
NOTICE:
|
mf |
Optional (additional parameter) |
Indicates that the name matching pattern (include or exclude) and the time matching pattern (timeRange) also take effect on objects whose names end with a slash (/). |
o |
Optional (additional parameter) |
Indicates the folder where operation result lists reside. After the command is executed, result lists (possibly including success, failure, and warning files) are generated in the folder. The default value is .obsutil_output, the subfolder in the home directory of the user who executes obsutil commands.
NOTE:
|
config |
Optional (additional parameter) |
User-defined configuration file for executing the current command. To learn the parameters that can be configured in this file, see Configuration Parameters. |
e |
Optional (additional parameter) |
Specifies the endpoint. |
i |
Optional (additional parameter) |
Specifies the user's AK. |
k |
Optional (additional parameter) |
Specifies the user's SK. |
t |
Optional (additional parameter) |
Specifies the user's security token. |
Response
Refer to Response for uploading an object.
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot