ናብ መኽዘን ኣቕሑ ምስዳድ

ንነፍሲ ወከፍ ዝተፈጸመ ዕላማ ሓደ ኣቕሓ JSON፣ ኣብ ናትኩም መትሓዚ። እዚ ናብ ነፍሲ ወከፍ BigQuery ዘይኮነ መኽዘን ሓበሬታ ዝወስድ መንገዲ እዩ።

1. እዚ ዝመልኦ ክፍተት

ክሳዕ ሕጂ ካብ MousePlayer ናብ መኽዘን ሓበሬታ ሓደ ጥራይ መንገዲ ነይሩ፣ ንሱ ድማ ናብ Google ይወስድ ነይሩ። Snowflake፣ Redshift ወይ ClickHouse እንተተጠቒምኩም፣ መንገዲ ኣይነበረን፤ ሰለስቲኦም ግን ካብ መኽዘን ኣቕሑ ብዘይ ጸገም የንብቡ።

ስለዚ እቲ ድልድል ናብ ነፍሲ ወከፍ መኽዘን ሓበሬታ በብተራ ኣብ ክንዲ ምጽሓፍ፣ ናብ መኽዘን ኣቕሑ ይጽሕፍ። Snowflake ካብ S3 ይወስድ፣ Redshift ካብ S3 ይወስድ፣ ClickHouse ካብ S3 ይወስድ፣ BigQuery ድማ ካብ Google Cloud Storage ይወስድ። ሓደ ምስዳድ ናብ ኩሎም ይበጽሕ።

ኣበይብኸመይ ከም ዝብጻሕ
Amazon S3Signature Version 4፣ መትሓዚ ኣብ ኣሳሳዪ
Cloudflare R2Signature Version 4 ናብ ናይ ሕሳብኩም መወዳእታ ነጥቢ
Google Cloud Storageብናቱ ምስ S3 ዝሰማማዕ API፣ ብመፍትሒ HMAC
MinIO፣ Wasabi፣ Backblaze B2 ከምኡውን ካልኦትSignature Version 4 ናብ መወዳእታ ነጥብኹም
Azure Blob Storageናይ መትሓዚ SAS መላግቦ፤ ኣብ ወገንና ምኽታም ፈጺሙ የለን

2. ስለምንታይ Azure ፍሉይ እዩ፣ እዚ ድማ ስለምንታይ ዝሓሸ እዩ

Azure Blob ብ Signature Version 4 ኣይሰርሕን፣ ብ SharedKey እዩ ዝፍርም። ካልኣይ ኣገባብ ምኽታም ክንሃንጽ ምኸኣልና። ኣብ ክንዳኡ እቲ ድልድል ነዚ ይቕበል፦ ናይ መትሓዚ SAS መላግቦ ፤ ኣብ ናትኩም ሕሳብ ምዕቃብ እትፈጥሩዎ URL፣ እቲ ክታም ድሮ ኣብ ውሽጡ ኣሎ።

እዚ ኣብ ወገንና ዝወሓደ ኮድ፣ ኣብ ወገንኩም ድማ ዝወሓደ እምነት ይሓትት። መፍትሒ ሕሳብ ፈጺምና ኣይንርእን፤ እትህቡና ባዕልኹም ዘወሰንኩሞ ፍቓድ እዩ፣ ንሓደ መትሓዚ፣ ንስኹም ዝመረጽኩሞ መወዳእታ ግዜ ዘለዎ፣ ካልእ ከይተንከፍኩም ኣብ ዝኾነ ግዜ ክትስርዙዎ እትኽእሉ።

ኣብ ወገን S3 እውን ተመሳሳሊ ወሰን ምግባር ይጠቅም፤ ነቲ መፍትሒ መእተዊ ናብዚ ጥራይ ክጽሕፍ ፍቓድ ሃቡዎ፦ እዚ ሓደ ቅድመ ቃል ከምኡውን ካልእ ኣይትፍቀዱ። ናብዚ ጥራይ ክውስኽ ዝኽእል መፍትሒ mouseplayer/goals/ እንተለሓኸ እውን ካልኦት መትሓዚታትኩም ከንብብ ኣይክእልን።

3. ንነፍሲ ወከፍ ዕላማ ሓደ ኣቕሓ፣ እቲ መፍትሒ ድማ ዕለት እዩ

መኽዘን ኣቕሑ ኣብ መወዳእታ ናይ ምውሳኽ ዓቕሚ የብሉን። መዓልታዊ ፋይል ኣብ ነፍሲ ወከፍ ግዜ ምሉእ እንደገና ክጸሓፍ ምነበሮ፣ ክልተ ዕላማታት ብሓንሳብ እንተበጺሖም ድማ ንሓድሕዶም ምተካኽኡ። ስለዚ ነፍሲ ወከፍ ዝተፈጸመ ዕላማ ናቱ ኣቕሓ ይኸውን።

ዋጋኡ ብዙሓት ንኣሽቱ ኣቕሑ እዩ፤ ኣቃውማ መፍትሒ ግን ነዚ ክሰርሕ የኽእሎ፦

prefix/YYYY/MM/DD/channel/session-goal.json

መኽዘን ሓበሬታ ሓንቲ መዓልቲ ከም ሓደ ክፋል የንብብ፣ ቀዳማይ ሓበሬታ መሊስካ ምምላእ ድማ ብሕቶ ዘይኮነ ብቅድመ ቃል ምርመራ ይኸውን። ብዕለት ኣብ ክንዲ ምክፋል ብፕሮጀክት ክትከፍሉ እንተደሊኹም፣ ID ቻነል ኣብቲ ቅድመ ቃል ኣእትዉ።

ነፍሲ ወከፍ ኣቕሓ ሓደ መስመር JSON እዩ

ብዕላማ ውሽጣዊ ርሕቀት ኣይተዋህቦን፣ ስለዚ ኣቕሑ በብሓደ ከይከፈትኩም ምሉእ ቅድመ ቃል ከም NDJSON ይንበብ። ማሕተም ግዜ፣ ፕሮጀክት፣ ክፍለ ግዜ፣ ID ዓሚል፣ ዕላማ፣ ዋጋ፣ ባጤራን ነቲ ቅዳሕ ዘርኢ መላግቦን።

ጥራይ ዋጋ null እዩ፣ ዜሮ ኣይኮነን

ገንዘባዊ ዋጋ ዘይብሉ ዕላማ ነዚ ይጽሕፍ፦ null። ኣብ መኽዘን ሓበሬታ ዜሮ ኣብ ፈጺሙ ዘይነበረ ድምር ምተደመረ፤ ፍልልይ «ዝተሰማማዕናሉ መጠን የለን» ከምኡውን «መጠኑ ዜሮ እዩ» ድሕሪ ምስዳድ ይዕቀብ።

4. 403 እንተመሊሱ፣ ቅድም ነዚ ኣንብቡ

ዝተነጽገ ሕቶ S3 ዳርጋ ዋላ ሓንቲ ኣይነግርን፣ ኣብ መዝገብና ዘሎ መልእኽቲ ስሕተት ካብ S3 ዝያዳ ዝነግር ምኽንያት ኣለዎ፦ እቲ ዞባ ኣብቲ ክታም ይኣቱ። ጌጋ ዞባን ጌጋ መፍትሕን ተመሳሳሊ 403 ይመልሱ፣ ስለዚ እቲ ብቐጥታ እትጥርጥሩዎ መፍትሒ ኣብ ፍርቂ ኩነታት ጥራይ ትኽክል እዩ።

በዚ ቅደም ተኸተል ክትምርምሩዎም ዘለኩም ሰለስተ ነገራት፦

  • እቲ ዞባ፣ ልክዕ ከምቲ መትሓዚ ዝሕብሮ። R2 ከምኡውን Google Cloud Storage ነዚ ይቕበሉ፦ auto ከምኡውን ኣይምርምሩዎን፣ ካልኦት ኩሎም ግን ይምርምሩዎ።
  • ፍቓድ ቅድመ ቃል። ናብዚ ዝተወሰነ መፍትሒ mouseplayer/ ናብዚ ክጽሕፍ ኣይክእልን፦ mouseplayer-goals/ ፤ ኣብ ARN ጸጋ እቲ ኣብ መወዳእታ ዘሎ ሰያፍ መስመር ኣገዳሲ እዩ።
  • እቲ መወዳእታ ነጥቢ፣ ን R2 ከምኡውን ምስ S3 ዝሰማማዑ መኽዘናት። ነቲ ኣሳሳዪ ብዘይ እዚ ለጥፉ፦ https://፤ ብዝኾነ ንእልዮ ኢና፣ ግን ዝተወሰኸሉ መንገዲ ካልእ መትሓዚ እዩ።

ID መፍትሒ መእተዊ ብዕላማ ብንጹር ጽሑፍ ይዕቀብ። ብኣቃውማኡ ኣብ ነፍሲ ወከፍ ዝተኸተመ ሕቶ ይለኣኽ፣ ስለዚ ምምስጣሩ ሓለዋ ዘይብሉ ጻዕሪ ምኾነ። እቲ ምስጢር ይምስጠር፣ እንደገና ኣይርአን፣ ነቲ ዕማም ናብ ዝስከም ውሽጣዊ መስርዕ ድማ ፈጺሙ ኣይኣቱን።

ኣብዚ ዝተጠቕሱ ኩሎም ንግዳዊ ምልክታት ናይ ዝምልከቶም ወነንቲ እዮም። MousePlayer ምስዞም ኣቕረብቲ ንግዳዊ ርክብ የብሉን።