با توجه به اینکه هزینه Google BigQuery کاملا بر اساس میزان مصرف شما محاسبه میشود، در هنگام برآورد هزینهها، عمدتا فقط سه جنبه اصلی در مورد ذخیره سازی دادههای BigQuery خود باید در نظر بگیرید: ذخیره سازی داده (Storage Data)، ذخیره سازی بلندمدت داده (Long Term Storage Data) و پردازش کوئری (Query Data Usage). صفحه رسمی هزینه بیگ کوئری شامل جزئیات و اطلاعات مفید بسیار بیشتری است که حتما باید آن را بررسی کنید، در این راهنما به طور خلاصه هر یک از این سه عنصر قیمت گذاری را برای برآورد هزینه های ماهانه خود بررسی خواهیم کرد.
برای خرید دوره 9 ساعته آموزش بیگ کوئری، روی لینک کلیک کنید و فرم موجود را تکمیل کنید. در سریع ترین زمان ممکن به شما تماس میگیرم 🙂
تاثیر هزینه ذخیره سازی بر قیمت استفاده از BigQuery
هزینههای ذخیره سازی معمولا به صورت ماهانه برای دادههایی که در جداول یا پارتیشنهای BigQuery ذخیره شدهاند و فعال هستند، محاسبه میشود. منظور از دادههای فعال، دادههایی است که در 90 روز گذشته تغییر کردهاند. اگر در 90 روز گذشته هیچ تغییری در جداول یا پارتیشنهای BigQuery خود ایجاد نکردهاید، میتوانید با کاهش 50 درصدی هزینه ها، همچنان داده های خود را در انبار داده بیگ کوئری داشته باشید.
هنگام استفاده از API های ذخیره سازی BigQuery، بسته به حجم دادههای ورودی ممکن است نیاز به پرداخت هزینه باشد. در این صورت هزینه هر 200 مگابایت داده ورودی که با موفقیت در بیگ کوئری ذخیره می شود، 0.01 دلار است.
تاثیر هزینه کوئری بر قیمت هزینه استفاده از بیگ کوئری
در حالت قیمت گذاری بر اساس میزان مصرف (On-Demand Pricing)، هزینه بر اساس حجم داده پردازش شده کوئریهایتان محاسبه میشود. برای کوئریهای ناموفق یا کوئریهایی که از حافظه کش بارگذاری شدهاند، هزینه پرداخت نمیکنید. علاوه بر این، اولین 1 ترابایت داده کوئری پردازش شده در هر ماه رایگان است. همچنین، قیمتها بر اساس منطقه جغرافیایی که هنگام ساخت پروژه در بیگ کوئری تعیین کرده اید، متفاوت است.
به عنوان مثال، انتخاب بمبئی (asia-south1) به عنوان مکان ذخیره سازی 0.023 دلار به ازای هر گیگابایت هزینه از شما دریافت میکند، در حالی که با انتخاب ایالات متحده (چند منطقه ای) (ایالات متحده) یا اتحادیه اروپا (چند منطقه) (اروپا) 0.02 دلار به ازای هر گیگابایت باید هزینه پرداخت کنید.
در حالت قیمت گذاری با نرخ ثابت (Flat-Rate Pricing)، بدون توجه به حجم داده پردازش شده توسط کوئریهایتان، هزینه ثابتی را پرداخت میکنید. این گزینه قیمتی برای مشتریانی ایدهآل است که به هزینه ماهانه قابل پیش بینی با بودجه مشخص نیاز دارند. برای بهره مندی از قیمت گذاری با نرخ ثابت، باید اسلاتهای BigQuery را خریداری کنید که در ادامه به بررسی آن خواهیم پرداخت.
هزینه ذخیره سازی داده در بیگ کوئری چقدر است؟
هزینه ذخیره سازی به فضایی که برای نگهداری اطلاعات خود در BigQuery نیاز دارید اشاره دارد. شما برای هر دو نوع ذخیره سازی فعال و بلندمدت هزینه پرداخت می کنید.
ذخیره سازی فعال: هر جدول یا پارتیشنی از یک جدول که در 90 روز گذشته به روز شده باشد، ذخیره سازی فعال در نظر گرفته می شود. در حال حاضر، BigQuery برای ذخیره سازی فعال، هزینه ماهانه ثابتی معادل 0.02 دلار به ازای هر گیبی بایت در ماه دریافت می کند. هزینه ذخیره سازی فیزیکی فعال نیز 0.04 دلار به ازای هر گیگابایت در ماه است. 10 گیبی بایت اولیه هر ماه رایگان است. بنابراین، اگر یک جدول 200 گیبی بایتی را برای یک ماه نگه داریم، هزینه آن (200 * 0.02) = 4 دلار خواهد بود.
توجه: با احتساب 10 گیگابایت رایگان هر ماه، کاربر با 4 دلار مجموعا 210 گیگابایت دریافت خواهد کرد.
برای مثال، ذخیره سازی بلندمدت یک جدول 200 گیبی بایتی برای یک ماه (200 * 0.01) = 2 دلار هزینه خواهد داشت. اگر جدول به روز شود، به ذخیره سازی فعال تبدیل می شود و دوره 90 روزه مجددا از ابتدا شروع می شود.
ذخیره سازی بلندمدت: هر جدول یا پارتیشنی از یک جدول که در 90 روز گذشته به روز نشده باشد، ذخیره سازی بلندمدت در نظر گرفته می شود. پس از 90 روز، قیمت داده های ذخیره سازی 50 درصد کاهش می یابد. هزینه ذخیره سازی منطقی بلندمدت 0.01 دلار به ازای هر گیگابایت در ماه است. هزینه ذخیره سازی فیزیکی بلندمدت، بیشتر بوده و 0.02 دلار به ازای هر گیگابایت در ماه است. 10 گیگابایت اولیه هر ماه رایگان است.برای مثال، ذخیره سازی بلندمدت یک جدول 200 گیبی بایتی برای یک ماه (200 * 0.01) = 2 دلار هزینه خواهد داشت. اگر جدول به روز شود، به ذخیره سازی فعال تبدیل می شود و دوره 90 روزه مجددا از ابتدا شروع می شود.
برای مثال، ذخیره سازی بلندمدت یک جدول 200 گیبی بایتی برای یک ماه (200 * 0.01) = 2 دلار هزینه خواهد داشت. اگر جدول به روز شود، به ذخیره سازی فعال تبدیل می شود و دوره 90 روزه مجددا از ابتدا شروع می شود.
1 گیبی بایت (gibibyte) معادل 1.1 گیگابایت (gigabyte)
عملکرد، پایداری داده و دسترسی در هر دو نوع ذخیره سازی فعال و بلندمدت یکسان است.
هزینه BigQuery به ازای هر ۱ ترابایت
حجم دادههای ذخیره شده و دادههای پردازش شده توسط کوئریهای شما بر حسب گیبیبایت (GiB) اندازهگیری میشود. اگر هزینه هر گیگابایت فضای ذخیرهسازی ۰.۰۲ دلار باشد و ۱ ترابایت تقریباً معادل ۱,۰۰۰ گیگابایت (۹۳۱.۳۲۳) باشد، در این صورت هزینه ۱ ترابایت ۲۰ دلار خواهد بود.
برای محاسبه هزینه ۵ ترابایت، به سادگی مقدار داده را در ۱۰۰۰ (برای تبدیل به گیبیبایت) ضرب میکنیم، سپس حاصل را در ۰.۰۲ دلار به ازای هر گیگابایت ضرب میکنیم.
۵ ترابایت * ۱۰۰۰ = ۵,۰۰۰ گیبیبایت
۵,۰۰۰ گیبیبایت * ۰.۰۲ دلار = ۱۰۰ دلار
حجم ذخیره سازی أنواع داده در بیگ کوئری
همانطور که گفته شد، هزینه بر اساس میزان داده ای که در BigQuery قرار می دهید محاسبه می شود. برای تعیین حجم کل داده های خود، باید بدانید که حجم أنواع داده ای که در بیگ کوئری ذخیره می شود، داده چقدر است..در ادامه حجم انواع داده های موجود در BigQuery آورده شده است:
نوع داده | اندازه |
INT64 | 8 بایت |
FLOAT | 8 بایت |
NUMERIC | 16 بایت |
Bool | 1 بایت |
STRING | 2 بایت |
Date | 8 بایت |
Datetime | 8 بایت |
Time | 8 بایت |
Timestamp | 8 بایت |
Interval | 16 بایت |
جدول هزینه ذخیره داده به ازای هر 1 گیگابایت در بیگ کوئری
نوع ذخیره سازی | قیمت | سطح رایگان |
ذخیره سازی منطقی فعال | 0.02 دلار به ازای هر گیگابایت | 10 گیگابایت اول هر ماه رایگان است |
ذخیره سازی فیزیکی فعال | 0.04 دلار به ازای هر گیگابایت | 10 گیگابایت اول هر ماه رایگان است |
ذخیره سازی منطقی بلندمدت | 0.01 دلار به ازای هر گیگابایت | 10 گیگابایت اول هر ماه رایگان است |
ذخیره سازی فیزیکی بلندمدت | 0.02 دلار به ازای هر گیگابایت | 10 گیگابایت اول هر ماه رایگان است |
تحلیل ساختار قیمت گذاری کوئری در Google BigQuery
در BigQuery، از قیمت گذاری تحلیلی برای محاسبه هزینه اجرای کوئریها (شامل کوئریهای SQL، توابع تعریفشده توسط کاربر و اسکریپتها) و همچنین قیمت گذاری ذخیرهسازی برای محاسبه هزینه ذخیره دادههایی که در BigQuery بارگذاری میکنید، استفاده میشود.
BigQuery دو مدل قیمتگذاری مجزا برای انتخاب کاربران هنگام اجرای کوئری ارائه میدهد. این مدل های قیمتی به شرح زیر هستند:
قیمت گذاری بر اساس تقاضا (On-demand pricing)
در قیمتگذاری بر اساس تقاضا، شما بر اساس اندازه هر کوئری و تعداد بایتهایی که توسط هر کوئری مدیریت میشود، هزینه پرداخت میکنید. در صورت عدم اجرای کوئری، هیچ هزینهای از شما دریافت نمیشود. برای تمام کاربران، اولین ترابایت داده کوئری پردازش شده در هر ماه رایگان ارایه میشود.
قیمت گذاری با نرخ ثابت (Flat-rate pricing)
با رویکرد قیمتگذاری با نرخ ثابت، صرف نظر از حجم دادههایی که کوئریهای شما اشغال میکنند، هزینه ثابتی را پرداخت میکنید. این بهترین انتخاب قیمت گذاری برای کاربرانی است که یک هزینه ماهانه ثابت را در محدودیت هزینه تعیین شده میخواهند. دسترسی کاربران به قیمت گذاری با نرخ ثابت با خرید اسلاتهای BigQuery، که اساسا CPUهای مجازی مورد استفاده BigQuery برای اجرای کوئریهای SQL هستند، امکان پذیر است. ظرفیت اسلات اختصاصی که خریداری میکنید، میزان قدرت پردازش اختصاصیافته برای تمام کوئریهای شما در هر زمان خاص را تعیین میکند، نه برای هر کوئری به صورت جداگانه. اگر درخواستهای شما از ظرفیت اختصاصی شما فراتر رود، BigQuery واحدهای کاری را به صف انتظار میفرستد و منتظر میشود تا اسلاتها در دسترس قرار گیرند.با پیشرفت پردازش کوئری و در دسترس قرار گرفتن اسلاتها، واحدهای کاری صف انتظار به صورت پویا برای اجرا انتخاب میشوند و هیچ هزینه اضافی دریافت نمیشود.
اسلاتها در هر دو قیمت گذاری بر اساس تقاضا و با نرخ ثابت استفاده میشوند، اما رویکرد با نرخ ثابت کنترل خاصی بر اسلاتها و ظرفیت تجزیه و تحلیل به شما ارائه میدهد. به عنوان مثال، در قیمت گذاری با نرخ ثابت، میتوانید انتخاب کنید که اسلاتها را برای موارد زیر رزرو کنید:
- ۶۰ ثانیه: اسلاتهای انعطافپذیر
- ماهانه: ۳۰ روز
- سالانه: ۳۶۵ روز
شما همیشه میتوانید این دو مدل را برای برآورده کردن نیازهای خاص خود ترکیب کنید. با قیمت گذاری بر اساس تقاضا، هزینه آنچه مصرف میکنید را پرداخت میکنید، در حالی که با قیمت گذاری با نرخ ثابت، در ازای یک برنامه بلندمدت، ظرفیت تضمین شدهای را با هزینه کمتری دریافت میکنید.
چه عواملی بر هزینه ذخیره داده در بیگ کوئری تاثیر میگذارند؟
هنگام استفاده از BigQuery با GA4، سه نوع هزینه اصلی وجود دارد که ممکن است متحمل شوید: ذخیره سازی، محاسبات و دریافت داده. این ابزار محاسبه بر ارائه تخمین هزینه ذخیره سازی به شما تمرکز دارد، که جزء کلیدی هزینه کلی BigQuery شما خواهد بود.
هزینه ای که برای ذخیره سازی پرداخت می کنید به میزان داده، مدت زمان ذخیره سازی و مکان ذخیره سازی بستگی دارد. 10 گیگابایت اول ذخیره شده در هر ماه رایگان است، بنابراین بسیاری از سایت های کوچک ممکن است اصلاً هزینه ای پرداخت نکنند.
برای مناطق ایالات متحده (ایالات متحده) و اروپا (اتحادیه اروپا) هر گونه داده ای بالاتر از 10 گیگابایت برای هر گیگابایت در ماه برای ذخیره سازی فعال (هر جدولی که در 90 روز گذشته اصلاح شده است) 0.02 دلار یا برای ذخیره سازی بلندمدت (هر جدولی که برای بیش از 90 روز اصلاح نشده است) 0.01 دلار در ماه محاسبه می شود. ممکن است سایر مناطق قیمت گذاری کمی متفاوتی داشته باشند، به عنوان مثال برای منطقه لندن (اروپا-غرب2) قیمت 0.023 دلار در هر گیگابایت در ماه برای فعال و 0.016 دلار در هر گیگابایت در ماه برای ذخیره سازی بلندمدت است. برای مشاهده قیمت فعلی هر منطقه می توانید به اینجا: BigQuery Pricing مراجعه کنید.
میزان داده ای که در BigQuery ذخیره می کنید به تعداد ایونت هایی که توسط پراپرتی GA4 شما جمع آوری می شود و میزان داده ای که با آن ایونت ها جمع آوری می شود بستگی دارد. اگر با هر ایونت پارامترهای زیادی ارسال میکنید یا ایونت های ایکامرسی را با تعداد زیادی آیتم در هر رویداد جمعآوری میکنید، جداول شما بسیار بزرگتر از سایتی خواهند بود که فقط تنظیمات پیاده سازی آنالیتیکس 4 را انجام داده است.
گوگل تخمین می زند که 1 گیگابایت تقریباً معادل 600 هزار رویداد است، اما در بین پراپرتی های مختلف، این رقم از 800 هزار تا 1.6 میلیون متغیر است.
چگونه با استفاده از ماشین حساب هزینه BigQuery، هزینههای خود را برآورد کنیم؟
قیمتگذاری بر اساس تقاضا (On-demand Pricing)
- به صفحه اصلی کنسول BigQuery خود بروید.
- هنگام وارد کردن یک کوئری، اعتبارسنج کوئری (علامت تیک سبز) آن را تأیید میکند و تخمین میزند که چند بایت پردازش کند.
همانطور که در تصویر مشاهده میکنید، این کوئری برای اجرا تقریباً 10.07 MB فضا برای پردازش نیاز دارد.
- گام بعدی دسترسی به ماشین حساب قیمتگذاری GCP است. BigQuery را به عنوان محصول خود و قیمتگذاری بر اساس تقاضا را به عنوان روش قیمتگذاری خود انتخاب کنید. فرم موجود در صفحه را با تمام اطلاعات لازم، همانطور که در تصویر نشان داده شده است، تکمیل کنید.
اگر هنوز ۱ ترابایت رایگان ماهانه خود را تمام نکرده باشید، هزینه اجرای کوئری صفر است. با این حال، اگر نیاز دارید این کوئری را هر روز برای ماه آینده اجرا کنید؛ قطعا مقدار پردازش رایگان هر ماه را رد خواهید کرد و باید هزینه پرداخت کنید. برای محاسبه این هزینه باید مقدار مورد نیاز برای پردازش کوئری را در 30 ضرب کنید.
چگونه هزینه ذخیره سازی و اجرای کوئری در BigQuery را برآورد کنیم؟
برای محاسبه هزینه ذخیره سازی و اجرای کوئری در BigQuery، ابتدا باید اطلاعات لازم برای تخمین هزینه ها را جمع آوری کنیم:
- تعداد کاربران (Number of Users)
- تعداد کوئری در روز (Number of Queries)
- میانگین حجم دیتای مصرفی (Average Data Usage)
به عنوان مثال، فرض کنید 10 کاربر در روز از دیتایی که از آنالیتیکس به بیگ کوئری انتقال داده شده است، استفاده میکنند. به طوری که هر کاربر روزانه پنج کوئری با میانگین مصرف داده 2 گیگابایت برای هر کوئری اجرا می کند. ما هزینه را بر اساس ماه (فرض می کنیم 30 روز) محاسبه می کنیم.
با استفاده از این پارامترها، می توانیم با یک محاسبه ساده، هزینه ماهانه متوسط خود را با BigQuery تخمین بزنیم.
کل حجم کوئری دیتا در ماه:
10 کاربر در روز * 5 کوئری در روز * 2 گیگابایت در کوئری * 30 روز = 3000 گیگابایت = 3 ترابایت
محاسبه هزینه ذخیره سازی BigQuery:
در زمان نگارش این متن، هزینه ذخیره سازی برای 1 ترابایت داده حدود 20 دلار است (قیمت دقیق بستگی به منطقه انتخابی شما دارد). بنابراین، برای به دست آوردن هزینه ذخیره سازی در هر ماه، به سادگی 3 ترابایت را در 20 دلار ضرب می کنیم.
3 ترابایت * 20 دلار در هر ترابایت = 60 دلار
محاسبه هزینه اجرای کوئری بر اساس میزان مصرف (On-Demand):
با استفاده از همان داده های کوئری، قیمت پردازش 1 ترابایت داده 5 دلار است. بنابراین، برای به دست آوردن هزینه اجرای کوئری بر اساس میزان مصرف در هر ماه، به سادگی 3 ترابایت را در 5 دلار ضرب می کنیم.
3 ترابایت * 5 دلار در هر ترابایت = 15 دلار
این قیمت ممکن است کاهش یابد، به شرطی که از 1 ترابایت فضای ذخیره سازی رایگان ماهانه خود استفاده نکرده باشید.
هزینه پردازش 1 ترابایت داده در BigQuery چقدر است؟
برای قیمت گذاری بر اساس میزان مصرف (On-Demand)، هزینه پردازش 1 ترابایت داده 6.25 دلار است.
هزینه اجرای یک کوئری 12 گیگابایتی در BigQuery چقدر است؟
12 گیگابایت تقریباً معادل 0.01288 ترابایت است. از آنجایی که هزینه پردازش 1 ترابایت 6.25 دلار است، هزینه اجرای یک کوئری 12 گیگابایتی به شرح زیر محاسبه می شود:
6.25 دلار در هر ترابایت * 0.01288 ترابایت = 0.08 دلار
هزینه اجرای یک کوئری 100 گیگابایتی در BigQuery چقدر است؟
100 گیگابایت تقریباً معادل 0.107 ترابایت است. برای محاسبه هزینه اجرای یک کوئری 100 گیگابایتی، محاسبه زیر را انجام می دهیم:
6.25 دلار در هر ترابایت * 0.107 ترابایت = 0.66 دلار
آیا استفاده از ویوها (Views) در BigQuery هزینه اضافی دارد؟
خیر. جداول مجازی (Virtual Tables) با استفاده از کوئری های SQL به عنوان ویو تعریف می شوند. به همان روشی که می توانید روی یک کوئری بزنید، می توانید همین کار را با ویوها نیز انجام دهید. ویوها ممکن است فقط داده هایی را از جداول و فیلدهایی ارائه دهند که توسط کاربر هنگام اجرای کوئری درخواست می شود. بنابراین افزودن یا حذف یک ویو هیچ هزینه ای ندارد.
بهینه سازی هزینه BigQuery
به عنوان یک متخصص پرفورمنس مارکتینگ، بهینه سازی هزینه در BigQuery اهمیت زیادی دارد. فرقی نمی کند که داده های خود را از طریق آنالیتیکس 4 یا از Google Sheets وارد BigQuery کنید، رعایت برخی نکات برای بهینه سازی هزینه در BigQuery ضروری است. این موارد عبارتند از:
- *استفاده بهینه از عبارت SELECT : در کوئری های خود از عبارت
SELECT *
کمتر استفاده کنید و فقط اطلاعات مورد نیاز خود را درخواست نمایید. - استفاده از قابلیت پیش نمایش BigQuery: هنگامی که می خواهید نمونه کوچکی از داده های خود را ببینید، به جای اجرای یک کوئری برای مشاهده بخش کوچکی از داده ها، از قابلیت پیش نمایش BigQuery استفاده کنید.
- بررسی هزینه ها قبل از اجرا: قبل از اجرای هر کوئری یا فعالیت ذخیره سازی، با استفاده از ابزار محاسبه گر قیمت GCP (Google Cloud Platform Price Calculator)، هزینه های مرتبط را بررسی کنید.
- تقسیم کوئری به بخش های کوچکتر: اگر قصد دارید روی یک مجموعه داده بزرگ پرس و جو انجام دهید، کوئری خود را به بخش های کوچکتر تقسیم کنید. اجرای تک تک کوئری های کوچکتر بهتر است. این کار باعث کاهش حجم داده هایی که باید خوانده شوند و در نتیجه صرفه جویی در هزینه می شود.