snapblocs FAQs for Architecture-as-a-Service Data Platform

General FAQ

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?
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:
  • Data Flow - for moving data from various input data sources to target data destinations in-stream or bulk mode.
  • Data Transformation - for converting data from one format or structure into another form or structure.
  • Data-as-a-Service - simplifies access, accelerates analytical processing, secures and masks data, curates datasets, and provides a unified catalog of data across all data sources.
  • Data Lake - provides a set of integrated solutions (Data Flow, Data Transformation, Data Analytics, Data Lake) that ingests data from multiple data sources into a Data Lake. It also provides the data workflow to orchestrate data transformation and curation processes for business and operations analytics.
  • Elastic Stack+ - provides the ability to aggregate and analyze logs from all systems and applications. Create visualizations for applications and infrastructure monitoring, troubleshoot faster, and view security analytics on the Kubernetes platform. Businesses can focus on their business applications without having to manage Elastic Stack clusters.
  • Kubernetes+ - provides managed service for Kubernetes on AWS EKS. Allows a snapblocs user to create a Kubernetes stack by configuring AWS and Kubernetes options such as VPC, Subnets, and Kubernetes version and cluster capacity. Businesses can focus on their business applications without having to manage Kubernetes clusters.
  • Kafka+ provides a managed event streaming platform using Confluent Kafka on Kubernetes to move data from various input data sources to target data destinations in the stream. Allows a snapblocs user to create managed event streaming Kafka stack by configuring the data flow options, such as input source and target destination settings, and operational configuration for target runtime environment such as Kubernetes on Cloud platform (AWS, etc.). Businesses can focus on their business applications without having to manage Kafka clusters.
  • Microservices+ - provides complete lifecycle management of Microservices on Kubernetes. snapblocs users can provision/pause/resume/monitor/teardown Microservices on the managed Kubernetes platform. Businesses can focus on their business applications without having to manage Microservices infrastructure.
  • StreamSets Data Collector+ - provides data ingestion pipelines integrated with ETL processing for streaming and batch and change data capture (CDC). snapblocs users can create a data ingestion pipeline stack by configuring the data ingestion options such as input source and target destination settings and operational configuration for target runtime environment such as Kubernetes on Cloud platform (AWS, etc.). Businesses can focus on their business applications without having to manage StreamSets DC clusters.
  • More will be coming soon.
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?
  1. Sign up for a free snapblocs account at https://www.snapblocs.com/.
  2. Login to the snapblocs application on the Web browser using your snapblocs account.
  3. Claim your free AWS sandbox by clicking the CLAIM button.
  4. Go to the Stacks menu.
  5. Click "Configure new stack." 
  6. Select "Default" for the project for the new stack.
  7. Follow the stack creation wizard to configure the new stack.
    1. Select AWS cloud provider provided for your free sandbox account.
    2. Choose a platform blueprint (e.g., "Data Flow")
    3. Enter a stack name
What other lifecycles are available?
  1. 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. 
  2. 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.
  3. How to clone a stack - Clone the stack configuration to the same project or a different project.
    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. 
  4. 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:
  • Free Trial period: 15 days
  • Number of users: 3
  • Number of stacks: 5
  • Number of active deploys: 1
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.

1.0-JPE-JF



    • Related Articles

    • General Requirements

      The following lists the account requirements for using snapblocs. Valid email address for registration and notification Cloud provider account(s) for deploying stacks onto users cloud environment(s) Browser requirements The following recommendations ...
    • Role Group Definition

      Pre-setup Roles & Policies by default for your account: Note that the actual roles and policies of your account may be different from this list. Check the Access Control page for the latest settings. Role Group Name Group Description Account admin ...
    • RBAC Model

      The permission mechanism in snapblocs uses Role-based access control (RBAC) for restricting application features based on the roles of individual members within your account.  For example, a power user role allows you to manage projects and stacks. ...
    • Architecture as a Service

      The evolution of cloud computing makes it easier to build application stacks. Cloud computing started with the notion of "as a Service," providing on-demand provisioning ability. This "as a Service" model started with "Infrastructure as a service ...