Преглед на снежинка: Склад за данни се подобри в облака

Складовете за данни, наричани още корпоративни хранилища за данни (EDW), са силно паралелни бази данни на SQL или NoSQL, предназначени за анализ. Те ви позволяват да импортирате данни от множество източници и бързо да генерирате сложни отчети от петабайта данни.

Разликата между хранилището на данни и информационното пространство е, че обикновено информационното пространство е ограничено до една тема и един отдел. Разликата между хранилището на данни и езерото данни е, че езерото данни съхранява данни в естествения им формат, често петна или файлове, докато хранилището за данни съхранява данни като база данни.

Снежинка накратко

Snowflake е напълно релационно хранилище за данни на ANSI SQL, създадено от нулата за облака. Архитектурата му отделя изчисленията от съхранението, така че можете да мащабирате нагоре и надолу в движение, без забавяне или прекъсване, дори когато заявките се изпълняват. Получавате нужното изпълнение точно когато имате нужда и плащате само за изчисленията, които използвате. В момента Snowflake работи на Amazon Web Services и Microsoft Azure.

     Snowflake е напълно колонна база данни с векторизирано изпълнение, което я прави способна да адресира и най-взискателните аналитични натоварвания. Адаптивната оптимизация на Snowflake гарантира, че заявките автоматично получават възможно най-добрата производителност, без индекси, ключове за разпределение или параметри за настройка за управление.

     Snowflake може да поддържа неограничен паралел със своята уникална мулти-клъстерна, споделена архитектура на данни. Това позволява на множество изчислителни клъстери да работят едновременно на едни и същи данни, без да влошава производителността. Снежинката може дори да се мащабира автоматично, за да се справи с различни изисквания за едновременност със своята мулти-клъстерна функция за виртуален склад, прозрачно добавяйки изчислителни ресурси по време на пиковите периоди на зареждане и мащабирайки, когато товарите намаляват.

Състезатели на снежинки

Конкурентите за Snowflake в облака включват Amazon Redshift, Google BigQuery и Microsoft Azure SQL Data Warehouse. Други големи конкуренти, като Teradata, Oracle Exadata, MarkLogic и SAP BW / 4HANA, могат да бъдат инсталирани в облака, помещенията и уредите.

Amazon Redshift

Amazon Redshift е бързо, мащабируемо хранилище за данни, което ви позволява да анализирате всичките си данни в хранилището на данни и в езерото на данни на Amazon S3. Запитвате Redshift с помощта на SQL. Хранилището за данни Redshift е клъстер, който може автоматично да се разгръща и премахва капацитет с едновременно зареждане на заявка. Всички клъстерни възли обаче са предоставени в една и съща зона на наличност.

Microsoft Azure SQL Data Warehouse

Microsoft Azure SQL Data Warehouse е базиран на облак склад за данни, който използва механизма на Microsoft SQL и MPP (масивна паралелна обработка) за бързо изпълнение на сложни заявки в петабайта от данни. Можете да използвате Azure SQL Data Warehouse като ключов компонент на решение за големи данни, като импортирате големи данни в SQL Data Warehouse с прости PolyBase T-SQL заявки, след което използвате силата на MPP за стартиране на високопроизводителен анализ.

Azure SQL Data Warehouse се предлага в 40 региона на Azure по целия свят, но даден сървър на склад съществува само в един регион. Можете да мащабирате производителността на хранилището си за данни при поискване, но всички изпълнени заявки ще бъдат анулирани и върнати обратно.

Google BigQuery

Google BigQuery е безсървърно, мащабируемо и рентабилно хранилище на данни в облак с ГИС заявки, вграден BI двигател в паметта и вградено машинно обучение. BigQuery изпълнява бързи SQL заявки на гигабайта до петабайта данни и го прави лесно да се присъедини публично или търговски набори от данни с вашите данни.

Можете да зададете географско местоположение на набор от данни на BigQuery само по време на създаването. Всички таблици, посочени в заявка, трябва да се съхраняват в набори от данни на едно и също място. Това се отнася и за външни набори от данни и сегменти за съхранение. Има допълнителни ограничения за местоположението на външни данни на Google Cloud Bigtable. По подразбиране заявките се изпълняват в същия регион като данните.

Местоположенията могат да бъдат конкретни места, като Северна Вирджиния, или големи географски области, като ЕС или САЩ. За да преместите набор от данни на BigQuery от един регион в друг, трябва да го експортирате в сегмент на Google Cloud Storage на същото място като вашия набор от данни, да копирате кофата на новото място и да го заредите в BigQuery на новото място.

Снежинка архитектура

Snowflake използва виртуални изчислителни екземпляри за своите изчислителни нужди и услуга за съхранение за постоянно съхранение на данни. Snowflake не може да се изпълнява на частни облачни инфраструктури (локални или хоствани).

Няма инсталация, която да се извърши, и няма конфигурация. Цялата поддръжка и настройка се извършва от Snowflake.

Snowflake използва централно хранилище за данни за персистиращи данни, достъпно от всички изчислителни възли в хранилището за данни. В същото време Snowflake обработва заявки, използвайки MPP (масивно паралелна обработка) изчислителни клъстери, където всеки възел в клъстера съхранява локално част от целия набор от данни.

Когато данните се зареждат в Snowflake, Snowflake реорганизира тези данни във вътрешния им компресиран, колонен формат. Вътрешните обекти с данни са достъпни само чрез SQL заявки. Можете да се свържете със Snowflake чрез нейния уеб потребителски интерфейс, чрез CLI (SnowSQL), чрез ODBC и JDBC драйвери от приложения като Tableau, чрез естествени конектори за програмни езици и чрез конектори на трети страни за BI и ETL инструменти.

Снежинка

Характеристики на снежинка

Сигурност и защита на данните. Предлаганите в Snowflake функции за сигурност се различават в зависимост от изданието. Дори стандартното издание предлага автоматично криптиране на всички данни и поддръжка за многофакторно удостоверяване и единичен вход. Добавянето на Enterprise добавя периодично повторно въвеждане на шифровани данни, а изданието Enterprise for Sensitive Data добавя поддръжка за HIPAA и PCI DSS. Можете да изберете къде да се съхраняват вашите данни, което спомага за спазване на регламентите на EU GDPR.

Стандартна и разширена поддръжка на SQL. Снежинката поддържа повечето DDL и DML, дефинирани в SQL: 1999, плюс транзакции, някои разширени SQL функции и части от аналитичните разширения на SQL: 2003 (функции за прозорци и групи за групиране). Той също така поддържа странични и материализирани изгледи, обобщени функции, съхранени процедури и дефинирани от потребителя функции.

Инструменти и интерфейси. Забележително е, че Snowflake ви позволява да контролирате виртуалните си складове от GUI или командния ред. Това включва създаване, преоразмеряване (с нулев престой), спиране и пускане на складове. Преоразмеряването на склад по време на изпълнение на заявка е много удобно, особено когато трябва да ускорите заявка, която отнема твърде много време. Доколкото ми е известно, което не е внедрено в друг софтуер на EDW.

Свързаност Снежинка има съединители и / или драйвери за Python, Spark, Node.js, Go, .Net, JDBC, ODBC и dplyr-snowflakedb, разширение на пакета dplyr с отворен код, поддържано на GitHub.

Внос и износ на данни. Snowflake може да зареди широк спектър от данни и файлови формати. Това включва компресирани файлове; файлове с ограничени данни; JSON, Avro, ORC, паркет и XML формати; Източници на данни на Amazon S3; и локални файлове. Той може да извършва групово зареждане и разтоварване в и извън таблиците, както и непрекъснато групово зареждане от файлове.

Споделяне на данни. Snowflake има поддръжка за сигурно споделяне на данни с други акаунти на Snowflake. Това се рационализира чрез използването на клониращи таблици с нулево копие.

Снежинка

Уроци за снежинка

Снежинка предлага доста уроци и видеоклипове. Някои ви помагат да започнете, други изследват конкретни теми, а други демонстрират функции.

Препоръчвам да работя с практически преглед, описан в Ръководството за практически лаборатории за безплатна пробна версия на Снежинка.) Отне ми по-малко от час и струва по-малко от пет кредита. Това остави още 195 кредита в безплатния пробен период, което би трябвало да е достатъчно за импортиране на реални данни и тестване на някои заявки.

Урокът използва широко работни листове на Снежинка, удобен начин за изпълнение на команди и SQL в уеб интерфейса. Той обхваща, наред с други неща, зареждането на данни; заявки, кеширане на резултати и клониране; полуструктурирани данни; и пътуване във времето за възстановяване на обекти на база данни.

Като цяло намирам Снежинка за доста впечатляваща. Очаквах да е тромаво, но това изобщо не е така. Всъщност много от неговите операции с хранилището на данни вървят много по-бързо, отколкото очаквах, и когато има такъв, който изглежда обхожда, мога да се намеся и да увелича размера на хранилището на данни, без да прекъсвам случващото се.

Голяма част от мащабирането може да бъде автоматизирано. Когато създавате хранилище за данни (вижте екранната снимка по-горе), има опция за разрешаване на множество клъстери, опция за задаване на политика за мащабиране, опция за автоматично спиране и опция за автоматично възобновяване. Периодът на автоматично спиране по подразбиране е 10 минути, което предпазва склада от консумация на ресурси, когато е неактивен по-дълго от това. Автоматичното възобновяване е почти мигновено и се случва винаги, когато има заявка към склада.

Като се има предвид, че Snowflake предлага 30-дневна безплатна пробна версия с кредит от 400 долара и няма нужда да инсталирате каквото и да било, би трябвало да можете да определите дали Snowflake ще отговаря на вашите цели без никакви парични разходи. Бих препоръчал да го завъртите.

-

Цена: $ 2 / кредит плюс $ 23 / TB / месец съхранение, стандартен план, предплатено съхранение. Един кредит се равнява на един възел * час, таксуван от втория. Плановете от по-високо ниво са по-скъпи.

Платформи: Amazon Web Services, Microsoft Azure