Jinsi ya kuondoa metadata kwenye Hifadhi ya Google

Sasisho la mwisho: 18/08/2025
Mwandishi: Daniel Terrasa

  • Elewa ni nini Hifadhi ya metadata inadhibiti (jina, lebo, IndexableText, na vijipicha) na metadata gani ni ya huduma zingine za Wingu la Google.
  • Tumia API ya Hifadhi kuuliza na kurekebisha metadata; safi EXIF ​​​​na data iliyoingia kabla ya kupakia faili.
  • Heshimu mipaka na sheria (vijipicha, maandishi ya faharasa, viendelezi) na uthibitishe ukitumia gcloud kwa majaribio ya ndani ya REST.
futa metadata katika Hifadhi ya Google

Je, ungependa kudhibiti metadata ya faili zako ndani Hifadhi ya Google na sijui pa kuanzia? Hapa tunaelezea kwa undani, Jinsi ya kuondoa metadata katika Hifadhi ya Google kwa ufanisi na kwa usalama (metadata ya faili zilizopakiwa). Pia tunakuambia ni vikwazo gani Google inaweka kwa majina ya faili, saizi na ruhusa.

Mwongozo huu utakupa ufahamu kamili na wa kweli wa kile kinachoweza (na kisichoweza) "kufutwa" linapokuja suala la metadata katika Hifadhi ya Google.

Ni nini kinachoweza kubadilishwa au "kufutwa" katika Hifadhi

Hizi ndizo metadata ambayo inaweza kuondolewa kutoka kwa faili zilizopakiwa kwenye Hifadhi ya Google:

Jina na ugani: Wakati wa kuunda faili kupitia API, ni wazo nzuri kutaja ugani katika uwanja wa jina, kwa mfano, "cat.jpg." Hifadhi inaweza kukadiria kiendelezi kutoka kwa aina ya MIME ikiwa hutakibainisha, lakini ni bora kukifafanua wewe mwenyewe. Katika majibu yanayofuata, kiendelezi cha faili cha kusoma tu kinaweza kuonekana na kiendelezi kilichowekwa kutoka kwa jina. Mtumiaji akipakua faili, Hifadhi hujumuisha jina la mwisho kutoka kwa kichwa (na kiendelezi chake).

  • Maandishi yanayoweza kuorodheshwa (contentHints.indexableText): Hifadhi faharasa hati na aina za kawaida (PDF, picha zinazowezeshwa na OCR, n.k.) kwa chaguomsingi. Ikiwa programu yako itahifadhi miundo mingine (michoro, video, njia za mkato), unaweza kutoa maandishi ya faharasa ili kuboresha utafutaji. Maandishi haya yanachakatwa kama HTML: ukipitisha mfuatano ulio na lebo, maudhui ya maandishi yamewekwa katika faharasa, si sifa za lebo. Kuna kikomo cha ukubwa wa 128KB kwa contentHints.indexableText, na unapendekezwa kwamba usasishe kwenye kila hifadhi na uifanye kuwa muhimu kwa faili.
  • Vijipicha (contentHints.thumbnail): Hifadhi hutengeneza vijipicha vya aina nyingi, lakini kwa miundo ambayo haitoi kiotomatiki, unaweza kupakia yako unapounda au kusasisha faili. Lazima uweke picha kuwa URL-safe base64 na mimeType inayolingana. Sheria muhimu: Miundo inayotumika ni PNG, GIF, au JPG; upana unaopendekezwa ni 1600px (kiwango cha chini cha 220px), na ukubwa wa juu zaidi ni 2MB. Vijipicha ni batili wakati maudhui ya faili yanabadilika; mabadiliko ya metadata hayafanyi.
  • Ufikiaji wa vijipicha: Sehemu ya Kiungo cha Picha hurejesha URL fupi, inayoweza kufikiwa tu ikiwa programu ina ruhusa ya kusoma faili (ikiwa haipo hadharani, utahitaji kuiomba kwa kutumia vitambulisho). Unaweza kuiuliza kwa faili maalum au kwa orodha iliyochujwa kwa aina.
  • Lebo: Hifadhi hukuruhusu kuhusisha lebo na faili. Ili kuzipata, unaweza kutumia files.listLabels, na ili kuzirekebisha, lazima urejelee Id sambamba na fileId. Utaratibu huu ni muhimu kwa kuainisha na, ikiwa ni lazima, "kusafisha" uainishaji usiohitajika bila kugusa maudhui.
Maudhui ya kipekee - Bofya Hapa  Gemini 2.5 Pro sasa hailipishwi: Hivi ndivyo muundo wa AI wa kina wa Google unavyofanya kazi.
futa metadata katika Hifadhi ya Google
Futa metadata katika Hifadhi ya Google

Futa metadata katika Hifadhi ya Google: metadata "iliyofichwa" kutoka kwa faili yenyewe

Hakuna kitufe cha ajabu cha kuondoa metadata katika Hifadhi ya Google (kama vile EXIF ​​​​katika picha au data iliyopachikwa katika PDFs). Hifadhi hudhibiti metadata yake yenyewe, lakini metadata iliyo ndani ya faili inategemea zana iliyoiunda.

Mazoezi yaliyopendekezwa ni safisha faili kabla ya kuipakia kwenye Hifadhi, Kutumia zana za mfumo au programu maalum zinazoondoa data ya EXIF ​​​​ kutoka kwa picha au sifa za hati. Kwa njia hii, maudhui unayohifadhi katika Hifadhi yanafika "yamesafishwa."

Ikiwa tayari una faili zilizopakiwa na metadata iliyopachikwa, badala ya kuondoa metadata kwenye Hifadhi ya Google, ni rahisi zaidi. pakua, safi na upakie upya, kuchukua nafasi ya asili ikiwa inafaa. Kwa PDF au picha, hii ni kawaida unapotaka kulinda uandishi, eneo, au historia ya uhariri.

Kwa sehemu mahususi ya Hifadhi, kuzingatia kurekebisha jina, lebo na Vidokezo vya yaliyomo (indexableText/kijipicha), ambazo ziko chini ya udhibiti wako. Ikiwa unadhibiti pia ruhusa za ufikiaji, pia unapunguza udhihirisho wa metadata inayoonekana (kwa mfano, viungo vya vijipicha vinavyoweza kufikiwa na wale walio na haki za kusoma).

Usisahau hiyo Kubadilisha metadata ya Hifadhi pekee hakuondoi EXIF ​​​​ au sifa za ndani. Kwa hivyo, mkakati wako unapaswa kuchanganya kusafisha faili mapema na usimamizi mzuri wa metadata ambao Hifadhi ya Google hukuruhusu kugusa.

Metadata inayochanganyikiwa kwa kawaida katika Wingu la Google: VM, gcloud, na mipaka

Ukifanya kazi na Google Cloud, utaona nyingi miongozo kuhusu "metadata" ambayo inarejelea Injini ya Kuhesabu au Hifadhi ya Wingu, si Hifadhi. Hata hivyo, utataka kujua pointi hizi ili usizichanganye unapotafiti.

Usanidi wa msingi wa gcloud CLI

Baada ya kusakinisha Google Cloud CLI, anzisha na:

gcloud init

Ni muhimu kuhakikisha kuwa una toleo jipya zaidi na:

gcloud components update

Ikiwa unatumia mtoa huduma za utambulisho wa nje, Ingia ukitumia kitambulisho chako cha shirikisho kabla ya kufanya kazi na gcloud, haswa ikiwa utathibitisha kupiga simu za REST kutoka kwa mazingira yako ya karibu. Sampuli za REST API zinaweza kutumia kitambulisho ambacho umesanidi kwenye gcloud.

VM

Ruhusa na majukumu (Compute Engine): Ili kuongeza, kusasisha, au kufuta metadata maalum kwenye VM, unahitaji ruhusa zinazofaa za IAM. Mifano ya kawaida ni pamoja na:

  • Ikiwa VM zako zitatumia akaunti za huduma: ruhusa iam.serviceAccounts.actAs katika akaunti ya huduma au mradi.
  • Metadata ya mradi: compute.projects.get y compute.projects.setCommonInstanceMetadata.
  • Metadata ya eneo: compute.instanceSettings.get y compute.instanceSettings.update kwa eneo husika.
  • Metadata ya tukio: compute.instances.get y compute.instances.setMetadata.

Mapungufu

Haya ndiyo vikwazo vikuu tulivyokumbana nayo wakati wa kujaribu kuondoa metadata katika Hifadhi ya Google:

  • Vizuizi vya Ukubwa (Injini ya Kukokotoa): Jumla ya maingizo ya metadata yaliyounganishwa yamewekwa katika 512 KB. Kila ufunguo ni mdogo kwa baiti 128, na kila thamani ni mdogo kwa 256 KB. Ikiwa, kwa mfano, unatumia kitufe cha ssh-funguo na kuzidi kikomo cha KB 256, hutaweza kuongeza funguo zaidi hadi utakaposafisha.
  • Kesi kubwa na ndogo: Funguo ni nyeti kwa kesi; maadili ni pia, isipokuwa kwa Booleans. Katika ukanda, huwezi kuunda vitufe viwili ambavyo vinatofautiana tu ikiwa (zonal-metadata-key vs. ZONAL-METADATA-KEY).
  • Metadata ya eneo: zimewekwa au kuondolewa kwa kutumia gcloud au REST. Huwezi kufafanua thamani za eneo kwa vitufe vya SSH (vifunguo vya ssh). Katika mradi/ saraka ya kimantiki, ikiwa kuna viwango vya kiwango cha mradi na ukanda kwa ufunguo sawa, thamani ya ukanda inachukua nafasi ya kwanza katika ukanda wake.
  • Maadili ya boolean yanayotumika: Mbali na TRUE/FALSE, unaweza kutumia Y/Ndiyo/1 na N/No/0 (haijalishi kesi).
  • Mawanda ya Usanidi (Compute Engine):
    • Mradi: metadata ya kawaida kwa VM zote kwenye mradi.
    • Eneo: maingizo yanayoathiri VM zote katika eneo fulani na yanaweza kubatilisha thamani ya mradi.
    • Mfano: metadata ya VM maalum (inaundwa au tayari iko).
Maudhui ya kipekee - Bofya Hapa  Jinsi ya kujiondoa kutoka kwa darasa la Google

Metadata katika Wingu la Google

Vijipicha, uwekaji faharasa na urejeshaji wa metadata katika Hifadhi (REST na mbinu bora)

Hebu sasa tuangalie jukumu la vijipicha wakati wa kuondoa metadata katika Hifadhi ya Google. Na pia njia bora ya kuwaokoa:

  • Uthibitishaji wa REST kwenye majengo: Ikiwa unajaribu mifano ya REST kutoka kwa mashine yako, tumia vitambulisho vilivyowekwa na gcloud. Kwa njia hii, simu zako za API za Hifadhi zitaheshimu utambulisho na ruhusa ambazo tayari umeweka.
  • Upakiaji wa kijipicha maalum: weka contentHints.thumbnail na sehemu mbili: picha ya URL-safe base64 na mimeType sahihi. Ikiwa Hifadhi ya Google inaweza kutengeneza kijipicha kiotomatiki, itatumia chake na kuruka chako. Vinginevyo, itatumia ile unayotoa.

Sheria muhimu za vijipicha katika Hifadhi:

  • Miundo: PNG, GIF au JPG.
  • Upana unaopendekezwa: px 1600 (angalau 220 px).
  • Ukubwa wa juu zaidi: 2MB.
  • Sasisha kijipicha kwa kila hifadhi ikiwa bado ni muhimu.

Muhimu kuhusu kubatilisha: Vijipicha ni batili wakati maudhui ya faili yanabadilishwa; mabadiliko ya metadata hayafanyiki. Ukibadilisha tu lebo au jina, usitarajie kijipicha kipya isipokuwa urekebishe faili.

Maandishi yanayoweza kuorodheshwa

Usijaribu "kupumbaza" utafutaji na buzzwords. Nasa dhana na masharti ambayo mtumiaji angetafuta faili hiyo kwa njia inayofaa, na angalia kikomo cha KB 128. Isasishe wakati wowote maudhui yanapobadilika sana.

Tumia majina na viendelezi thabitiInapowezekana, jumuisha kiendelezi katika jina wakati wa kupakia; ikiwa haipo, Hifadhi itajaribu kuibainisha kwa MIME. Kuweka majina wazi kutaepusha utata na kuruhusu utafutaji wa ugani kwa urahisi.

Lebo katika Hifadhi

Ili kurekebisha lebo, kumbuka vitambulisho vinavyohitajika. Utahitaji kitambulisho cha lebo na kitambulisho cha faili. Unaweza kwanza kuziorodhesha na files.listLabels kisha utumie mabadiliko yanayolingana kwenye faili lengwa.

// Al modificar etiquetas de un archivo en Drive:
// - labelId: identificador de la etiqueta a cambiar
// - fileId: identificador del archivo al que aplicas la etiqueta
// Usa files.listLabels para localizarlas antes de actualizar.

Kumbuka kwamba, Ingawa Hifadhi ndiyo inayolengwa, maendeleo mengi yanachanganya Hifadhi na Hifadhi ya Wingu au huduma zingine, Kwa hivyo utaona mifano ya Hifadhi kukagua sifa za kitu.

// Ejemplo en Go para obtener atributos de un objeto en Cloud Storage (no Drive)
// e imprimir metadatos como ContentType, CacheControl, MD5, etc.
// Útil si tu flujo sube primero a Storage y luego a Drive.
import (
  "context"
  "fmt"
  "io"
  "time"
  "cloud.google.com/go/storage"
)

func getMetadata(w io.Writer, bucket, object string) (*storage.ObjectAttrs, error) {
  ctx := context.Background()
  client, err := storage.NewClient(ctx)
  if err != nil { return nil, fmt.Errorf("storage.NewClient: %w", err) }
  defer client.Close()

  ctx, cancel := context.WithTimeout(ctx, 10*time.Second)
  defer cancel()

  o := client.Bucket(bucket).Object(object)
  attrs, err := o.Attrs(ctx)
  if err != nil { return nil, fmt.Errorf("Object(%q).Attrs: %w", object, err) }

  fmt.Fprintf(w, "Bucket: %v\n", attrs.Bucket)
  fmt.Fprintf(w, "CacheControl: %v\n", attrs.CacheControl)
  fmt.Fprintf(w, "ContentDisposition: %v\n", attrs.ContentDisposition)
  fmt.Fprintf(w, "ContentEncoding: %v\n", attrs.ContentEncoding)
  fmt.Fprintf(w, "ContentLanguage: %v\n", attrs.ContentLanguage)
  fmt.Fprintf(w, "ContentType: %v\n", attrs.ContentType)
  fmt.Fprintf(w, "Crc32c: %v\n", attrs.CRC32C)
  fmt.Fprintf(w, "Generation: %v\n", attrs.Generation)
  fmt.Fprintf(w, "KmsKeyName: %v\n", attrs.KMSKeyName)
  fmt.Fprintf(w, "Md5Hash: %v\n", attrs.MD5)
  fmt.Fprintf(w, "MediaLink: %v\n", attrs.MediaLink)
  fmt.Fprintf(w, "Metageneration: %v\n", attrs.Metageneration)
  fmt.Fprintf(w, "Name: %v\n", attrs.Name)
  fmt.Fprintf(w, "Size: %v\n", attrs.Size)
  fmt.Fprintf(w, "StorageClass: %v\n", attrs.StorageClass)
  fmt.Fprintf(w, "TimeCreated: %v\n", attrs.Created)
  fmt.Fprintf(w, "Updated: %v\n", attrs.Updated)
  fmt.Fprintf(w, "Event-based hold enabled? %t\n", attrs.EventBasedHold)
  fmt.Fprintf(w, "Temporary hold enabled? %t\n", attrs.TemporaryHold)
  fmt.Fprintf(w, "Retention expiration time %v\n", attrs.RetentionExpirationTime)
  fmt.Fprintf(w, "Custom time %v\n", attrs.CustomTime)
  fmt.Fprintf(w, "Retention: %+v\n", attrs.Retention)
  fmt.Fprintf(w, "\n\nMetadata\n")
  for key, value := range attrs.Metadata {
    fmt.Fprintf(w, "\t%v = %v\n", key, value)
  }
  return attrs, nil
}

Kufuta faili dhidi ya kufuta metadata katika Hifadhi ya Google

Ikiwa unachotaka ni futa faili kutoka kwa HifadhiKama mmiliki, unaweza kuihamisha hadi kwenye tupio kutoka kwa wavuti kwa kubofya kulia na kuchagua Hamisha hadi kwenye Tupio. Ikiwa mmiliki ni mtu mwingine, unaweza tu "Ondoa" faili kutoka kwa mtazamo wako; wengine bado wataweza kuiona.

Maudhui ya kipekee - Bofya Hapa  Jinsi ya kupata Picha za Google kutoka Instagram

kwa Ili kufuta faili kabisa, lazima uifute tupio au utumie chaguo la kufuta kabisa, Katika kesi hii, hutaweza kuirejesha. Hii yenyewe, "haiondoi metadata" kutoka kwa faili zingine - inatumika kwa kipengee hicho pekee.

Huwezi kufuta metadata katika Hifadhi ya Google kutoka kwa faili ambazo humiliki, kwa sababu udhibiti wao ni wa mtu aliyeziunda au za mtu aliye na vibali vya juu zaidi ndani ya shirika. Katika hali hizi, unaondoa tu ufikiaji au mwonekano wako.

Inahusiana na metadata: Kufuta faili kunafuta metadata yake katika Hifadhi pamoja nayo, lakini haiathiri metadata katika nakala zingine au metadata iliyopachikwa katika hati zingine ambazo zimesalia kwenye mfumo.

Pamoja na yote hapo juu, sasa unaweza kutofautisha vizuri Ni vidhibiti gani vya Hifadhi ya metadata (jina, lebo, vidokezo vya utafutaji na vijipicha), jinsi ya kuziuliza kupitia REST, mbinu gani bora za kufuata za kusafisha data iliyopachikwa kabla ya kupakia, na ni vikwazo na ruhusa gani zinazotumika unapokumbana na hati za Wingu la Google zinazozungumza kuhusu "metadata" katika miktadha mingine.