Welcome to my personal place for love, peace and happiness❣️

Тестирую Yandex Data Proc

Не буду описывать подробно как заказать услугу Data Proc, так как это оказалось достаточно просто.
Генерируем ключ ( желательно без пароля ) для более удобного доступа.

ssh-keygen -t rsa

Создаем Data Proc кластер ... next next finish ...

Копируем данные на ноду:

cat "/Users/yuriygavrilov/Documents/My Tableau Repository/Datasources/2022.1/en_US-US/Sample - Superstore.txt" | ssh -i /Users/yuriygavrilov/ssh_key/ya_np/ya ubuntu@51.250.79.62 'cat | hadoop fs -put - "hdfs://rc1a-dataproc-m-a1s92pxkgxp555pm.mdb.yandexcloud.net:8020/user/hive/warehouse/stor/stor.csv"'

Обвязываем табличку:

create external table store 
(Row_ID	string	,
Order_ID	string	,
Order_Date	string	,
Ship_Date	string	,
Ship_Mode	string	,
Customer_ID	string	,
Customer_Name	string	,
Segment	string	,
Country_Region	string	,
City	string	,
State	string	,
Postal_Code	string	,
Region	string	,
Product_ID	string	,
Category	string	,
Sub_Category	string	,
Product_Name	string	,
Sales	string	,
Quantity	string	,
Discount	string	,
Profit	string	
)       
ROW FORMAT DELIMITED
FIELDS TERMINATED BY '\t'
STORED AS TEXTFILE
LOCATION 'hdfs://rc1a-dataproc-m-a1s92pxkgxp555pm.mdb.yandexcloud.net:8020/user/hive/warehouse/stor/'
tblproperties ("skip.header.line.count"="1");

Создаем таблицу итогов продаж по регионам:

create table region_sales
(region string,
sales float 
);

Загружаем данные:

insert into region_sales (region, sales) select region, sum(REPLACE(sales, ",", ".")) as sales from store group by region ;

Проверяем итоги:

select * from region_sales

Central 501239.9
East 678781.25
South 391721.9
West 725457.8

Все ровно)
но вот запросы исполняются достаточно долго 12 секунд, но никто и не обещал скорость на малых данных.

В целом очень удобно. Заказал, загрузил, посчитал и выключил.

А теперь тестируем Спарк:

spark-shell
import spark.implicits._
import spark.sql
sql("SELECT region, sum(sales) FROM store_orc group by Region").show()
+-------+------------------+
| region|        sum(sales)|
+-------+------------------+
|  South|391721.90536534786|
|Central|  501239.889593184|
|   East| 678781.2377765179|
|   West| 725457.8231142759|
+-------+------------------+

Класс!) заработало)

Follow this blog
Send
Share
2022   Data Proc   hadoop   yandex
1 comment
Yury Gavrilov 2022

Надо будет что-то посчитать сложное...