۲۹ شهریور ۱۴۰۳

Techboy

اخبار و اطلاعات روز تکنولوژی

نحوه انتخاب انبار داده ابری

انبارهای داده مدرن می توانند داده های ساختار یافته و داده های نیمه ساختار یافته را به طور همزمان جستجو کنند و حتی داده های تاریخی و جریان داده های زنده را برای تجزیه و تحلیل ترکیب کنند.

انبارهای داده مدرن می توانند داده های ساختار یافته و داده های نیمه ساختار یافته را به طور همزمان جستجو کنند و حتی داده های تاریخی و جریان داده های زنده را برای تجزیه و تحلیل ترکیب کنند.

انبارهای داده سازمانی یا EDW، پایگاه‌های داده‌ای یکپارچه برای همه داده‌های تاریخی در سراسر یک شرکت هستند که برای تجزیه و تحلیل بهینه شده‌اند. این روزها، سازمان‌هایی که انبارهای داده را پیاده‌سازی می‌کنند، اغلب به فکر ایجاد انبار داده در فضای ابری هستند تا در محل. بسیاری همچنین در نظر دارند از دریاچه های داده که از پرس و جوها پشتیبانی می کنند به جای انبارهای داده سنتی استفاده کنند. سوال سوم این است که آیا می‌خواهید داده‌های تاریخی را با جریان داده‌های زنده ترکیب کنید.

یک انبار داده یک پایگاه داده تحلیلی، معمولاً رابطه‌ای است که از دو یا چند منبع داده ایجاد می‌شود، معمولاً برای ذخیره داده‌های تاریخی، که ممکن است مقیاس پتابایت داشته باشند. انبارهای داده اغلب دارای منابع محاسباتی و حافظه قابل توجهی برای اجرای پرس و جوهای پیچیده و تولید گزارش هستند و اغلب منابع داده برای هوش تجاری (BI) سیستم ها و یادگیری ماشینی.

نیازمندی‌های توان عملیاتی نوشتن پایگاه‌های داده عملیاتی، تعداد و نوع نمایه‌هایی را که می‌توانید ایجاد کنید محدود می‌کند (نمایه‌های بیشتر به معنای نوشتن و به‌روزرسانی‌های بیشتر در هر رکورد اضافه‌شده، و اختلاف احتمالی بیشتر است). این به نوبه خود سرعت جستجوهای تحلیلی در برابر پایگاه داده عملیات را کاهش می دهد. هنگامی که داده‌های خود را به انبار داده صادر کردید، می‌توانید هر چیزی را که در انبار داده به آن اهمیت می‌دهید برای عملکرد جستجوی تحلیلی خوب، بدون تأثیر بر عملکرد نوشتن پایگاه داده جداگانه OLTP (پردازش تراکنش آنلاین) فهرست‌بندی کنید.

داده‌مارت‌ها حاوی داده‌هایی هستند که به سمت یک خط کسب‌وکار مشخص هستند. داده‌ها ممکن است وابسته به انبار داده، مستقل از انبار داده (یعنی از یک پایگاه داده عملیاتی یا منبع خارجی) یا ترکیبی از این دو باشند.

دریاچه‌های داده، که فایل‌های داده را در قالب اصلی خود ذخیره می‌کنند، اساساً «شما در خواندن» هستند، به این معنی که هر برنامه‌ای که داده‌ها را از دریاچه می‌خواند، باید انواع و روابط خود را بر داده‌ها تحمیل کند. از سوی دیگر، انبارهای داده سنتی “شما در نوشتن” هستند، به این معنی که انواع داده ها، شاخص ها و روابط زمانی که در انبار داده ذخیره می شوند بر روی داده ها تحمیل می شوند.

انبارهای داده مدرن اغلب می‌توانند داده‌های ساختاریافته و داده‌های نیمه ساختاریافته را مدیریت کرده و به طور همزمان از آنها پرس و جو کنند. علاوه بر این، انبارهای داده مدرن اغلب می‌توانند داده‌های تاریخی و جریان داده‌های اخیر را به طور همزمان جستجو کنند.

انبارهای داده ابری در مقابل انبارهای داده اولیه

انبار داده را می توان در محل، در فضای ابری یا به صورت ترکیبی پیاده سازی کرد. از لحاظ تاریخی، انبارهای داده همیشه به صورت اولیه بودند، اما هزینه سرمایه و عدم مقیاس پذیری سرورهای اولیه در مراکز داده گاهی اوقات مشکل بود. هنگامی که فروشندگان شروع به ارائه لوازم انبار داده کردند، نصب های اولیه EDW رشد کردند. با این حال، اکنون روند این است که تمام یا بخشی از انبار داده خود را به ابر منتقل کنید تا از مقیاس پذیری ذاتی انبارهای داده ابری و سهولت اتصال به سایر خدمات ابری استفاده کنید.

عیب قرار دادن پتابایت داده در فضای ابری هزینه عملیاتی است، هم برای ذخیره سازی داده های ابری و هم برای محاسبات انبار داده ابری و منابع حافظه. ممکن است فکر کنید زمان آپلود پتابایت داده در فضای ابری مانع بزرگی خواهد بود، اما فروشندگان ابر مقیاس ابر اکنون خدمات انتقال داده با ظرفیت بالا و مبتنی بر دیسک را ارائه می دهند.

الزامات سرعت و مقیاس پذیری

انبارهای داده طوری طراحی شده اند که پرس و جوهای تحلیلی بتوانند سریع اجرا شوند. برای انبارهای داده قدیمی اولیه، گزارش‌هایی با چندین پرس‌وجو براساس داده‌های تاریخی معمولاً یک شبه اجرا می‌شوند. برای انبارهای داده ابری مدرن، الزامات عملکرد سخت‌تر است، زیرا تحلیلگران انتظار دارند پرس‌و‌جوهایی را بر اساس داده‌های جریانی و تاریخی به صورت تعاملی اجرا کنند، و سپس با جستارهای بیشتر جستجو کنند.

اجازه ندهید کلمات کلیدی معماری ابر شما را هدایت کنند

انبارهای داده ابری معمولاً به گونه‌ای طراحی می‌شوند که ظرفیت CPU را در صورت نیاز مقیاس‌بندی کنند، به طوری که پرس‌وجوهای تعاملی در برابر پتابایت داده می‌توانند در عرض چند دقیقه پاسخ را برگردانند. برخی از انبارهای داده ابری می توانند منابع CPU را در حالی که یک پرس و جو در حال اجراست بدون راه اندازی مجدد پرس و جو افزایش دهند و زمانی که انبار داده بیکار است دوباره آنها را کاهش دهند. افزایش مقیاس و کاهش مقیاس تهاجمی می تواند استراتژی خوبی برای به دست آوردن عملکرد بالا در صورت نیاز با هزینه کلی پایین باشد.

فضای ذخیره سازی ستونی در مقابل ردیف

پایگاه‌های اطلاعاتی ردیف‌گرا داده‌ها را بر اساس رکورد سازماندهی می‌کنند و معمولاً سعی می‌کنند یک ردیف پایگاه داده را در یک بلوک ذخیره‌سازی ذخیره کنند، به طوری که کل ردیف را بتوان با یک عملیات خواندن بازیابی کرد. پایگاه داده های ردیف گرا برای خواندن و نوشتن ردیف ها کارآمد هستند. بیشتر پایگاه‌های داده تراکنشی ردیف‌گرا هستند و از شاخص‌های درختی b استفاده می‌کنند.

پایگاه های داده ستون محور داده ها را بر اساس فیلد سازماندهی می کنند و سعی می کنند همه داده های مرتبط با یک فیلد را با هم ذخیره کنند. پایگاه داده های ستونی برای خواندن و محاسبه بر روی ستون ها کارآمد هستند. اکثر انبارهای داده داده ها را در ستون ها ذخیره می کنند، داده های خود را به شدت فشرده می کنند و از شاخص های درخت LSM استفاده می کنند. مقاله اصلی که C-Store را توصیف می کند، یک پایگاه داده ستون محور بهینه شده برای خواندن ، در سال ۲۰۰۵ منتشر شد. مقاله C-Store پایه و اساس اکثر انبارهای داده ستونی مدرن از جمله Amazon Redshift، Google BigQuery و Snowflake را ایجاد کرد.

برخی پایگاه داده ها فضای ذخیره سازی ردیفی و ستونی را ترکیب می کنند. آنها از ذخیره سازی ردیف برای OLTP و از ذخیره سازی ستونی برای پرس و جوهای تحلیلی استفاده می کنند. چند پایگاه داده می‌توانند داده‌ها را در فضای ذخیره‌سازی ستونی و ذخیره‌سازی ردیفی با هم جست‌وجو کنند، که در جایی که همه فیلدها نمی‌توانند در فضای ذخیره‌سازی ستونی قرار بگیرند، سرعت جستجوها را افزایش می‌دهد.

ذخیره سازی در حافظه و ذخیره سازی لایه ای

چه چیزی سریعتر از ذخیره ستونی فشرده روی دیسک است؟ ذخیره ستونی فشرده در حافظه. چه چیزی می تواند داده های بیشتری را نسبت به ذخیره ستونی در حافظه مدیریت کند؟ یک سیستم ذخیره سازی لایه ای که حافظه را با PMEM پشتیبان می کند، مانند Intel Optane که سریعتر از فلش و ارزانتر از DRAM است. لایه های اضافی فلش و دیسک های چرخان هستند. بخش سخت طرحی مانند این، اجرای حافظه پنهان چند سطحی بدون کاهش سرعت بازیابی یا اجازه دادن به شستشوی غیر ضروری حافظه پنهان در لایه‌های سریع‌تر است.

ETL در مقابل ELT

ابزارهای ETL (استخراج، تبدیل و بارگذاری) داده‌ها را می‌کشند، نگاشت‌ها و تبدیل‌های دلخواه را انجام می‌دهند و داده‌ها را در لایه ذخیره‌سازی داده‌ها بارگذاری می‌کنند. ابزارهای ELT ابتدا داده ها را ذخیره می کنند و بعداً تبدیل می شوند. هنگامی که از ابزارهای ELT استفاده می کنید، معمول است که از دریاچه داده نیز استفاده کنید.

انبار داده های ابری خوشه ای و توزیع شده

از آنجایی که انبارهای داده پایگاه‌های اطلاعاتی عمدتا خواندنی هستند، خوشه‌بندی آن‌ها آسان‌تر از خوشه‌بندی پایگاه‌های داده OLTP است. همچنین توزیع انبارهای داده به صورت جغرافیایی بدون ایجاد تأخیر زیاد در نوشتن آسان تر است. هنگامی که انبار داده شما دارای معماری خوشه‌ای است، اضافه کردن گره‌ها به خوشه برای افزایش ظرفیت پردازش و بازگشت سریع‌تر نتایج آسان است.

Cloud UI برای سرپرست و پرسش‌ها

تقریباً هر انبار داده ابری رابط کاربری خاص خود را برای مدیریت و پرس و جو دارد. برخی از آنها بیشتر از بقیه قابل استفاده هستند. مدیریت ساده تر از ایجاد پرس و جو است. افزودن یک گره (یا تنظیم حداکثر تعداد گره برای مقیاس خودکار) می تواند به آسانی فشار دادن یک دکمه باشد. برخی از انبارهای داده ابری یک سازنده پرس و جو گرافیکی ارائه می دهند که برای مبتدیان SQL مفید است. بسیاری از انبارهای داده ابری یک صفحه تاریخچه برای پرس و جوهای گذشته و پاسخ های آنها ارائه می دهند.

ارزیابی پایگاه های داده برای داده های حسگر

انبار داده های ابری کلیدی

۱۳ محصول فهرست شده در زیر بر اساس حروف الفبا یا انبارهای داده ابری هستند، یا عملکرد انبارهای داده را در حالی که بر اساس معماری پایه متفاوتی ساخته می شوند، مانند دریاچه های داده، ارائه می دهند. می‌توانید استدلال کنید که Ahana، Delta Lake، و Qubole به جای اینکه به‌عنوان انبار داده شروع شوند، بر روی دریاچه‌های داده ساخته شده‌اند، اما همچنین می‌توانید استدلال کنید که آنها عملکردی مشابه انبارهای داده بدون تردید مانند AWS Redshift، Azure Synapse و Google BigQuery دارند. . از آنجایی که همه این محصولات موتورهای جستجوی فدرال ناهمگن را اضافه می کنند، تمایز عملکردی بین دریاچه های داده و انبارهای داده محو می شود.

Ahana Cloud برای Presto

Ahana Cloud for Presto یک دریاچه داده در آمازون S3 را بدون جابجایی داده‌ای به انبار داده تبدیل می‌کند. . پرس‌وجوهای SQL به سرعت اجرا می‌شوند حتی در صورت پیوستن به چندین منبع داده ناهمگن.

Presto یک موتور جستجوی SQL منبع باز و توزیع شده برای اجرای پرس و جوهای تحلیلی تعاملی در برابر منابع داده در هر اندازه است. Presto امکان جستجوی داده‌ها را در جایی که در آن زندگی می‌کند، از جمله Hive، Cassandra، پایگاه‌های داده رابطه‌ای و ذخیره‌های داده اختصاصی را می‌دهد. یک کوئری Presto می تواند داده ها را از چندین منبع ترکیب کند. فیس بوک از Presto برای پرس و جوهای تعاملی در برابر چندین فروشگاه داده داخلی، از جمله انبار داده ۳۰۰ PB آنها استفاده می کند.

Ahana Cloud for Presto در آمازون اجرا می‌شود، رابط کاربری نسبتاً ساده‌ای دارد و دارای مدیریت چرخه عمر خوشه انتها به انتها است. در Kubernetes اجرا می شود و بسیار مقیاس پذیر است. دارای کاتالوگ داخلی و ادغام آسان با منابع داده، کاتالوگ ها و ابزارهای داشبورد است. رابط پیش فرض پرس و جو Ahana Apache Superset است. همچنین می‌توانید از نوت‌بوک‌های Jupyter یا Zeppelin استفاده کنید، به‌خصوص اگر در حال انجام یادگیری ماشینی هستید.
Ahana ادعا می‌کند که عملکرد ۳ برابری نسبت به سایر سرویس‌های Presto، از جمله Amazon Elastic MapReduce و Amazon Athena دارد.

Amazon Redshift

با استفاده از Amazon Redshift می‌توانید با استفاده از SQL استاندارد، پرس و جو و ترکیب اگزابایت داده‌های ساختاریافته و نیمه‌ساختار یافته در انبار داده، پایگاه داده عملیاتی و دریاچه داده خود را انجام دهید. Redshift به شما امکان می دهد به راحتی نتایج جستجوهای خود را با استفاده از قالب های باز مانند Apache Parquet در دریاچه داده S3 خود ذخیره کنید تا بتوانید تجزیه و تحلیل های اضافی را از سایر سرویس های تحلیلی مانند Amazon EMR، Amazon Athena و Amazon SageMaker انجام دهید.

Azure Synapse Analytics

Azure Synapse Analytics یک سرویس تحلیلی است که داده ها را گرد هم می آورد یکپارچه سازی، انبار داده و تجزیه و تحلیل داده های بزرگ. این به شما امکان می‌دهد داده‌ها را برای نیازهای فوری BI و یادگیری ماشین دریافت، کاوش، آماده‌سازی، مدیریت و ارائه کنید، و داده‌ها را با استفاده از منابع بدون سرور یا اختصاصی در مقیاس جستجو کنید. Azure Synapse می تواند پرس و جوها را با استفاده از موتورهای Spark یا SQL اجرا کند. دارای یکپارچگی عمیق با یادگیری ماشینی Azure، خدمات شناختی Azure، و Power BI است.

دریاچه دلتا دیتابریکس

طراحی شده توسط Databricks، دریاچه دلتا یک پروژه منبع باز است که امکان ساخت معماری “Lakehouse” را در بالای معماری موجود فراهم می کند. سیستم های ذخیره سازی مانند Amazon S3، Microsoft Azure Data Lake Storage، Google Cloud Storage و HDFS. تراکنش‌های ACID، مدیریت ابرداده، نسخه‌سازی داده‌ها، اجرای طرح‌واره، و تکامل طرح‌واره را به دریاچه‌های داده اضافه می‌کند. پلتفرم Databricks Lakehouse از Delta Lake، Spark و MLflow در یک سرویس ابری استفاده می‌کند که روی AWS، Microsoft Azure و Google Cloud اجرا می‌شود تا مدیریت داده و عملکرد را که معمولاً در انبارهای داده یافت می‌شود با فروشگاه‌های شی کم‌هزینه و انعطاف‌پذیر ارائه شده توسط داده‌ها ترکیب کند. دریاچه ها.

تجسم Hacker News API با HCL و SQL

Google BigQuery

Google BigQuery یک انبار داده ابری بدون سرور، در مقیاس پتابایت با موتور BI داخلی، داخلی است. یادگیری ماشینی قابل دسترسی از طریق برنامه‌های افزودنی SQL، و ادغام در همه سرویس‌های Google Cloud از جمله Vertex AI و TensorFlow. BigQuery Omni BigQuery را برای تجزیه و تحلیل داده ها در ابرها با استفاده از Anthos گسترش می دهد. Data QnA یک زبان طبیعی برای BigQuery فراهم می کند. کاربرگ‌نگار متصل به کاربران اجازه می‌دهد میلیاردها ردیف داده BigQuery را در کاربرگ‌نگار Google تجزیه و تحلیل کنند. BigQuery می‌تواند درخواست‌های فدرال‌شده از جمله منابع داده خارجی در ذخیره‌سازی شی (Google Cloud Storage) برای قالب‌های فایل پارکت و ORC (ستون ردیف بهینه)، پایگاه‌های داده تراکنشی (Google Cloud Bigtable، Google Cloud SQL) یا صفحات گسترده در Google Drive را پردازش کند.

Oracle Autonomous Data Warehouse

Oracle Autonomous Data Warehouse یک سرویس انبار داده ابری است که تهیه، پیکربندی، ایمن سازی، تنظیم، مقیاس بندی و پشتیبان گیری از انبار داده را خودکار می کند. این شامل ابزارهایی برای بارگیری داده‌های خودسرویس، تبدیل داده‌ها، مدل‌های کسب‌وکار، بینش خودکار، و قابلیت‌های داخلی پایگاه داده همگرا می‌شود که پرس‌و‌جوهای ساده‌تر را در انواع داده‌های متعدد و تجزیه و تحلیل یادگیری ماشینی امکان‌پذیر می‌سازد. هم در ابر عمومی Oracle و هم در مراکز داده مشتریان با Oracle Cloud@Customer در دسترس است.

Qubole

Qubole یک پلت فرم دریاچه داده ساده، باز و ایمن برای یادگیری ماشینی، پخش جریانی و موقت است. تجزیه و تحلیل. این در ابرهای AWS، Azure، Google و Oracle در دسترس است. Qubole به شما کمک می کند تا مجموعه داده ها را از یک دریاچه داده دریافت کنید، طرحواره هایی را با Hive بسازید، داده ها را با Hive، Presto، Quantum یا Spark جستجو کنید و به مهندسی داده و علم داده خود ادامه دهید. می‌توانید با داده‌های Qubole در نوت‌بوک‌های Zeppelin یا Jupyter و گردش‌های کاری Airflow کار کنید.

راکت

Rockset یک پایگاه داده تحلیلی عملیاتی است. جایگاهی بین پایگاه های داده تراکنش و انبارهای داده اشغال می کند. Rockset می‌تواند گیگابایت تا ترابایت داده‌های اخیر، بلادرنگ و جریانی را تجزیه و تحلیل کند و دارای شاخص‌هایی است که اکثر درخواست‌ها را در میلی‌ثانیه اجرا می‌کند. Rockset یک شاخص همگرا بر روی داده های ساختاریافته و نیمه ساختار یافته از پایگاه داده ها، جریان ها و دریاچه های داده OLTP در زمان واقعی ایجاد می کند و یک رابط RESTful SQL را در معرض نمایش قرار می دهد.

دانه برف

Snowflake یک انبار داده سازمانی با مقیاس پذیری پویا است که برای ابر طراحی شده است. این بر روی AWS، Azure و Google Cloud اجرا می شود. Snowflake دارای لایه‌های ذخیره‌سازی، محاسباتی و سرویس‌های جهانی است که از نظر فیزیکی از هم جدا شده‌اند، اما از نظر منطقی یکپارچه شده‌اند. حجم کاری داده ها به طور مستقل از یکدیگر مقیاس می شوند و Snowflake را به پلتفرمی مناسب برای انبار داده، دریاچه های داده، مهندسی داده، علم داده، اشتراک گذاری داده های مدرن و توسعه برنامه های کاربردی داده تبدیل می کنند.

Teradata Vantage

Teradata Vantage یک پلت فرم داده چند ابری متصل برای تجزیه و تحلیل سازمانی است که دریاچه های داده، انبارهای داده، تجزیه و تحلیل، و منابع و انواع داده های جدید. Vantage روی ابرهای عمومی (مانند AWS، Azure، و Google Cloud)، محیط‌های چند ابری ترکیبی، در محل با Teradata IntelliFlex یا روی سخت‌افزار کالا با VMware اجرا می‌شود.

Vertica