What is a Data Platform?
A Data Platform is an integrated technology solution that allows data in the data hub to govern, access, and deliver to users, data applications, or other technologies for strategic business purposes. A Data Platform combines all data from various data sets and acts as a centralized data hub for analysis and integrations.
Data Platforms' benefits include their ability to give users a cohesive view of data from multiple sources, make data available throughout an enterprise to those with proper permissions, and improve data governance. Get more information at the Data Management Platform in Wikipedia.
What is an Architecture Blueprint?
snapblocs Architecture Blueprints provide proven architecture that delivers common Data Platform use cases, making it simple to provision and manage Data Platform stacks. snapblocs Architecture Blueprints consist of open source components and proven design patterns based on common real-world implementations. They are designed based on standard and widely accepted best-practice industrial approaches. For example, each snapblocs Architecture Blueprint includes dashboards for observability (metrics, logs, APM) and alerts to analyze running stacks and gain actionable insights quickly and securely. snapblocs follows the cloud provider recommendations.
What is a Stack?
A Stack is an instance of a snapblocs Architecture Blueprint. It consists of a set of components pre-configured and ready for deployment in your cloud environment. It includes all the tools needed for day-2-operations.
What is a Project?
A project is a set of stacks grouped by function or a target environment for stack management. An authorized user can create a snapblocs project to organize stacks by an environment (i.e., production) so that only project members can manage stacks in the restricted environment.
Also, a project can be created to organize stacks by a use case that requires a uniform stack configuration (i.e., a stack node size, CPU, memory, etc.) as they are created from the same Data Platform.
What is a Component?
A component is an open-source software that is installed as a part of the Data Platform blueprint. It is configured through the provided snapblocs UI (called dpStudio) without writing any infrastructure code. It is integrated with other components within the Data Platform blueprint to serve the purpose of the Data Platform blueprint.
For example, the Kafka component in the Data Flow blueprint is integrated with other components like Elasticsearch and Apache NiFi. It allows the Kafka component to connect to Elasticsearch and NiFi to securely and reliably publish and consume the messages for the data ingestion solution that moves data from a source data repository to a target data repository.
What is Architecture as a Service?
Architecture as a Service promotes solutions that focus IT efforts on meeting business needs and supporting corporate goals. Architecture Blueprints define the guiding principles and approach to development that lead to our target architecture, the underlying framework, the shared services, and the standardized components used to build new architecture. snapblocs provides a collection of Architecture Blueprints for creating prebuilt Data Platform stacks.
Below are just a few of the Architecture Blueprints snapblocs provided:
Does snapblocs have a UI?
snapblocs has an easy-to-use user interface, dpStudio, allowing a user to quickly design, configure and deploy a Data Platform Stack from predefined Architecture Blueprints. snapblocs also provides management tools for managing Projects, Users, Stacks, Permissions, and monitoring tools for observing system behaviors.
What Architecture Blueprints are available?
As of the first release, snapblocs supports the following Architecture Blueprints:
Other Architecture Blueprints will be coming soon.
What are the steps to create a Stack?
- Sign up for a free snapblocs account at https://www.snapblocs.com/.
- Login to the snapblocs application on the Web browser using your snapblocs account.
- Claim your free AWS sandbox by clicking the CLAIM button.
Go to the Stacks menu.
Click "Configure new stack."
Select "Default" for the project for the new stack.
Follow the stack creation wizard to configure the new stack.
Select AWS cloud provider provided for your free sandbox account.
Choose a platform blueprint (e.g., "Data Flow")
Enter a stack name
What other lifecycles are available?
How to pause a stack - Pause any stack without destroying the data or configuration. Pausing a stack saves cloud provider costs, and the stack can be deployed again when needed without rebuilding the stack. How to resume a stack - Resume the paused stack. Once the stack enters a Deployed state, all Kubernetes worker nodes will be recreated, including the control plan as before the Pause state. After resuming the stack, all Component applications will be accessible as those pods are recreated. Also, the Kubernetes volumes will be attached to pods so that all data will be accessible as before the Paused state.
For example, once a stack configuration is created on one project, an authorized user can easily clone the stack configuration and update some configuration such as cluster parameters and target environment settings and deploy the cloned stack to the upper environments such as staging or production environment.
How to move a stack - Move the stack configuration from the project where the stack was created to a different project. Once a stack has been configured for one project, an authorized user can easily move the stack configuration to a different project and then update the configuration (such as cluster parameters and target environment settings). The new stack can then be deployed to staging or production environments.
Can new Architecture Blueprints be requested by customers?
The snapblocs engineering team will review all requests for new Architecture Blueprints from customers and add approved Architecture Blueprints to the snapblocs Architecture Blueprint Roadmap.
In the future, a plugin will allow open communities to build and contribute their Architecture Blueprints to the snapblocs catalog.
Why snapblocs and not open source products?
Open source is great, but it can prove challenging to manage and support in a standardized way, at scale, for mission-critical applications. Installing each open source component on Kubernetes is time-consuming and error-prone due to a lack of central visibility, inconsistent security practices, and complex management processes.
snapblocs combines the power of SaaS with best-of-breed open source products that deliver Architecture as a Service in a single, unified platform. Significantly reduce the time required to install, integrate and check compatibility for individual components.
For example, installing and configuring Elastic ELK (Stack) on Kubernetes and allowing only HTTPS connection to Kibana with basic authentication is not available out of the box. It requires research from the open community forums and a lot of work to make them secure. Also, making Elasticsearch securely connect to other components on Kubernetes is a difficult task. However, snapblocs can provide solutions based on best practices through thoroughly tested integrated solutions.
What is a Free Account?
To test drive snapblocs, register for an Individual+ Plan. Experience most of the features with the following restrictions:
Are there any costs associated with running an Individual+ plan?
There are no snapblocs license costs for the Individual+ plan. snapblocs also provides a $30 AWS Sandbox credit you can deploy stacks for free. However, charges will apply for AWS or GCP resources in use by the customer's AWS or GCP account while running provisioned stacks. Terminate the running stacks that are not in use to avoid charges.
Can the stack and data created during the Free Trial still be accessed at the end of the Free Trial?
After the Free Trial is over, the stack and all data will no longer be available.
Can the data still be accessed after terminating a Stack?
During the termination of a stack, there are two options; retain or delete the data. To retain and access all data attached to a stack, do not delete the Kubernetes Volume associated with the stack otherwise all of the data will be wiped out and can no longer be accessed.