Database
 sql >> база данни >  >> RDS >> Database

Качвайте документи в Azure Data Lake и експортирайте данни с помощта на SSIS

Въведение

Azure расте всеки ден. Microsoft създаде Azure, която е услуга за изчисления в облак, пусната през 2010 г.

Според Microsoft 80% от компаниите от Fortune 500 използват Azure. Освен това 40% от приходите на Azure идват от стартиращи фирми и независими доставчици на софтуер. 33% от виртуалните машини Azure използват Linux. Microsoft очаква да спечели 20 милиарда долара през 2018 г.

Ето защо компаниите мигрират част от данните към Azure, а понякога и всички данни.

Azure Data Lake е специално хранилище за паралелно анализиране на големи данни в Azure. Оптимизиран е за анализи. Можете да съхранявате данни от социални мрежи, имейли, документи, информация от сензори, географска информация и други.

Ако искате само да съхранявате данни, Azure Blob Storage е достатъчно. Ако искате да анализирате данните, Data Lake е най-добрият вариант, защото е предназначен за отчети.

Data Lake Store обикновено се анализира с помощта на Cortana Analytics Suite, Power BI, SSIS е добре познат и популярен инструмент за мигриране на данни. В тази нова статия ще покажем как да използвате SSIS за мигриране на данни към Azure. Ще покажем също как да експортирате данни от .txt файл в Azure Data Lake Store към SQL Server на място.

Ако нямате опит в Azure, но имате опит с SSIS. Тази статия е за вас.

Ще изпълним следните стъпки, за да импортираме данните в Azure Data Lake:

  1. Инсталирайте пакета с функции SSIS за Azure
    По подразбиране не можете да се свържете с Azure Data Lake Store. Необходимо е да инсталирате пакета с функции за Azure в проектите SSIS.
  1. Създайте Azure Data Lake Store (ADLS) в Azure Portal
    Ако нямате Azure Data Lake Store, ще трябва да създадете нов. Ще създадем папка в този ADLS и ще импортираме данните от локална папка тук.
  1. Създайте регистрация на приложение
    В Azure Portal, в опциите на Azure Active Directory (AAD) има опция за регистрация на приложение. Ще използваме регистрация на приложение за достъп до ADLS.
  1. Задайте разрешения на ADLS
    В ADLS в Data Explorer трябва да предоставите достъп до регистрацията на приложението.
  1. Експортиране на файлове в ADLS с SSIS
    Използвайки задачата ADLS за SSIS в SSDT, можете да експортирате данните от локален файл към SSIS. За целта са ви необходими ADLS URL, идентификационният номер на приложението на регистрацията на приложението и ключът на регистрацията на приложението.
  1. Проверете резултатите
    Накрая в портала Azure отидете на ADLS, Data Explore и проверете дали файловете са копирани успешно.

Изисквания

За тази статия е необходим следният софтуер:

  1. Инсталирана SSIS (включена с инсталационната програма на SQL Server)
  2. Инструментите за данни на SQL сървъра (SSDT) ​​са инсталирани
  3. Акаунт в Azure
  4. Пакетът с функции на SSIS за Azure

Първи стъпки

1. Инсталирайте пакета с функции SSIS за Azure
Има безплатен пакет с функции за SSIS, който включва задачи за свързване с Azure. Пакетът с функции SSIS трябва да бъде инсталиран. Този пакет включва няколко задачи за работа с Big Data в Azure (HDInsight), Azure Blob Storage, Azure Data Lake Store, Azure Data Warehouse и други:

Инсталаторът е 29 MB. Има версия за 32 и 64 бита.

2. Създайте Azure Data Lake Store (ADLS) в Azure Portal
Ще ви е необходим и абонамент за Azure. Има пробни издания за начинаещи, които искат да научат тази нова технология. Ще създадем Azure Data Lake Store. Data Lake Store е мястото, където съхранявате данните си в Azure за анализ. Влезте в портала на Azure и отидете на още услуги (>) и в текстовото поле за търсене напишете Data Lake Store. Изберете Data Lake Store:

Предполагам, че все още нямате Data Lake Store, така че ще създадем нов, като натиснете иконата +Добавяне:

Посочете име за Data Lake Store. Групата ресурси трябва да обработва множество ресурси на Azure в групи. Местоположението е да посочите най-близкото до вас местоположение. Можете да платите за консумация. Цената е около 0,39 USD за GB. Колкото повече туберкулоза, толкова е най-евтино. Има и такси за операции за четене и запис (10 000 операции на запис на $0,05 и 10 000 операции за четене на $0,004).

След като създадете, щракнете върху Data Lake Store:

За да създадете папки и да добавите файлове, отидете в Data Explorer:

Създайте нова папка Ще качим файлове в тази папка. Задайте име и натиснете OK:

3. Създайте регистрация на приложение
Ще създадем регистрация на приложение за достъп до Data Lake. При регистрацията на приложение регистрирате приложението си и получавате идентификатор на приложението и ключ. За да направите това, трябва да отидем в Още услуги>Активна директория:

Отидете на Регистрации на приложения:

Добавете име. Типът на приложението е уеб приложение/API (по подразбиране). URL адресът може да бъде произволен URL според вашите предпочитания:



Щракнете върху току-що създаденото приложение:


За да се свържете с Azure Data Lake Store, ви е необходим идентификационният номер на приложението:

В регистрацията на приложението отидете на ключове. Създайте нов ключ и задайте срок на валидност за ключа. Копирайте и поставете стойността някъде. Тази стойност ще е необходима за свързване с Azure Data Lake Store:

Отидете в Data Lake Store и копирайте URL адреса в секцията Преглед. Тази информация е полезна и за свързване чрез SSIS:


4. Задайте разрешения на ADLS
Ние ще предоставим разрешения за регистрациите на нашите приложения. Тези разрешения ще позволят достъп до ADLS. Отидете до Data Explorer:

Натиснете опцията за достъп, за да добавите регистрация на приложение:


Натиснете +Добавяне опция за добавяне на регистрация на приложението:

В текстовото поле напишете AppService и натиснете бутона Избор:


Задаване на разрешения за четене, запис и изпълнение. Можете да добавите разрешения към папката и папката и всички деца.

Можете също да зададете достъп, разрешения по подразбиране и и двете:

5. Експортиране на файлове в ADLS с SSIS
В SSDT създайте SSIS проект. Ако сте инсталирали пакета с функции за Azure, ще можете да видите задачата на файловата система на хранилището на Azure Data Lake. Плъзнете и пуснете тази задача в панела за проектиране:

Щракнете двукратно върху задачата на файловата система за съхранение на Azure Data Lake. Има 2 възможни операции. За да копирате от Azure Data Lake (ADL) или да копирате в ADL. В този пример ще копираме от локален файл в ADL. В източника ще използваме папката c:\sql, ще имаме някои локални файлове за копиране в ADL. В AzureDataLakeDirectory ще използваме споделената папка. Тази папка е създадена в ADL Store в предишни стъпки. AzureDataLakeConnection ще бъде обяснено по-късно. На живо изтичането на файла (тази опция се използва, за да посочите кога изтичат файловете):

В AzureDataLakeConnection ще изберем опцията Нова връзка, за да създадем нова:

При връзката се нуждаете от ADLS хост. Това е URL адресът, когато отидете в секцията Общ преглед на ADLS в портала. При удостоверяване ще използваме Azure AD Service Identity. Тази опция използва регистрацията на приложение, създадена в Azure.

Идентификационният номер на клиента е идентификаторът на приложението на регистрацията на приложението. Можете да намерите тази информация в раздела за регистрация на приложения на Azure AD.

Секретният ключ може да бъде намерен в портала в Регистрация на приложения в Azure AD в раздела за ключове. Можете да създадете ключ и да използвате стойността в този раздел.

Името на наемателя е името на домейна Azure AD (ще обясним домейна на Azure).

Натиснете тестовата връзка, за да проверите дали всичко е наред. След като всичко е наред, натиснете OK:

Ако не знаете вашия домейн (Име на наемател), можете да проверите, като щракнете в горната дясна част на портала.


Можете да стартирате пакета SSIS, за да експортирате данните в ADLS. В този пример имаме 3 файла в локалната папка.

6. Проверете резултатите
Ако всичко е наред, в портала Azure отидете на ADLS и отидете на Data Explorer. Отидете в споделената папка и проверете файловете там. Ще можете да видите 5-те копирани файла.


Експортиране на данни от Data Lake към SQL Server на място

Във втората част ще експортираме данни, съхранявани в Azure Data Lake, към SQL Server на място. Плъзнете и пуснете задача за поток от данни:

Щракнете двукратно върху задачата Data Flow и плъзнете и пуснете източника на Azure Data Lake Store и местоназначението на SQL Server. Свържете двете задачи. Щракнете двукратно върху Azure Data Lake Store Източник:

Изберете ADLS връзката, създадена в първата част на статията. В пътя посочете ADLS пътя (име на папка/файл). В този сценарий файловият формат е текстов, а разделителят е запетая:

В колони можете да видите колоните. Ако няма колони. Създават се заглавки на колони по подразбиране:

Щракнете двукратно върху местоназначението на SQL Server. Натиснете Нов, за да създадете мениджър на връзки:

Създайте нова връзка. Посочете името на SQL Server, удостоверяването и базата данни, където искате да съхранявате данните:

В таблица или изглед натиснете Нова, за да създадете нова таблица:



По подразбиране ще имате следния T-SQL код:

Променете кода, за да посочите име на таблица и дайте имена на колони:

CREATE TABLE [smartphones] (

    [ID] int,

    Brand nvarchar(100),

    Version nvarchar(100)

)

Отидете на страницата за съпоставяне и задайте Prop_0 на ID, Prop_1 на марка, Prop_2 на версия:

Ще имате грешка в SQL Server Destination. Че колоната не може да бъде вмъкната поради проблем с преобразуването. Това е така, защото Prop_0 е низ, а таблицата на SQL Server е цяло число:

Плъзнете и пуснете задачата за преобразуване на данни и се свържете между Azure Data Lake Store Source и SQL Server Destination:

Щракнете двукратно върху преобразуване на данни, изберете Prop_0 и преобразувайте типа данни в четирибайтово подписано цяло число [DT_I4] и задайте псевдоним. Преобразуването на данни създава друга колона с различен тип данни:

Върнете се към SQL Destination Editor и съпоставете Prop_0int с ID:

Стартирайте пакета SSIS. В SSMS проверете дали таблиците dbo.smartphones са създадени и проверете дали данните са импортирани:

Ако имате въпроси или проблеми, не се колебайте да пишете вашите коментари.

Заключения

Azure Data Lake е специално хранилище с висока производителност за обработка на големи данни. За да мигрирате данни от локални сървъри към Azure, можете да използвате SSIS. За да направите това, имате нужда от новия пакет с функции за Azure. Този пакет инсталира нови задачи за свързване с ADLS.

За да се свържем с ADLS чрез SSIS, създадохме регистрация на AAD приложение с разрешения за него.

SSIS позволява лесно качване на файлове в ADLS. Трябва само да посочите ADLS URL адреса и ключа за регистрация на приложението и идентификатора на приложението.

Ние също така показваме как да извлечете данни от ADLS в таблица в SQL Server на място.

Препратки

За повече информация относно SSIS, Data Lake Store, регистрация на приложение използвайте следните връзки:

  • Представяме Azure Data Lake
  • Azure Data Lake Store Connection Manager
  • Azure Feature Pack for Integration Services (SSIS)
  • Интегриране на приложения с Azure Active Directory
  • Задача на файловата система за съхранение на Azure Data Lake
  • Регистрирайте приложението си с вашия клиент на Azure Active Directory

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Незабавна инициализация на файл:Въздействие по време на настройката

  2. Как да поръчате по дата в T-SQL

  3. Обединяване на файлове с данни със Statistica, част 1

  4. Тестване на мрежово натоварване с помощта на iPerf

  5. UML нотация