4. Databricks - Azure Data Lake Storage Gen2 연동하기

이미지
 Databricks - Azure Data Lake Storage Gen2 연동하기 (Azure Active Directory와 Key-vault로)  개요 네... 혹시 연동 작업에서 에러가 나고 삽질을 하셨나요?ㅜㅜ 저의 삽질기는 졸업하고 깔끔하게 정리하여 공유하고자 합니다. 화..화이팅!! 작업 Process 1. Databricks Secret 생성   네, 전 포스트에서 Secret과 Azure Key-Vault에 대해 포스팅을 했는데 여기에서도 한 번 더 언급하겠습니다.  일단 databricks에 제공하는 Token은 Configure하시구요,  >databricks configure --token Databricks Host (should begin with https://): https://eastus.azuredatabricks.net Token: 추가적으로, Workspace에 생성된 notebook도 확인 command를 해볼까요? >databricks workspace ls /Users/mj_ datalake 네 이제는 Secret을 생성해보겠습니다. Secret생성 전에 Azure Portal에서 Azure Key-vault 리소스를 인스톨하구요, 속성 내 DNS과 리소스Id를 복사해둡니다. 이제, 데이터브릭스 포탈로 들어갑니다. 포탈 url에 뒤에 /#secrets/createScope 를 붙여 아래와 같은 페이지로 들어갑니다! 이제 앞에 복사해두었던 DNS와 리소스 Id를 아래에 붙여넣습니다.  이제 Secret Scope이 생성되었는지 확인해불까요? Databricks_CLI를 통해 확인가능합니다. >databricks secrets list --scope {Scope명} Key name   ...

3. Azure Databricks Secret으로 Blob Storage Mount

이미지
Azure Databricks Secret으로 Blob Storage Mount  개요 Databricks File System 내부로 Azure Blob 스토리지의 지정 컨테이너를 Mount하여 편리하게 ETL 할 수 있습니다. 그 과정에 필요한 것은 바로 Secret과 Azure Blob Accout에 SAS를 활용하면 가능합니다. 작업 Process 1. Azure Blob IAM(엑세스제어) 등 Azure Portal에 AAD(Azure Active Directory) 로 들어가서 App Registrations 를 선택합니다. +새등록 을 통해 앱 등록을 진행합니다. Mount 할 Blob Storage에 컨테이너 가 없다면 생성하시고 있으면 해당 컨테이너로 들어갑니다.  해당 컨테이너에 들어가서  엑세서 제어(IAM) 에 들어갑니다. +새등록 을 누르셔서 역할할당추가 를 선택합니다.  역할 할당 추가에서 역할 을 통해 Databricks 내 Access하려는 Permission을 제한을 둘 수 있습니다. 그리고 선택부분에 앞서 AAD에 만들었던 App Registration 생성 이름 을 서치하시고 선택하셔서 할당을 추가하면 됩니다. 네 이제 Mount할 Azure Blob내 컨테이너 역할 할당은 완료했습니다!  그렇담 이제 Databricks로 넘어가 mount해기위한 Secret과 Scope을 확인해볼게요. 2. Secret과 Scope 확인하기. 저는 Databricks CLI로 확인을 할거에요. 혹시 Databricks CLI도 모르겠고 Secret도 뭔지 모르겠다 하시는 분들은 1,2 번 포스팅을 먼저 확인하시면 됩니다!  아래와 같이 databricks secrets 리스트를 확인하며 그 부분들 Mount할 때 필요한 정버들입니다. C:\Users\박민지>datab...

2. Azure Databricks - Azure Key Vault 연동하기.

이미지
Azure Databricks with Key Vault 연동  개요 Databricks는 Apache Spark 클러스터를 MS Azure Cloud 위에서 사용할 수 있는 PaaS형 서비스 입니다. 여기서! Blob Storage나 Data Lake Storage, Data Warehouse에 데이터 소스를 Cluster 위에 올려서 작업을 해야 할 경우에 Key Vault를 연동하게 되면 Mount하여 데이터를 올려 사용할 수 있습니다. 그 작업 프로세스 부분을 정리해보았어용~ 연동 작업 1. Azure Key-Vault 생성 키 자격 증명 모음에 추가하여 새로 생성합니다. 생성이 다 되었으면 그 리소스 클릿하시고 왼쪽 아래에 속성을 선택합니다. 그러면 아래와 같이 뜨는데요, 저희가 필요한건 DNS 이름과 리소스 ID입니다! 2. Databricks에서 createScope 생성 Databricks 포털 URI에서  /#secrets/createScope 를 붙이시면 해당 페이지가 나와용. https://<location>.azuredatabricks.net/#secrets/createScope 위에 만들어 두었던 Key-Vault에 DNS이름과 리소스 ID를 해당 칸에 붙여넣습니다.  3. Databricks에서 Secret Scope 생성 완료 확인 생성이 다 되었다면 이제 Scope 생성이 완료되었는지 확인해볼게요. Databricks CLI를 사용하기 위해 CMD 창을 켭니다. (Databricks CLI 설치는 이미 포스팅 해놨습니다! 참고 부탁 ㅋㅋ)  (mingdi) C:\Users\박민지>databricks secrets list-scopes Scope    Backend -------  -------------- test1 ...

1. Azure Databricks CLI 설치하기

이미지
Azure Databricks CLI 설치하기  개요 Databricks는 사용자가 쉽게 접근할 수 있도록 Interface Platform을 제공하고 있습니다. Workspace API, Cluster API, DBFS API, Groups API, Jobs API, Libraries API와 Secrets API를 통해서 Databricks에 설정을 유연하게 Config나 작업을 할 수 있습니다~ 저는 Windows에 Anaconda 가상 환경에서 진행했구요 Python version은 3.7입니다! Requirements Python 3 -3.6 and Above  Python 2 -2.7.9 and Above 설치 과정 1. Module Install pip으로 모듈을 받습니다.  >pip install databricks-cli ----------------------CMD--------------------------------- (mingdi) C:\Users\박민지>pip install databricks-cli Collecting databricks-cli   Downloading https://files.pythonhosted.org/packages/5f/38/f83bc71c5e7351a03e8d44aaf04647d076bbf8f097e3f93b921704b7a74c/databricks_cli-0.8.7-py3-none-any.whl (82kB)      |████████████████████████████████| 92kB 226kB/s 2. A uthentication Set UP Databricks에 인증을 등록해야하는데요, 일단 Databricks로 들어갑니다. Databricks 포탈에 맨 오른쪽에 요렇게 사람모양 표시가 있는데 그걸 눌러 User...

Database Basic_SQL_DML_INSERT

  <DML : 데이터 조작어 > INSERT 문 * TCL : Transaction language. 1) commit : 변경된 것을 저장하겠다 . 2)rollback : 가장 최근에 변경했던 것을 되돌리겠다 . *insert : 테이블에 새 행을 추가하는 것 . 1) col 의 속성을 변경할 때는 modify alter table emp_new modify (hire_date default sysdate); select * from dept_new; select * from emp_new; 2) emp_new 라는 아무런 데이터 값이 없는 테이블에 employees 의 테이블에 있는 칼럼들을 추가하는것 -- -- 먼저 dept_new 의 칼럼들을 추가해야 가능하다 . insert into emp_new select employee_id, first_name, salary, hire_date, department_id from employees where department_id = 20; 3) departments 테이블의 department_id, department_name, location_id 가 가르키는 실제 도시인 locations 를 dept_new 의 테이블에 추가하기 . insert into dept_new select department_id, department_name, l.city from departments d, locations l where d.location_id = l.location_id; 4) emp_new 테이블에 각 col 마다 데이터를 넣어주기 -- * hire_date 는 defalt sysdate 를 해주었기 때문에 따로 값을 안넣어도 자동적으로 오늘날짜가올라온다 . insert into emp_new (empno, ename, salary, deptno) values(...

Database : Basic SQL_DDL_Table

<DDL – Table 생성 > ------ 테이블 생성하기 - create + 제약조건 사용하기 ------------- create table dept_new ( deptno number(4) constraint deptno_pk primary key, -- deptno col 의 유형은 숫자이며 길이는 4 이며 제약조건은 primary key 이다 . dname varchar2(30) not null, loc varchar2(30) ); select * from dept_new; ------ 테이블 생성하기 - create + 제약조건 사용하기 ------------- create table emp_new ( empno number(4), ename varchar2(30) not null, salary number(10) not null, hire_date date not null, deptno number(4) , constraint empno_pk primary key(empno), constraint salary_ck check (salary >= 500), constraint deptno_fk foreign key(deptno) references dept_new(deptno) );                 ----- 서브쿼리를 이용해서 테이블 만들기 ------------ create table emp_dept80 as select employee_id, last_name, sala...