Monday, January 10, 2022

Snowflake - Overview

Snowflake 

Snowflake is a SaaS based solution, it is cloud based data warehouse

  • Benefit

o    There is no hardware (virtual or physical) to select, install, configure, or manage.

o    There is virtually no software to install, configure, or manage.

o    Self-Manage handled by Snowflake:

§  maintenance, management,  upgrades, tuning. 

Categorization of Snowflake 

1. Snowflake Architecture

·              Storage Layer

·              Compute Layer / Query processing

·              Consumption Layer

2.  Snowflake Eco-system

1- Snowflake Architecture

·              Storage Layer

§  Structure data: Row and column-based data: CSV, SQL based data, Etc.

§  Semi-structured data: JSON, XML, ORC, etc

§  Organized data: Schemas, Tables, etc.

·              Compute Layer / Query processing

§  Virtual Warehouse – cluster (vertical or horizontal scale) of computes resources/VNet

·       Loading data into or retrieve data from it

·       Scalabilities: request grow cluster grows if load decrease cluster goes down

·       Number of servers in clusters

·       It can be Auto suspended – based on time inactive

·       or auto resume – based on activity started

·       Queue created when request comes in - request will be processed when resources is ready to process

§  Services Layer – managed by snowflake (usages multiple availabilities zones for high availabilities)

·       Manage overall Snowflake

o    Authentication and authorization users

o    Manages Sessions

o    Secure data

o    Query compilation

§  When query submitted,

§  Authenticate and authorized user

§  Create optimized data plan

·       Send execution to Virtual Warehouse

·       VWH allocation resources to perform operation and send the request to Storage layer  

·       Data retrieved and processed and sent back to User

o    Optimization

o    Manages Virtual warehouse

·       Metadata store

o    Zero copy cloning

§  Instead of copying prod data

§  Not duplicate the production data

§  Retain connection to prod tables

§  To cloning environment

o    Time travel

§  Avoid deleting rows or deleting table

·       Query data in past and

·       Clone entire tables, Schemas, DB from specific time of period

·       Up to 90 days

o    Data Sharing

§  Make data available to another companies / org

§  No duplication of data

§  No data will be replicated will be shared secured way

§  Build process to send the data and consumer can build process to consume the data

§  Consumption Layer

·       Enables users to access, analyze, and visualize data stored in Snowflake. Conceptual layer built on top of Snowflake’s physical architecture (Storage, Compute, Cloud Services).

·       Data access, users access data via SQL queries, views, or external tools. Use Snowflake’s web UI, SnowSQL CLI, or third-party tools (e.g., Tableau, Power BI, Looker). Secure access is managed via roles and privileges defined in the Cloud Services layer.

·       Transform raw data into usable formats. Create views to simplify complex joins and aggregations. Use create Table As Select or materialized views for performance optimization. Apply data masking and row-level security for sensitive data.

·       Build semantic layers for business logic, Define star or snowflake schemas for reporting.

·       Capability: Generate insights through dashboards and reports. Connect BI tools to Snowflake using ODBC/JDBC or native connectors. Run scheduled queries for periodic reporting. Use SQL functions, window functions, and aggregations for deep analysis.

·       Share data securely across teams or organizations. Use Snowflake Secure Data Sharing to share live data without copying. Collaborate with external partners or internal departments. Monitor usage and access via usage dashboards.

·       Enable predictive modeling and data science workflows. integrate with platforms like DataRobot, Amazon SageMaker etc. Use Snowpark for writing code in Python, Java, or Scala directly in Snowflake. Perform feature engineering and model scoring within Snowflake.

·       Track performance and optimize queries. Use Query Profile to analyze execution plans. Monitor warehouse usage, query history, and costs. Apply clustering keys and caching for faster performance.

 2- Snowflake Eco-system

  • Data Integration

o    ETL: BOOMI, DBT, Fivetran, Goggle Cloud (GCP), Informatica, Pentaho, SAP, STICH

  • Advanced Analytics

o    Big Data, ML and Data science: DataBricks, Data Robot, BigSquid

  • Governance and security

o    DataDog, Satori, Alation etc.

  • Business Intelligence

o    Analysis, Discover,

o    Reporting ops or analytics reporting to leadership to help their decision, data Visualize

·       TBLU, IBM, ADOBE, SAP, QLIK, LOOKER

  • Programming development: SNOW SQL, Snowflake UI - WorkSheet, DBEAVER, SeekWell, Agile Data Engine

  •  Native Programming

o    Interface: Python interface, §  PHP

o    Connectors: JDBC, §  ODBC 

Snowflake Summary:

Storage Layer

  • Function: Stores all data including tables and metadata.
  • How it Works: Data is automatically reorganized into compressed, columnar micro-partitions stored in cloud object storage (AWS S3, Azure Blob Storage, or Google Cloud Storage).
  • Key Feature: Decoupled from compute, enabling independent scaling. Data is immutable; updates create new micro-partitions.

Compute Layer

  • Function: Executes queries using virtual warehouses (clusters of CPU and memory).
  • How it Works: Queries are processed by virtual warehouses that can be started, stopped, or resized (from X-small to 6X-large).
  • Key Feature: Independent from storage. Scaling compute does not affect storage. Each query runs within a single warehouse.

Cloud Services Layer

  • Function: Acts as the control center, managing and coordinating all other layers.
  • How it Works: Handles authentication, access control, query parsing and optimization, transaction management, and metadata tracking.
  • Key Feature: Central entry point for all Snowflake operations and user interactions.

Consumption Layer

  • Function: Represents how data is accessed and used for analytics and reporting.
  • How it Works: Not a physical layer; built on top of Snowflake. Users interact with data via views, reports, and applications.
  • Key Feature: Transforms raw data into actionable insights through simplified and joined datasets.

 

Friday, July 30, 2021

Micromanagement is a style:

 It is a management style whereby the supervisor very closely observes the work of individual/employees. Twice a day, Daily and weekly meeting

·   Micromanagement (own resource or project team or individual) style is built around followings:

-        Centralized decision

·   Trust or insecurity

·   Continuous monitoring (Daily/weekly)

·   excessive Control

·        Inputs vs comments on everything (Being as a Guidance / direction vs criticizing)

·        Always looking for team feedback (Talking in back and trying to get the feedback from every team player on daily basis)

·        There is budget constraint

·        Time constraint

·        Team constraint

·   Always look for someone for in case escalation/failed

·   Only success will be count

·   This will promote authoritative management skills

 

·        There is implication for micromanagement, those are listed below

·   This does not allow individual or team to grow and they cannot take decision where they can make the decision

·   Employee leaving people first which end having org as well

·   Team never grow and always scared to take challenges

·   Failures have no protection and necessary learnings

·   Overtime perhaps team performance goes down

·   This does not allow team for cohesive model

·   Team learned what leader do

·   Challenge to build true leader vs authoritative leader

 

·        Do we really need Micromanagement?

·        Yes, but in certain circumstances. There are certain conditions where

·   Big initiative and multi vendors

·        this only needs at initial stage

·        No needs for Micromanagement after certain point of time

·        Time should be very time to watch process setup

Example: Micromanagement time is needed to setup process where things can go on smoothly (PI planning where everyone did get involved and every participant do certain thing and commit deliverable now, they are bound with commitment)

·        prepare delegates so they can take care

·        Where hard timeline, budget, and federal mandate

·        As a leader need to keep balance the work among the team and keep close eye on the work distribution, that only can come through micromanagement and that is why sometimes it is integral part of some of leaders 

 ·        Do we explain to Peer if we see similar practice?

Monday, April 20, 2020

Machine Learning

Supervised Learning:
It is categorized into two section
  1. Regression - predict results within a continuous output,(map input variables to some continuous function)
  2. Classification - trying to predict results in a discrete output (map input variables into discrete categories.)

Sunday, May 28, 2017

Enterprise and its values to Organization

Enterprise is all about single views of everything (solution and artifacts) from any context. Capability model is very important component of any enterprise which can bring any organization as of now strength at any point of time which can help industry to grow further. There can be different organizations, department, unit, location and all will have their systems using any technologies stacks and stream, at any point of time seeing in single view only enterprise can help. Development methodologies can be Scrum, Spiral, Waterfall but enterprise is unique to all of these.
How this can help, it encompass SOA, Business Model (BPM), Infrastructure model (capacity planning), information and architecture Model, security model,  Executive view (context model). This can build and reusable by among other business or expose to other respond to market quickly. Align generated artifacts with solution and right manner that will add great and best values of having enterprise in any organization.
enterprise helps organization to integrate all artifacts at single place with define rules, various tools and techniques, rules should be implemented right way otherwise Enterprise as a origination will lose its values and industry will keep making distance from it like in past.
Technology and business is complementing to each other at the same time it is changing very quickly, like in-house infrastructure changing to private cloud to service base cloud, Oracle/DB data analytics changed to Hadoop and similar tools, reporting method change, Machine Learning (python), dev-ops (including CI /CD) etc. using Enterprise Concepts these changes can be easily integrated and leverage to others within a single organization. 
Enterprise is flexible to use, easy to navigate, easy to maintain, align to industry, single view for everyone.

References:


Cloud Foundry - Details

Monday, January 23, 2017

Technologies will challenge Individual

New Era - It is Paradigm Shift for Developers and Operations

Server-less
   Cloud Base
      -  Amazon Lambda
      - Amazon Elastic Container

Data-lake (Different types of Database in single application)
     A single application can have multiple database (MangoDB, Oracle etc.)
      -  Building Micro Services for Individual DB and using API to support multiple devices.
      - Each micro services will be interacting to each other on some protocol.

Monolithic (SOA and Design Pattern) to Micro-services

Orchestrate service application to Self Managed Service application
   - SOA is orchestration base service (Rule, regulation guidelines etc) and services runs on that.
   - Micro-services is well behaved (Self Managed) service.

Artificial Intelligence in DevOps and Micro-services

Cloud Foundary