DZone
Thanks for visiting DZone today,
Edit Profile
  • Manage Email Subscriptions
  • How to Post to DZone
  • Article Submission Guidelines
Sign Out View Profile
  • Post an Article
  • Manage My Drafts
Over 2 million developers have joined DZone.
Log In / Join
Please enter at least three characters to search
Refcards Trend Reports
Events Video Library
Refcards
Trend Reports

Events

View Events Video Library

Zones

Culture and Methodologies Agile Career Development Methodologies Team Management
Data Engineering AI/ML Big Data Data Databases IoT
Software Design and Architecture Cloud Architecture Containers Integration Microservices Performance Security
Coding Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks
Culture and Methodologies
Agile Career Development Methodologies Team Management
Data Engineering
AI/ML Big Data Data Databases IoT
Software Design and Architecture
Cloud Architecture Containers Integration Microservices Performance Security
Coding
Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance
Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks

Because the DevOps movement has redefined engineering responsibilities, SREs now have to become stewards of observability strategy.

Apache Cassandra combines the benefits of major NoSQL databases to support data management needs not covered by traditional RDBMS vendors.

The software you build is only as secure as the code that powers it. Learn how malicious code creeps into your software supply chain.

Generative AI has transformed nearly every industry. How can you leverage GenAI to improve your productivity and efficiency?

Related

  • Handling Embedded Data in NoSQL With Java
  • Database Keys: A Comprehensive Guide
  • Query-First Approach in Cassandra
  • Designing Databases for Distributed Systems: Data Management Patterns for Microservices and Cloud-Native Applications

Trending

  • Optimizing Serverless Computing with AWS Lambda Layers and CloudFormation
  • Next Evolution in Integration: Architecting With Intent Using Model Context Protocol
  • ITBench, Part 1: Next-Gen Benchmarking for IT Automation Evaluation
  • Apache Spark 4.0: Transforming Big Data Analytics to the Next Level
  1. DZone
  2. Data Engineering
  3. Databases
  4. Database Administration on Snowflake

Database Administration on Snowflake

This is part one of a series of articles that will unpack just what near zero management means.

By 
John Ryan user avatar
John Ryan
·
Jun. 11, 19 · Tutorial
Likes (2)
Comment
Save
Tweet
Share
13.8K Views

Join the DZone community and get the full member experience.

Join For Free

Snowflake is a cloud-based Data Warehouse platform that proudly boasts near zero management. This is part one of a series of articles that will unpack just what that means.

I was recently working for a major UK customer, where the system manager said, “Snowflake says they need Zero Management, but surely that’s just a marketing ploy.” Most Solution Architects use the term “Near Zero Management” which is probably more accurate. However, it got me thinking — is it true?

Will DBA’s go the way of the 1970s Computer Operators and become extinct as a species?

Listed below are some of the tasks needed for a System or Database Administrator (DBA), and why they are no longer needed with Snowflake.

  • Disk Space Capacity Planning: While your administrators should keep an eye upon the total storage used, there’s no need to create spreadsheets with projections for disk space requirements and capacity planning because it’s impossible to run out of space. In short, your company would go bankrupt before it used up all the disk capacity of a major cloud provider like Amazon or Microsoft.
  • Up Front Machine Sizing: Normally, when you deploy a new analytics application your DBA needs to agonize overestimates of compute processing, memory requirements, and estimates of initial user numbers and projected growth rates. These are no longer needed with Snowflake, where the administrator can define an unlimited number of Virtual Warehouses in one of a range of T-Shirt Sizes, and then if the compute processing is too small, or user numbers suddenly double, these can be adjusted on-the-fly, typically applied within milliseconds.

Image title

  • The SQL statement above illustrates the command needed to resize a virtual warehouse. In this case, the size is set to LARGE, and although initially one cluster of 8 nodes is allocated, the system will automatically scale out to 4 clusters as additional users run queries, a total of 32 nodes.
  • Provide a Disaster Recovery Data Centre: On both AWS and Azure, as data is committed, it is automatically written to three data centers in a given region, and the system can withstand the loss of up to two systems. This means, with no additional effort, your data warehouse is probably safer than your primary feeder systems.
  • Physical or Network Security: Snowflake includes a huge array of built-in security features to guarantee the security of your data. This includes end-to-end 256-bit encryption, multi-factor authentication, an optional private link connection between the Snowflake and your private Virtual Private Cloud and IP address whitelisting or blacklisting of access using network access policies. Finally, for financial services applications, Snowflake provides the option of a Virtual Private Snowflake deployment using a dedicated and managed instance in addition to the standard security features described.Image title
  • Physical Database Design and Indexing: Oracle includes an entire armory of indexes including Bitmap, B-Tree, Clustered, Function-Based Indexes and Index Organised tables. Each index can then be globally or locally partitioned, and these need to be carefully managed to ensure they are not accidentally disabled, and they are correct for the workload applied. Every table over 2Gb in size is recommended to be partitioned, and this produces further design and maintenance overhead. Snowflake, however, has no indexes whatsoever and instead of defining partitioning on specific keys to maximize query performance, every column is automatically partitioned with no overhead or maintenance required.
  • Apply Software Upgrades: A large corporate could host thousands of production, test and development databases with a constant stream of operating system, network and database system patch releases and upgrades. Every few years, database vendors release a major software release which often needs downtime and data migration to apply. Snowflake, however, silently applies changes without any effort, downtime or interruption to service. New features are constantly being rolled out, and improvements made. Even hardware upgrades are silently applied, and the only difference the customer knows is when tasks run faster.

Database Administration on SnowflakeNo DBA? Really?

In reality, any large, and complex computer system will always need specialists to monitor and manage the system, and (if nothing else), to monitor the disk space used, and the cost of running the system. The screenshot below shows a pie chart showing the percentage cost allocated by each virtual warehouse.

Image title

The reality is, most running systems will still need specialists to manage the following:-

  • Backup and Recovery: Although hugely simplified, it’s important to be able to quickly recover from system or human error, and quickly restore corrupted data.
  • Manage Costs: Although it’s possible to spin up, resize or suspend a compute clusters within seconds, somebody must maintain control, and be accountable for costs. As billing is charged by the second, it becomes increasingly important to suspend warehouses when they are no longer needed, and while there’s the temptation to turn the Data Lake into an Ocean, somebody needs to organize the data, and ensure resources are the money is spent wisely.
  • Software Development Lifecycle Management: Will always be a challenge for multi-terabyte systems. As compute power becomes increasingly available, business users will want to do more, but somebody will still need to carefully manage code and data migration from development, test, and production.
  • Tune Warehouses: Snowflake gives the unique opportunity to adjust both the size of the cluster (to run faster, more complex queries) and the concurrency which means it can be adjusted to handle more users. The DBA needs to monitor the system, and adjust virtual warehouses when appropriate.

In the next article, I’ll explain in more detail which tasks still remain for DBAs and System Administrators. It’s fair to say, however, with the wholesale migration to the Cloud, the landscape is changing, and DBAs will be freed up from the more mundane tasks.

Disclaimer: The opinions expressed in my articles are my own, and will not necessarily reflect those of my employer (past or present) or indeed any client I have worked with.

Note: This article was first published on Analytics Today as Database Administration on Snowflake.

Database design

Published at DZone with permission of John Ryan, DZone MVB. See the original article here.

Opinions expressed by DZone contributors are their own.

Related

  • Handling Embedded Data in NoSQL With Java
  • Database Keys: A Comprehensive Guide
  • Query-First Approach in Cassandra
  • Designing Databases for Distributed Systems: Data Management Patterns for Microservices and Cloud-Native Applications

Partner Resources

×

Comments
Oops! Something Went Wrong

The likes didn't load as expected. Please refresh the page and try again.

ABOUT US

  • About DZone
  • Support and feedback
  • Community research
  • Sitemap

ADVERTISE

  • Advertise with DZone

CONTRIBUTE ON DZONE

  • Article Submission Guidelines
  • Become a Contributor
  • Core Program
  • Visit the Writers' Zone

LEGAL

  • Terms of Service
  • Privacy Policy

CONTACT US

  • 3343 Perimeter Hill Drive
  • Suite 100
  • Nashville, TN 37211
  • support@dzone.com

Let's be friends:

Likes
There are no likes...yet! 👀
Be the first to like this post!
It looks like you're not logged in.
Sign in to see who liked this post!