#مطلب
HBase Deprecation at Pinterest
در سالهای اخیر HBase نقش کلیدی و جدی توی زیرساخت Pinterest داشته و بسیاری از سرویسهای پینترست بر مبنای HBase بنا شده بوده. برای مثال پینترست بر روی Hbase دیتابیس Zen رو ساخته بوده که دادههای گرافی رو نگه میداره، از OpenTSDB که باز یه دیتابیس رو HBase هست برای نگهداری دادههای TimeSeries استفاده میکرده و ...
اما اخیرا یه پستی توی بلاگ فنیشون گذاشتن که قراره HBase رو بازنشسته کنن و به جاش مهاجرت کنن به دیتابیسهای جدیدتر. قرارشده دادههای OLAP رو به Druid/Starrocks و دادههای KeyValue رو به KVStore و دادههای گرافی رو به Goku منتقل کنن(دوتای آخری دیتابیسهای درونی خود پینترست هست).
و برای باقی نیازمندیهاشون قراره دادههای Hbase رو مهاجرت بدن به یه NewSQL به اسم TiDB.
دلیلی که دارن HBase رو بازنشسته میکنن هزینهی زیاد نگهداری، کمبود امکانات لازم ( مثل Secondary Index و distributed transactions) و کوچیکشدن کامیونیتی و پیدانشدن نیروهای expert هست(qoute پایین از مقاله در همین مورد جالبه).
لینک مقالات:
Part1: HBase Deprecation at Pinterest
Part2: TiDB Adoption at Pinterest
Part3: Structured DataStore (SDS): Multi-model Data Management With a Unified Serving Stack
Online Data Migration from HBase to TiDB with Zero Downtime
✴️ @software_inside - مهندسینرمافزار
HBase Deprecation at Pinterest
در سالهای اخیر HBase نقش کلیدی و جدی توی زیرساخت Pinterest داشته و بسیاری از سرویسهای پینترست بر مبنای HBase بنا شده بوده. برای مثال پینترست بر روی Hbase دیتابیس Zen رو ساخته بوده که دادههای گرافی رو نگه میداره، از OpenTSDB که باز یه دیتابیس رو HBase هست برای نگهداری دادههای TimeSeries استفاده میکرده و ...
اما اخیرا یه پستی توی بلاگ فنیشون گذاشتن که قراره HBase رو بازنشسته کنن و به جاش مهاجرت کنن به دیتابیسهای جدیدتر. قرارشده دادههای OLAP رو به Druid/Starrocks و دادههای KeyValue رو به KVStore و دادههای گرافی رو به Goku منتقل کنن(دوتای آخری دیتابیسهای درونی خود پینترست هست).
و برای باقی نیازمندیهاشون قراره دادههای Hbase رو مهاجرت بدن به یه NewSQL به اسم TiDB.
دلیلی که دارن HBase رو بازنشسته میکنن هزینهی زیاد نگهداری، کمبود امکانات لازم ( مثل Secondary Index و distributed transactions) و کوچیکشدن کامیونیتی و پیدانشدن نیروهای expert هست(qoute پایین از مقاله در همین مورد جالبه).
For the past few years, we have seen a seemingly steady decline in HBase usage and community activity in the industry, as many peer companies were looking for better alternatives to replace HBase in their production environments. This in turn has led to a shrinking talent pool, higher barrier to entry, and lower incentive for new engineers to become a subject matter expert of HBase.
لینک مقالات:
Part1: HBase Deprecation at Pinterest
Part2: TiDB Adoption at Pinterest
Part3: Structured DataStore (SDS): Multi-model Data Management With a Unified Serving Stack
Online Data Migration from HBase to TiDB with Zero Downtime
✴️ @software_inside - مهندسینرمافزار
Medium
HBase Deprecation at Pinterest
Alberto Ordonez Pereira | Senior Staff Software Engineer; Lianghong Xu | Senior Manager, Engineering;
👍2
#بازی
https://www.sqlnoir.com/
یه بازی باحال که شما در نقش کارآگاه هستید و با زدن SQL query و گشتن توی جدولهای دیتابیس باید معماها رو حل کنید.
برای تقویت raw sql زدن خوبه.
https://www.sqlnoir.com/
یه بازی باحال که شما در نقش کارآگاه هستید و با زدن SQL query و گشتن توی جدولهای دیتابیس باید معماها رو حل کنید.
برای تقویت raw sql زدن خوبه.
Sqlnoir
SQL Noir - Interactive SQL Game | Learn SQL by Solving Crimes
Master SQL with SQL Noir - the interactive SQL game where you solve crimes using database queries. Perfect SQL game for beginners and experts alike.
🔥5
#ابزار
برای اینکه متوجه بشیم یه کوئری روی دیتابیس چطوری داره اجرا میشه یا چرا کنده معمولا از اون کوئری explain میگیریم و سعی میکنیم از روی خروجی explain این چیزا رو متوجه بشیم.
متاسفانه خوندن خروجی خام این دستور مخصوصا وقتی پارامترهایی مثل analyze یا buffer و ... رو استفاده کردیم خیلی کار سادهای نیست و خروجیش ممکنه خیلی بزرگ بشه. برای مثال یه نمونه از خروجی خام رو توی عکسها میبینید.
https://explain.dalibo.com
https://explain.depesz.com/
دوتا سایت بالا با گرفتن خروجی explain، گزارشهای خوبی تولید میکنه و باعث میشه راحتتر متوجه بشیم چه اتفاقی داره میافته. مخصوصا سایت اولی که به صورت گرافیکی نمودار میکشه و interactive هم هست.
برای اینکه متوجه بشیم یه کوئری روی دیتابیس چطوری داره اجرا میشه یا چرا کنده معمولا از اون کوئری explain میگیریم و سعی میکنیم از روی خروجی explain این چیزا رو متوجه بشیم.
متاسفانه خوندن خروجی خام این دستور مخصوصا وقتی پارامترهایی مثل analyze یا buffer و ... رو استفاده کردیم خیلی کار سادهای نیست و خروجیش ممکنه خیلی بزرگ بشه. برای مثال یه نمونه از خروجی خام رو توی عکسها میبینید.
https://explain.dalibo.com
https://explain.depesz.com/
دوتا سایت بالا با گرفتن خروجی explain، گزارشهای خوبی تولید میکنه و باعث میشه راحتتر متوجه بشیم چه اتفاقی داره میافته. مخصوصا سایت اولی که به صورت گرافیکی نمودار میکشه و interactive هم هست.
👌3
مهندسی نرمافزار - Software Inside
#ابزار برای اینکه متوجه بشیم یه کوئری روی دیتابیس چطوری داره اجرا میشه یا چرا کنده معمولا از اون کوئری explain میگیریم و سعی میکنیم از روی خروجی explain این چیزا رو متوجه بشیم. متاسفانه خوندن خروجی خام این دستور مخصوصا وقتی پارامترهایی مثل analyze یا buffer…
#مقاله #بلاگ #postgres
Explaining the unexplainable
اون فردی که ابزار دومی توی پست بالا رو ساخته، یه وبلاگ فنی خیلی خوب هم داره که به صورت تخصصی در مورد Postgres مینویسه و کلی مطلب خفن داره. یکی از مطالبش که به نظرم خیلی خوب بود مجموعه پستهایی تحت عنوان «Explaining the unexplainable» هست که میاد از ابتدا شروع میکنه و توضیح میده که دستور EXPLAIN توی پستگرس چیه و چطوری کار میکنه و تا سطح پیشرفته پیش میره.
برای کسایی که میخوان tune کردن کوئریها و اپتیمایز کردن رو یاد بگیرن خیلی مفید میتونه باشه. کلا 6 بخش ازش منتشر شده که از طریق صفحهی پایین میتونید پیداشون کنید:
https://www.depesz.com/tag/unexplainable/
✴️ @software_inside - مهندسینرمافزار
Explaining the unexplainable
اون فردی که ابزار دومی توی پست بالا رو ساخته، یه وبلاگ فنی خیلی خوب هم داره که به صورت تخصصی در مورد Postgres مینویسه و کلی مطلب خفن داره. یکی از مطالبش که به نظرم خیلی خوب بود مجموعه پستهایی تحت عنوان «Explaining the unexplainable» هست که میاد از ابتدا شروع میکنه و توضیح میده که دستور EXPLAIN توی پستگرس چیه و چطوری کار میکنه و تا سطح پیشرفته پیش میره.
برای کسایی که میخوان tune کردن کوئریها و اپتیمایز کردن رو یاد بگیرن خیلی مفید میتونه باشه. کلا 6 بخش ازش منتشر شده که از طریق صفحهی پایین میتونید پیداشون کنید:
https://www.depesz.com/tag/unexplainable/
✴️ @software_inside - مهندسینرمافزار
🤯3
#معرفی #serialization
MsgPack: It's like JSON but fast and small.
یه فرمت کمتر شناخته شدهای وجود داره به اسم MsgPack که بعضا توی طراحی سیستمها به کار میاد.
این فرمت شبیه به JSON هست و بدون Schema کار میکنه. دوتا مزیت داره: یکی اینکه حجمش کمتره و compact تر هست و مزیت بزرگ دومش اینه که به صورت binary هست و برخلاف JSON لازم نیست حتما دادهها UTF8 باشن و decode شده باشن. همین قضیه باعث میشه که سرعت serialize شدنش بیشتر باشه و داده های خام رو هم میتونیم باهاش جابجا کنیم. برای دید بهتر به عکس بالا توجه کنید. بدیش اینه که human-readable نیست.
این فرمت توی تکنولوژیهایی مثل redis یا fluentd هم استفاده میشه و جاهایی که انعطاف برامون مهمه و human-readable بودن برامون مهم نیست یا میخوایم دادههای binary و دیکد نشده جابجا کنیم به کار میاد.
❇️ @software_inside
MsgPack: It's like JSON but fast and small.
یه فرمت کمتر شناخته شدهای وجود داره به اسم MsgPack که بعضا توی طراحی سیستمها به کار میاد.
این فرمت شبیه به JSON هست و بدون Schema کار میکنه. دوتا مزیت داره: یکی اینکه حجمش کمتره و compact تر هست و مزیت بزرگ دومش اینه که به صورت binary هست و برخلاف JSON لازم نیست حتما دادهها UTF8 باشن و decode شده باشن. همین قضیه باعث میشه که سرعت serialize شدنش بیشتر باشه و داده های خام رو هم میتونیم باهاش جابجا کنیم. برای دید بهتر به عکس بالا توجه کنید. بدیش اینه که human-readable نیست.
این فرمت توی تکنولوژیهایی مثل redis یا fluentd هم استفاده میشه و جاهایی که انعطاف برامون مهمه و human-readable بودن برامون مهم نیست یا میخوایم دادههای binary و دیکد نشده جابجا کنیم به کار میاد.
❇️ @software_inside
👍6
#مطلب
What I Wish I Knew About Onboarding Effectively
https://eugeneyan.com/writing/onboarding/
زمانی که شرکتتون رو عوض میکنید و وارد یه شرکت جدید میشید باید یه فرایندی طی بشه تا شما با اون شرکت، کدهاش و فرهنگش آشنا بشید. به این فرایند میگن آنبوردینگ.
مطلب بالا نکات خیلی خوبی در همین مورد بیان میکنه که باعث میشه این فرایند رو بهتر بتونیم طی کنیم و توی شرکت جدید بهتر جا بیافتیم. اگر دارید آنبورد میشید یا قراره یه نفر دیگه رو آنبورد کنید این مطلب به شدت پیشنهاد میشه.
✴️ @software_inside - مهندسینرمافزار
What I Wish I Knew About Onboarding Effectively
https://eugeneyan.com/writing/onboarding/
زمانی که شرکتتون رو عوض میکنید و وارد یه شرکت جدید میشید باید یه فرایندی طی بشه تا شما با اون شرکت، کدهاش و فرهنگش آشنا بشید. به این فرایند میگن آنبوردینگ.
مطلب بالا نکات خیلی خوبی در همین مورد بیان میکنه که باعث میشه این فرایند رو بهتر بتونیم طی کنیم و توی شرکت جدید بهتر جا بیافتیم. اگر دارید آنبورد میشید یا قراره یه نفر دیگه رو آنبورد کنید این مطلب به شدت پیشنهاد میشه.
✴️ @software_inside - مهندسینرمافزار
eugeneyan.com
What I Wish I Knew About Onboarding Effectively
Mindset, 100-day plan, and balancing learning and taking action to earn trust.
👏2👌2❤1