قدرت ترکیبی Domo Cloud Amplifier و Snowflake بهترین راز در مدیریت داده در حال حاضر است – و ما هر روز به ارتفاعات جدیدی میرسیم. در این راهنمای نحوه کار، ما شما را پشت API میبریم و به مهندسان Snowflake نشان میدهیم که چگونه Cloud Amplifier و Snowflake میتوانند با هم کار کنند تا به انجام پنج وظیفه عملی و در عین حال قدرتمند کمک کنند:
- داده ها را آماده و غنی کنید
- یک جدول جدید در Snowflake ایجاد کنید و داده ها را وارد کنید
- ادغام و غنی سازی داده ها
- چندین انبار را پیکربندی و استفاده کنید
- یک منبع واحد از حقیقت ایجاد کنید
خود را جهت دهی کنید
ارائه عناصر کلیدی
این راهنما پیکربندی Cloud Amplifier با Snowflake را نشان می دهد. برای شروع، با چند اصطلاح کلیدی آشنا شوید:
- دانه برف: منبع متمرکز حقیقت برای داده های اصلی ما
- ETL جادویی: ابزار Domo برای ترکیب و تهیه جداول داده
- ERP: منبع داده اضافی از Salesforce
- از نظر جغرافیایی: منبع داده اضافی (یعنی جدول مسیر پیاده روی) در Domo شامل اطلاعات جمعیتی بر اساس مجموعه داده کدپستی
- رسانه های اجتماعی: مخفف داده ها از پلتفرم های رسانه های اجتماعی (مانند اینستاگرام)
چرا دانه برف؟ ما روی پلتفرم دادههای ابری Snowflake تمرکز میکنیم، زیرا توانایی آن در مدیریت مجموعههای دادهای در مقیاس بزرگ و متنوع با سهولت و کارایی دارد. برای تجزیه و تحلیل داده ها و گزارش های بلادرنگ، این یک انتخاب ایده آل است.
داده ها را آماده و غنی کنید
با Cloud Amplifier و Magic ETL
تقویت کننده ابری با Magic ETL به اطمینان از آماده بودن داده های شما برای تجزیه و تحلیل بیشتر کمک می کند. در اینجا ما از Magic ETL برای آماده سازی و غنی سازی داده های Snowflake خود استفاده کردیم. سپس داده های غنی شده را به Snowflake بازگردانیم. این داده ها اکنون برای استفاده در Domo و سایر محصولاتی که Snowflake پشتیبانی می کند در دسترس است.
یک جدول جدید در Snowflake ایجاد کنید و داده ها را وارد کنید
با تقویت کننده ابری
API های Snowflake در پایتون به شما امکان می دهد داده های خود را به روش های پیچیده و مفیدی دستکاری و ادغام کنید. در اینجا نحوه ایجاد جدول تراکنش Snowflake در نوت بوک Jupyter آمده است:
import snowflake.connector
"from snowflake.connector.pandas_tools import write_pandas\n",
#Connect to Snowflake
conn = snowflake.connector.connect(
user=’USER’,
password=’PASSWORD’,
account=’ACCOUNT’,
)
# Create the ‘transactions’ table
create_transactions_table = “””
CREATE OR REPLACE TABLE transactions (
tx_id STRING
tx_datetime STRING,
tx_date DATE,
customer_id NUMBER(10, 0),
terminal_id NUMBER (10, 0),
tx_amount FLOAT,
tx_fraud NUMBER(3, 0),
tx_fraud_scenario NUMBER(3, 0),
…
)
“””
cur = conn.cursor()
cur.execute(create_transactions_table)
# Assuming ‘transactions’ is a Pandas DataFrame with data ready for upload
success, nchunks, nrows, _ = write_pandas(conn, transactions, ‘TRANSACTIONS’)
سپس جدول مشتریان را با استفاده از این کد ایجاد کردیم:
import snowflake.connector
from snowflake.connector.pandas_tools import write_pandas
# Connect to Snowflake
conn = snowflake.connector.connect(
user=’USER’,
password=’PASSWORD’,
account=’ACCOUNT’,
)
create_customers_table = “””
CREATE OR REPLACE TABLE customers (
customer_id NUMBER(10, 0)
customer_region STRING,
customer_segment STRING,
PRIMARY KEY (customer_id)
)
“””
customers.columns = [col.upper() for col in customers.columns]
cur = conn.cursor()
cur.execute(create_customers_table)
success, nchunks, nrows, _ = write_pandas(conn, customers, ‘CUSTOMERS’)
این قطعهها ایجاد یک جدول جدید در Snowflake و سپس درج دادهها از Pandas DataFrame را نشان میدهند. بسیار هوشمندانه، اگر ممکن است بگوییم. برای مثالهای دقیقتر و پشتیبانی بیشتر، میتوانید از مستندات API Snowflake دیدن کنید.
ادغام و غنی سازی داده ها برای تجزیه و تحلیل پیشرفته
با تقویت کننده ابری
غنیسازی Snowflake با Salesforce، رسانههای اجتماعی و دادههای مالی یکی دیگر از درخواستهای رایجی است که بارها و بارها میشنویم. نحوه انجام این کار به این صورت است: ما از پایتون برای استخراج داده ها از این منابع در یک قاب داده استفاده کردیم. سپس از Domo API برای بارگذاری این فریم های داده در مجموعه داده های Domo استفاده کردیم. توجه داشته باشید که Domo SDK برای تعامل برنامهای با Domo برای بارگذاری دادهها و ساخت برنامهها مفید است. این کدی است که ما استفاده کردیم:
from pydomo import Domo
domo = Domo(‘CLIENT_ID’, ‘SECRET_KEY’,api_host=’API_HOST’)
# Extract unique customer_ids from the primary dataset
unique_customer_ids = df[‘customer_id’].unique()
unique_customer_id_count = df[‘customer_id’].nunique()
# Define a data range for the synthetic data
# Generate synthetic ERP data
erp_data = pd.DataFrame({
‘customer_id’: np.random.choice(unique_customer_ids,
size=unique_customer_id_count, replace=False),
‘account_status’: np.random.choice([‘Active’, ‘Closed’, ‘Delinquent’],
size=unique_customer_id_count),
‘credit_limit’: np.random.uniform(1000, 10000, size=unique_customer_id_count),
‘current_balance’: np.random.uniform(o, 10000, size=unique_customer_id_count),
‘last_payment_date’: np.random.choice(date_range,
size=unique_customer_id_count),
‘payment_frequency’: np.random.choice([‘Monthly’, ‘Quarterly’, ‘Yearly’],
size=unique_customer_id_count),
})
domo.ds_create(erp_data, ‘CCFD ERP Data Salesforce’)
چندین انبار را پیکربندی و استفاده کنید
با تقویت کننده ابری
یکی دیگر از مواردی که ما در مورد Cloud Amplifier هیجان زده ایم: می توانید با Snowflake در سطح ماکرو تعامل داشته باشید، اما همچنان تنها با چند کلیک به سطح میکرو بروید. در این نسخه آزمایشی، ما پنج جدول اصلی را ارائه کردیم که همه در یک پایگاه داده بودند. وقتی این جداول را در Domo پیکربندی میکنید، در زیر میتوانید ببینید که چقدر آسان است که از سهام به چند انتخاب این جداول در سه کلیک (اعداد آبی) بروید.
یک منبع واحد از حقیقت ایجاد کنید
با تقویت کننده ابری
ساده است – با نوشتن داده های غنی شده در Snowflake، ما یک منبع واحد و یکپارچه از حقیقت ایجاد کرده ایم. این تضمین می کند که داده های سازمان شما سازگار و قابل اعتماد هستند. در اینجا هیچ اقدام واقعی وجود ندارد. با آماده سازی داده های خود در Domo، به طور خودکار این منبع فدرال را ایجاد می کنید.
منابع ما را بررسی کنید و کد ما را کپی کنید
هدف ما این است که به مهندسان داده کمک کنیم تا روشهای عملی Snowflake و Domo Cloud Amplifier از طریق API/SDK را که میتوانند کسب و کار خود را مقیاسپذیر کنند، ببینند. ما به صدها کسبوکار کمک میکنیم تا راهحلهای تحلیلی سرتاسر خود را بسازند که قابلیتهای پایگاه داده ابری Snowflake را با قابلیتهای آمادهسازی دادههای ETL و Domo ترکیب میکند.
به عنوان گام بعدی، توصیه میکنیم که برای خودتان Cloud Amplifier را بررسی کنید. از اسناد Snowflake API و منابع تقویت کننده ابری Domo دیدن کنید. یا خودتان با استفاده از کد ما در بالا ببینید.