Halaman ini menunjukkan cara menyertakan dan mengecualikan jalur dari transfer menggunakan awalan serta pengecualian.
Untuk mempelajari cara membuat manifes objek tertentu yang akan ditransfer, lihat Mentransfer file atau objek tertentu menggunakan manifes.
Ringkasan
Storage Transfer Service mendukung penggunaan awalan untuk memilih file yang akan disertakan atau dikecualikan dari sumber data. Anda dapat menggunakan awalan yang disertakan, awalan yang dikecualikan, atau keduanya secara bersamaan.
Pemfilteran menurut awalan didukung untuk sumber data Amazon S3, Microsoft Azure Blob Storage, dan Cloud Storage.
Jangan sertakan garis miring di awal dalam awalan. Misalnya, untuk menyertakan objek
requests.gz
dalam transfer dari jalur bucket berikuts3://my-aws-bucket/logs/y=2015/requests.gz
, tentukan awalan sertakan sebagailogs/y=2015/requests.gz
.Pencocokan parsial didukung untuk awalan sertakan dan kecualikan. Misalnya,
path
cocok denganpath_1/
danpath_2/
.Karakter pengganti tidak didukung.
Jika Anda menentukan folder sebagai lokasi sumber, filter awalan bersifat relatif terhadap folder tersebut. Misalnya, jika sumber Anda adalah
gs://my-test-bucket/path/
, filter sertakanfile
akan menyertakan semua file yang diawali dengangs://my-test-bucket/path/file
.Setiap awalan include harus menyertakan bagian yang berbeda dari namespace objek. Tidak ada awalan include yang dapat berupa awalan awalan include lainnya. Misalnya, Anda tidak boleh menentukan
path_1
danpath_1/subpath_2
sebagai awalan penyertaan.Jika Anda menggunakan awalan sertakan dan awalan kecualikan secara bersamaan, awalan kecualikan harus dimulai dengan nilai salah satu awalan sertakan. Misalnya, jika Anda menentukan
a
sebagai awalan penyertaan, awalan pengecualian yang valid adalaha/b
,aaa
, danabc
.Jika Anda hanya menggunakan awalan pengecualian, tidak ada batasan pada awalan yang dapat Anda gunakan.
Jika Anda tidak menentukan awalan apa pun, semua objek dalam bucket akan ditransfer.
Untuk informasi umum selengkapnya tentang awalan, lihat Mencantumkan Kunci secara Hierarkis Menggunakan Awalan dan Pemisah dalam dokumentasi Amazon S3 atau Metode daftar objek untuk Cloud Storage.
Cara menentukan awalan
Cloud Console
Untuk menentukan awalan yang disertakan dan dikecualikan menggunakan konsol Cloud, masukkan nilai saat membuat transfer baru atau saat memperbarui transfer yang ada.
gcloud CLI
Untuk menentukan awalan yang disertakan dan dikecualikan menggunakan CLI gcloud
, teruskan flag --include-prefixes
dan --exclude-prefixes
ke perintah gcloud transfer jobs create
atau perintah gcloud transfer jobs update
:
gcloud transfer jobs create SOURCE DESTINATION \
--include-prefixes="path_1/,path_2/" --exclude-prefixes="path_1/subpath_2/"
Pisahkan beberapa awalan dengan koma, tanpa spasi setelah koma.
Misalnya, --include-prefixes=foo,bar
.
REST
Untuk menentukan awalan yang disertakan dan dikecualikan menggunakan REST API, gunakan
kolom includePrefixes[]
dan excludePrefixes[]
:
{
"description": "YOUR DESCRIPTION",
"status": "ENABLED",
"projectId": "PROJECT_ID",
"schedule": {
"scheduleStartDate": {
"day": 1,
"month": 1,
"year": 2015
},
"startTimeOfDay": {
"hours": 1,
"minutes": 1
}
},
"transferSpec": {
"gcsDataSource": {
"bucketName": "GCS_SOURCE_NAME"
},
"gcsDataSink": {
"bucketName": "GCS_SINK_NAME"
},
"transferOptions": {
"deleteObjectsFromSourceAfterTransfer": true
},
"objectConditions": {
"includePrefixes": [
"path_1/",
"path_2/"
],
"excludePrefixes": [
"path_1/subpath_2/object_5"
]
}
}
}
Untuk informasi selengkapnya, lihat referensi ObjectConditions
.
Contoh objek dan jalur
Contoh dalam dokumen ini menggunakan contoh objek dan jalur berikut:
xx://bucketname/object_1
xx://bucketname/object_2
xx://bucketname/path_1/object_3
xx://bucketname/path_2/object_4
xx://bucketname/path_1/subpath_1/object_5
xx://bucketname/path_1/subpath_2/object_6
xx://bucketname/path_2/subpath_3/object_7
xx://bucketname/path_2/subpath_4/object_8
Menyertakan awalan
Gunakan awalan include saat membuat transfer untuk menginstruksikan Storage Transfer Service agar mempertimbangkan objek di jalur yang tercantum untuk transfer, dan mengabaikan objek yang tidak berada di jalur tersebut.
Misalnya, untuk menyertakan objek di bagian path_1/
, gunakan awalan berikut:
path_1/
Hal ini mencakup objek yang langsung berada di bawah path_1/
, path_1/subpath_1
,
dan path_1/subpath_2/
. Objek berikut disertakan dalam transfer:
xx://bucketname/object_1xx://bucketname/object_2xx://bucketname/path_1/object_3xx://bucketname/path_2/object_4xx://bucketname/path_1/subpath_1/object_5 xx://bucketname/path_1/subpath_2/object_6xx://bucketname/path_2/subpath_3/object_7xx://bucketname/path_2/subpath_4/object_8
Anda dapat menentukan beberapa jalur yang akan disertakan. Misalnya, Anda dapat meneruskan hal berikut:
path_1/subpath_2/ path_1/subpath_3/
Dalam hal ini, transfer mencakup objek berikut:
xx://bucketname/object_1xx://bucketname/object_2xx://bucketname/path_1/object_3xx://bucketname/path_2/object_4xx://bucketname/path_1/subpath_1/object_5xx://bucketname/path_1/subpath_2/object_6 xx://bucketname/path_2/subpath_3/object_7xx://bucketname/path_2/subpath_4/object_8
Pencocokan parsial didukung. Misalnya, menentukan path
sebagai nilai
awalan penyertaan akan cocok dengan objek berikut:
xx://bucketname/object_1xx://bucketname/object_2xx://bucketname/path_1/object_3 xx://bucketname/path_2/object_4 xx://bucketname/path_1/subpath_1/object_5 xx://bucketname/path_1/subpath_2/object_6 xx://bucketname/path_2/subpath_3/object_7 xx://bucketname/path_2/subpath_4/object_8
Saat Anda menggunakan awalan penyertaan, jalur yang tidak Anda sertakan secara khusus tidak akan ditransfer ke bucket tujuan Cloud Storage.
Kecualikan awalan
Menggunakan awalan pengecualian saat membuat transfer akan memerintahkan Storage Transfer Service untuk mengabaikan jalur yang tercantum untuk transfer.
Untuk mengecualikan objek di bagian path_1/
, teruskan awalan berikut:
path_1/
Hal ini tidak mencakup objek di bagian path_1/
, path_1/subpath_1/
, dan
path_1/subpath_2/
. Dalam hal ini, objek berikut disertakan dalam
transfer:
xx://bucketname/object_1 xx://bucketname/object_2xx://bucketname/path_1/object_3xx://bucketname/path_2/object_4xx://bucketname/path_1/subpath_1/object_5xx://bucketname/path_1/subpath_2/object_6xx://bucketname/path_2/subpath_3/object_7 xx://bucketname/path_2/subpath_4/object_8
Anda dapat menentukan beberapa jalur yang akan dikecualikan. Misalnya, Anda dapat meneruskan hal berikut:
path_1/subpath_2/
path_2/subpath_3/
Dalam hal ini, transfer mencakup objek berikut:
xx://bucketname/object_1 xx://bucketname/object_2 xx://bucketname/path_1/object_3 xx://bucketname/path_2/object_4 xx://bucketname/path_1/subpath_1/object_5xx://bucketname/path_1/subpath_2/object_6xx://bucketname/path_2/subpath_3/object_7xx://bucketname/path_2/subpath_4/object_8
Menyertakan dan mengecualikan jalur secara bersamaan
Anda dapat menerapkan awalan pengecualian dan awalan penyertaan secara bersamaan. Dalam hal ini, awalan pengecualian akan membatasi apa yang disertakan oleh awalan penyertaan dalam transfer.
Saat menentukan kedua jenis awalan, setiap awalan pengecualian harus dimulai dengan jalur yang ditentukan dalam awalan penyertaan.
Misalnya, untuk menyertakan objek di bagian path_1/
dan mengecualikan objek di bagian
subpath_1/
, teruskan hal berikut:
include: path_1/
exclude: path_1/subpath_1/
Dalam hal ini, transfer mencakup objek berikut:
xx://bucketname/object_1xx://bucketname/object_2xx://bucketname/path_1/object_3xx://bucketname/path_2/object_4xx://bucketname/path_1/subpath_1/object_5xx://bucketname/path_1/subpath_2/object_6xx://bucketname/path_2/subpath_3/object_7xx://bucketname/path_2/subpath_4/object_8
Untuk menyertakan semua objek di bagian path_1/
dan path_2/
, kecuali item di
path_1/subpath_1/
atau path_2/subpath_3/
, teruskan hal berikut:
include: path_1/
path_2/
exclude: path_1/subpath_1/
path_2/subpath_3/
Dalam hal ini, transfer mencakup objek berikut:
xx://bucketname/object_1xx://bucketname/object_2xx://bucketname/path_1/object_3 xx://bucketname/path_2/object_4xx://bucketname/path_1/subpath_1/object_5xx://bucketname/path_1/subpath_2/object_6xx://bucketname/path_2/subpath_3/object_7xx://bucketname/path_2/subpath_4/object_8
Contoh penyertaan atau pengecualian jalur yang salah
Bagian berikut menyertakan contoh yang harus dihindari saat menggunakan jalur yang disertakan atau dikecualikan, dan cara memperbaikinya agar berfungsi dengan benar.
Menyertakan jalur yang digunakan dalam awalan include lain
Setiap awalan include harus menentukan bagian yang berbeda dari namespace objek. Contoh berikut salah karena nilai kedua sudah disertakan dalam namespace nilai pertama:
include: path_1/
path_1/subpath_1
Dalam contoh ini, nilai awalan include tidak valid karena awalan include kedua, path_1/subpath_1
, sudah disertakan dalam path_1/
.
Untuk memperbaikinya, hapus salah satu nilai.
Menggunakan awalan pengecualian yang tidak diawali dengan awalan penyertaan
Setiap awalan pengecualian harus diawali dengan salah satu nilai awalan penyertaan yang ditentukan. Contoh berikut salah karena nilai awalan pengecualian tidak dimulai dengan nilai awalan penyertaan yang ditentukan:
include: path_1/
path_2/
exclude: subpath_1
subpath_4
Dalam contoh ini, nilai awalan pengecualian tidak valid karena tidak dimulai dengan salah satu nilai awalan penyertaan. Untuk memperbaikinya, pastikan awalan pengecualian menyertakan jalur lengkap yang tercantum sebagai awalan penyertaan:
include: path_1/
path_2/
exclude: path_1/subpath_1/
path_2/subpath_4/
Langkah selanjutnya
- Pelajari cara mentransfer daftar file atau objek tertentu.