دوشنبه 5 ژوئن 2023
صادرات انبوه اطلاعات کنسول جستجو روشی قدرتمند برای دریافت داده های عملکرد جستجوی وب سایت شما به BigQuery است تا قابلیت های ذخیره سازی، تجزیه و تحلیل و گزارش را افزایش دهد. به عنوان مثال، پس از صادرات دادهها، میتوانید پرس و جو و خوشهبندی URL را انجام دهید، تجزیه و تحلیلهایی را روی عبارتهای جستجوی طولانی انجام دهید و جستجو را به منابع داده دیگر ملحق کنید. همچنین می توانید انتخاب کنید که داده ها را تا زمانی که به آن نیاز دارید حفظ کنید.
هنگام استفاده از صادرات انبوه داده، تصمیم گیری آگاهانه هنگام مدیریت هزینه های پردازش و ذخیره سازی داده مهم است. هیچ هزینه ای با کنسول جستجو برای صادر کردن داده ها وجود ندارد. با این حال، قیمت BigQuery را بخوانید تا بفهمید برای چه چیزی از شما صورتحساب دریافت می شود. در این پست، نکاتی را مورد بحث قرار میدهیم که به شما کمک میکند از دادههای جدید بدون متحمل شدن هزینههای قابلتوجه استفاده کنید.
اگر هنوز صادرات انبوه داده را راهاندازی نکردهاید، راهنمای گام به گام مرکز راهنمای کنسول جستجو را بررسی کنید. برای مروری بر دادههای موجود از طریق صادرات، ویدیوی تعبیهشده در اینجا را بررسی کنید.
هشدارها و محدودیت های صورتحساب ایجاد کنید
وقتی هزینههای خود را در نظر میگیرید، ممکن است فکر کنید که چقدر مایل به خرج کردن هستید. پاسخ به این سؤال احتمالاً بین ذخیره سازی، تجزیه و تحلیل و نظارت متفاوت است. به عنوان مثال، ممکن است بخواهید مبلغ مشخصی را بپردازید تا مطمئن شوید که تمام داده های خود را ذخیره می کنید، اما کمتر برای ایجاد یک پلت فرم گزارش. در حالی که در مورد آن فکر می کنید، ممکن است بخواهید یک بودجه ماهانه برای سرمایه گذاری در داده های جستجو تعیین کنید.
هنگامی که یک مقدار بودجه در ذهن دارید، می توانید یک هشدار بودجه Google Cloud ایجاد کنید تا از غافلگیری در صورت حساب خود جلوگیری کنید. همچنین میتوانید قوانین آستانهای تنظیم کنید که اعلانهای ایمیل را هنگامی که به سمت مبلغ بودجه خود پیش میروید، راهاندازی میکنند.
برای محافظت بیشتر، میتوانید تعداد بایتهای صورتحساب برای یک درخواست را نیز محدود کنید. اگر این کار را انجام دهید، تعداد بایت هایی که پرس و جو می خواند قبل از اجرای پرس و جو تخمین زده می شود. اگر تعداد بایت های تخمین زده شده فراتر از حد باشد، پرس و جو بدون تحمیل هزینه با شکست مواجه می شود.
داشبوردها را مستقیماً روی داده های خام ایجاد نکنید
BigQuery سریع است و وسوسه انگیز است که داشبورد خود را مستقیماً به جداول صادر شده از کنسول جستجو پیوند دهید. اما برای سایت های بزرگ، این مجموعه داده بسیار بزرگ است (مخصوصاً با پرس و جوهای بیش از حد). اگر داشبوردی بسازید که اطلاعات خلاصه هر نما را مجدداً محاسبه کند و آن را در شرکت شما به اشتراک بگذارد، به سرعت هزینه های پرس و جو زیادی را به همراه خواهد داشت.
برای جلوگیری از این هزینهها، دادهها را از هر قطره روزانه جمعآوری کنید و یک یا چند جدول خلاصه را عملی کنید. سپس داشبورد شما میتواند جدول سریهای زمانی بسیار کوچکتری را جستجو کند و هزینههای پردازش را کاهش دهد.
عملکرد جستجوهای زمانبندی را در BigQuery بررسی کنید، یا اگر راهحل خودکارتری میخواهید، BI Engine را در نظر بگیرید.
بهینه سازی هزینه های ذخیره سازی داده ها
وقتی صادرات انبوه داده را شروع میکنید، بهطور پیشفرض، دادهها برای همیشه در مجموعه داده BigQuery شما نگهداری میشوند. با این حال، میتوانید زمانهای انقضای پارتیشن پیشفرض را بهروزرسانی کنید تا پارتیشنهای تاریخ بهطور خودکار پس از یک سال یا ۱۶ ماه یا هر مدت زمانی که میخواهید حذف شوند.
داده های صادر شده می تواند برای شما ارزشمند باشد، اما می تواند بسیار بزرگ باشد. از دانش کسب و کار خود استفاده کنید و در نظر داشته باشید که آن را به اندازه کافی برای تجزیه و تحلیل عمیق حفظ کنید، اما نه آنقدر طولانی که به یک بار سنگین تبدیل شود. یکی از گزینه ها این است که یک نسخه نمونه از جداول قدیمی را نگه دارید و در عین حال کل جدول تاریخ های اخیر را حفظ کنید.
پرس و جوهای SQL خود را بهینه کنید
هنگام جستجوی داده های کنسول جستجو، باید مطمئن شوید که پرس و جوهای شما برای عملکرد بهینه شده اند. اگر در BigQuery تازه کار هستید، دستورالعمل ها و نمونه سوالات را در مرکز راهنمایی بررسی کنید. سه تکنیک وجود دارد که باید امتحان کنید.
1. اسکن ورودی را محدود کنید
اول از همه از مصرف خودداری کنید SELECT *
، این گرانترین راه برای جستجوی داده ها است، BigQuery یک اسکن کامل از هر ستون در جدول را انجام می دهد. اعمال الف LIMIT
بند انجام می دهد نه بر میزان داده های خوانده شده تأثیر می گذارد.
از آنجایی که جداول صادر شده بر اساس تاریخ پارتیشن بندی شده اند، می توانید اسکن ورودی را فقط به روزهای مورد علاقه محدود کنید، به خصوص زمانی که در حال آزمایش و بازی با داده ها هستید. استفاده از a WHERE
بند برای محدود کردن محدوده تاریخ در جدول تقسیم شده تاریخ، این امر باعث صرفه جویی قابل توجهی در هزینه پرس و جو می شود. به عنوان مثال، شما می توانید فقط به ۱۴ روز گذشته با استفاده از بند زیر نگاه کنید:
WHERE data_date between DATE_SUB(CURRENT_DATE(), INTERVAL 14 day)
برای هر درخواستی که می کنید، می خواهید هر فیلتر شناخته شده ای را در اسرع وقت معرفی کنید تا اسکن ورودی را کاهش دهید. به عنوان مثال، اگر در حال تجزیه و تحلیل پرس و جو هستید، احتمالاً می خواهید ردیف های جستجوهای ناشناس را فیلتر کنید. یک پرس و جو ناشناس به عنوان یک رشته با طول صفر در جدول گزارش می شود. برای این کار می توانید موارد زیر را اضافه کنید:
WHERE query != ''
2. داده ها را نمونه برداری کنید
BigQuery یک قابلیت نمونه برداری از جدول را فراهم می کند که به شما امکان می دهد زیر مجموعه های تصادفی داده ها را از جداول بزرگ BigQuery جستجو کنید. نمونه برداری سوابق مختلفی را برمی گرداند در حالی که از هزینه های مربوط به اسکن و پردازش کل جدول جلوگیری می کند، و به ویژه در هنگام توسعه پرس و جوها یا زمانی که به نتایج دقیق نیاز نیست مفید است.
3. از توابع تقریبی در جایی که به نتایج دقیق نیاز نیست استفاده کنید
BigQuery از تعدادی توابع تجمع تقریبی پشتیبانی می کند که نتایج تخمینی را ارائه می دهد و محاسبه آن بسیار ارزان تر از همتایان دقیق خود است. به عنوان مثال، اگر به دنبال URL های برتر با نمایش در برخی شرایط هستید، می توانید از آن استفاده کنید
SELECT APPROX_TOP_SUM(url, impressions, 10) WHERE datadate=...;
بجای
SELECT url, SUM(impressions) WHERE datadate=... GROUP BY url ORDER BY 2 DESC LIMIT 10;
منابع
اینها فقط چند نکته هستند که می توانید برای شروع مدیریت هزینه های خود از آنها استفاده کنید، برای کسب اطلاعات بیشتر، بهترین شیوه های بهینه سازی هزینه را برای BigQuery بررسی کنید.
و مانند همیشه، اگر سؤال یا نگرانی دارید، لطفاً از طریق انجمن مرکزی جستجوی Google یا در اینجا با ما در میان بگذارید توییتر.