У меня много сомнений по поводу Spark+Delta.

1) Databricks предлагает 3 слоя (бронза, серебро, золото), но какой слой рекомендуется использовать для машинного обучения и почему? Я предполагаю, что они предлагают иметь чистые и готовые данные в золотом слое.
2) Если мы Аннотация рассмотрим концепции этих трех уровней, можем ли мы рассматривать бронзовый слой как озеро данных, серебряный слой как базы данных и золотой слой как хранилище данных? Я имею в виду с точки зрения функциональности, .
3) Дельта-архитектура — это коммерческий термин, эволюция каппа-архитектуры или новая трендовая архитектура, такая как лямбда- и каппа-архитектура? В чем разница между архитектурой Delta + Lambda и архитектурой Kappa?
4) Во многих случаях Delta + Spark масштабируется намного больше, чем большинство баз данных, обычно намного дешевле, и если мы все настроим правильно, мы можем получить почти в 2 раза более быстрые результаты запросов. Я знаю, что довольно сложно сравнивать фактические хранилища трендовых данных с хранилищем данных Feature/Agg, но я хотел бы знать, как я могу провести это сравнение?
5) Раньше я использовал Kafka, Kinesis или Event Hub для потокового процесса, и мой вопрос в том, какие проблемы могут возникнуть, если мы заменим эти инструменты таблицей Delta Lake (я уже знаю, что все зависит от многих вещей, но я хотелось бы иметь общее представление об этом).





1) Оставьте это на усмотрение специалистов по данным. Им должно быть удобно работать в регионах серебра и золота, некоторые более продвинутые специалисты по данным захотят вернуться к необработанным данным и проанализировать дополнительную информацию, которая, возможно, не была включена в таблицы серебра/золота.
2) Бронза = необработанные данные в собственном формате/формате дельта-озера. Серебряный = обработанные и очищенные данные в озере дельты. Золото = данные, доступ к которым осуществляется через дельта-озеро или которые помещаются в хранилище данных, в зависимости от бизнес-требований.
3) Дельта-архитектура — это упрощенная версия лямбда-архитектуры. На данный момент дельта-архитектура является коммерческим термином, посмотрим, изменится ли это в будущем.
4) Delta Lake + Spark — самый масштабируемый механизм хранения данных по разумной цене. Вы можете протестировать производительность в соответствии с вашими бизнес-требованиями. Озеро Дельта будет намного дешевле, чем любое хранилище данных для хранения. Ваши требования к доступу к данным и задержке будут более важным вопросом.
5) Kafka, Kinesis или Eventhub — это источники для получения данных с периферии в озеро данных. Озеро Дельта может выступать в качестве источника и стока для потокового приложения. На самом деле очень мало проблем с использованием дельты в качестве источника. Источник дельта-озера находится в хранилище больших двоичных объектов, поэтому мы на самом деле обходим многие проблемы, связанные с инфраструктурой, но добавляем проблемы согласованности хранилища больших двоичных объектов. Озеро дельты как источник потоковых заданий гораздо более масштабируемо, чем концентратор kafka/kinesis/event, но вам все равно нужны эти инструменты для передачи данных с периферии в озеро дельты.
Я не использовал архитектуру Kappa, поэтому не имею права высказывать мнение. Архитектура Delta позволяет выполнять потоковую передачу, пакетную передачу или и то, и другое. Причина для Kafka/Kinesis/Event Hub заключается в том, что вам обычно нужна некоторая гибкая очередь сообщений для отправки данных от производителей данных (например, вашего мобильного телефона) в какую-то шину/концентратор событий перед их приемом.
В 5) вы говорили о проблемах согласованности, а в документации Delta Lake говорится, что они предлагают ACID (согласованность), так что это неправда?
Это отдельные. Существует конечная согласованность в хранилище BLOB-объектов. И есть согласованность при чтении/записи данных. Delta Lake в настоящее время готово только для hdfs. Дополнительные сведения см. в требованиях к базовым системам хранения: github.com/дельта-ио/дельта.
Delta Lake выпустила версию 0.2.0, которая поддерживает облачные хранилища Amazon S3 и Azure Blob Storage с улучшенным параллелизмом.
Как добавить дату из золотой таблицы в Azure SQL. Что касается вставки новых записей, это можно сделать с помощью bulkCopyToSqlDB. Но как вы относитесь к обновлениям?
Я хотел бы знать, как быстро будут развернуты блоки данных и версии с открытым исходным кодом с функциями ОПТИМИЗАЦИИ?
Таблицы с медальонами — это рекомендация, основанная на том, как наши клиенты используют озеро Дельта. Вам не нужно точно следовать ему; тем не менее, это хорошо согласуется с тем, как люди проектируют EDW. Что касается машинного обучения и какой таблицы использовать. Это будет выбор людей, занимающихся машинным обучением. Некоторые могут захотеть получить доступ к таблицам Bronze, потому что это необработанные данные, с ними ничего не делалось. Другим может понадобиться Серебряный стол, потому что он считается чистым, хотя и дополненным. Обычно таблицы Gold отличаются высокой точностью и специфичностью, чтобы отвечать на четко определенные бизнес-вопросы.
Не совсем. Таблицы Bronze представляют собой необработанные данные о событиях, например. одна строка на событие или измерение и т. д. Серебряные таблицы также относятся к уровню событий/измерений, но они очень усовершенствованы и готовы к запросам, отчетам, информационным панелям и т. д. Золотая таблица может быть таблицами фактов и измерений, агрегированными таблицами. или тщательно подобранные наборы данных. Важно помнить, что Delta не предназначена для использования в качестве транснациональной системы OLTP. Он действительно предназначен для рабочих нагрузок OLAP.
Архитектура Delta — это название, которое мы дали конкретной реализации Delta Lake. Это не коммерческий термин как таковой, но, надеюсь, он им станет. Существует достаточно информации, чтобы сравнить и сопоставить архитектуры Kappa и Lambda. Архитектура Delta хорошо описана в документации Delta и в блогах Databricks, технических докладах, видео на YouTube и т. д.
Я бы спросил, что именно вы хотите сравнить? Скорость, функции, продукты, ...?
Delta Lake не пытается заменить какие-либо системы публикации/подписки обмена сообщениями, у них разные сценарии использования. Delta Lake может подключаться к каждому упомянутому вами продукту как в качестве подписчика, так и в качестве издателя. Не забывайте, что Delta Lake — это открытый уровень хранения, обеспечивающий транзакции, совместимые с ACID, высокую производительность и высокую надежность для озер данных.
Луи.
Я хотел бы знать, как быстро будут развернуты версии блоков данных с функциями ОПТИМИЗАЦИИ?
Что вы подразумеваете под «... развертыванием с функциями оптимизации?»
Большой Лу, docs.databricks.com/delta/optimizations/file-mgmt.html
Кристиан, время, необходимое для запуска процесса оптимизации (сжатия), зависит от нескольких факторов: 1. Общий размер оптимизируемых данных, 2. Количество сжимаемых дельта-файлов и 3. Размер и структура кластер, на котором выполняется оптимизация.
В чем разница между Kappa и Delta Architecture? Есть ли у вас представление о том, какие требования к доступу к данным и задержке я могу изучить для сравнения? Почему нам все еще нужны такие инструменты, как kafka/kinesis/event hub?