Может ли кто-нибудь объяснить разницу между SQL Server 2019 BDC и Azure Synapse Analytics, кроме различий OLAP и OLTP? Зачем использовать Analytics поверх SQL Server 2019 BDC?
Synapse Analytics против кластера больших данных SQL Server 2019
Ответы (2)
Azure Synapse Analytics - это облачная DWH с тесно интегрированными конструкторами DataLake, ADF и PowerBI. это предложение PaaS, и оно недоступно в локальной среде. Механизм DWH - это MPP с ограниченной поддержкой polybase (DataLake).
он также позволяет ypu при необходимости выделять Apache Spark.
SQLServer 2019 Big Data Cluster - это платформа IaaS, основанная на Kubernetes. он может быть реализован локально на виртуальных машинах, в OpenShift или в любом облаке AKS, если на то пошло).
Его поддержка виртуализации данных очень хороша с поддержкой источников данных ODBC и пула данных для поддержки виртуализации данных, реализованной через Polybase.
Apache Spark составляет основу вычислений для больших данных.
Хотя это не MPP, как Synapse, из-за модулей в Kubernetes несколько модулей могут быть созданы на лету с помощью функций масштабируемости, таких как VMSS ... и т. Д.
Если вам нужны аналитические возможности локально, вы будете использовать SQLServer 2019 BDC, но если вам нужен облачный DWH с функциями аналитических возможностей, вы будете использовать Synapse
объясните разницу между SQL Server 2019 BDC и Azure Synapse Analytics
Сервер - это OLTP, а Synapse - это OLAP. : D
кроме различий OLAP и OLTP? Зачем использовать Analytics поверх SQL Server 2019 BDC?
Чисто с точки зрения терминологии их менеджеры по продукту не понимают, что они делают.
- SQL Server - это DYI / on-prem / управляемая вами БД.
- Версия SQL Server SaaS, полностью управляемая Azure, известна как База данных SQL Azure.
- У них также есть управляемый экземпляр SQL Azure и SQL Server на виртуальной машине Azure.
- Azure Synapse переименован в выделенные пулы SQL.
- Azure Synapse On-Demand переименован в бессерверные пулы SQL.
- Azure Synapse Analytics = выделенный + бессерверный + набор служб машинного обучения.
Я собираюсь ответить, предполагая, что ваш вопрос:
Зачем использовать выделенный или бессерверный Azure Synapse вместо SQL Server?
- SQL Server - это предварительная версия DIY, другая - SaaS, полностью управляемая Azure. С этим связаны все плюсы и минусы SaaS, такие как отсутствие капитальных затрат, отсутствие управления, эластичность, очень большой масштаб, ...
- USP Synapse - это MPP, который SQL Server не имеет. Хотя я вижу, что такие вещи, как Polybase и EXTERNAL TABLES, поддерживаются SQL Server.
- Из-за архитектуры MPP транзакционная производительность Synapse намного хуже (что я видел). Например. Выполнение
INSERT INTO xxx VALUES(...)
для добавления одной строки через JDBC займет около 1-2 секунд по сравнению с 10-12 секундами для импорта файлов CSV с десятками тысяч строк с использованием командыCOPY
. ИINSERT INTO
не масштабируется с помощью пакетной обработки JDBC. Чтобы вставить 100 строк в один пакет, потребуется 100 секунд.
Это не ваша вина, что вы запутались. IMO Azure Product Management для баз данных (SQL Server, DW, ADP, Synapse, Analytics и 10 других разновидностей всего этого) понятия не имеют, что они хотят предложить через 2 года с сегодняшнего дня. Каждый продукт может похвастаться Big Data, Massive, то и это, ML и Analytics, Elastic, то и это. Иди разберись.
PS: попробуйте Snowflake, если вы этого не сделали.
Я не связан с Microsoft или Snowflake.