Open Sourcing Trillo Workbench - a Low-Code Platform
Trillo plans to open-source its low-code application platform called Trillo Workbench in the middle of the 4th quarter of 2022. We are open sourcing now as we believe it is robust, and its interface is mature to present a simplified view of the cloud. We would continue to improve it further with community involvement.
Based on our current information, it would be an industry-first open-source platform for server-side development. It eliminates the need for several platforms by combining the functionality of Integration-as-a-Service, Data-as-a-Service, Storage-as-a-Service, and Identity-as-a-Service in one platform. Trillo Workbench provides all these services within your VPC with the flexibility to customize each.
Trillo Workbench benefits have been proven for large-scale applications in production. We have faced no limitations while using it for various use cases. Using Trillo Workbench, developers can skip learning internals of the cloud. Instead, they are free to focus on the application. Due to these strengths, we feel confident that open-sourcing would democratize and increase the adoption of cloud application development.
Currently, it is available on the Google Cloud. We plan to make it available on Oracle, AWS and IBM clouds in the future.
The essential business benefits offered by Trillo Workbench are:
1. Slash Cost and Time up to 90% – Due to common inbuilt services and use of metadata and serverless code in an application development, it can slash time and cost by up to 90%.
2. Eliminates Cloud Complexities – Abstracting the cloud hides the complexities from application developers. They can develop on their computers without realizing the code runs on the cloud. For example, a developer can write code to save a file without knowing it is written to a cloud bucket.
What kind of use cases can be built with Trillo Workbench? Are there scalability, security, compliance, and disaster recovery limitations?
Trillo Workbench, behind the scenes, uses native cloud services. It follows the best practice recommended for each service. The end result is the same as if you would build it from the ground up except for the fact that you short-circuit 60–90% of the work. We found no limitations placed by the Trillo Workbench while using it in several hundred applications.
The following is a list of a few of several use cases implemented using Trillo Workbench.
1. Data Warehouse in the cloud: Creating a data warehouse using Google BigQuery/Cloud SQL by integrating with enterprise applications such as NetSuite, Workday, Salesforce, and Electronic Medical Records (EMRs). A set of Trillo workbench tasks periodically syncs the data from the source into the warehouse. Due to programming flexibility, we were able to achieve optimal performance than connectors provided by other platforms.
2. New application servers for healthcare, manufacturing, and retail distribution: Scalable, secure application servers (cluster of microservices) for the electronic medical record, manufacturing, and retail distributions.
3. File sharing and storage management: A large-scale service for storing and organizing files from multiple users/companies, access control over files and folders, file sharing, SFTP. A few examples: a media company is sharing files with customers and designers; a data analytics company receives data from health insurance companies and processes them.
3. AI/ML models serving: Interactive or batch processing of files/data records using AI/ML models. A few examples of its applications are — a) processing photos for defects detections and b) object detection, and c) processing documents for NLP. Some of these applications required high scalability.
4. Video transcription and text processing: Uploading several video files to a bucket, queueing for transcoding/transcription, and storing text in the database for further processing.
5. OCR and parsing using Document AI: Uploading documents as images and PDF. Preprocess files for OCR and text processing using Google’s Document AI, post-process results, and store them in the database. Provide API to integrate it within the enterprise workflow.
6. Processing documents and creating the semantic matching index: Using documents such as course material, candidate resumes, and other use cases; build a semantic search index in Google Vertex Matching Engine.
7. DICOM Server: Providing a multi-tenant, multi-region DICOM server to manage and distribute radiology images. The solution includes an on-premise gateway to upload images from the PACs servers securely.
8. FHIR Store: Mapping medical records into FHIR resources and storing them in an FHIR dataset.
9. Google Merchant Center Feed: Continuously updating Google Merchant Center with the product catalog.
Use Cases Not Supported by Trillo Workbench
A few use cases do not fall within the purview of an application server. Other platforms serve them better. They are worth mentioning and are listed below.
1. Remote File System: Replicating a shared remote file system is a use case that requires a network and operating system level tools. Therefore, it is not a valid use case for the Trillo Workbench.
2. AI/ML Model Training: Trillo Workbench is not used as an MLOps platform. Instead, Vertex-AI or KubeFlow is a better AI/ML training pipeline platform. But, we have used Trilo Workbench successfully for ingesting training data and preprocessing it.
3. Streaming BigData Pipeline: Kafka, Google’s Pub/Sub and DataProc work well for the big-data processing pipeline.
Features of Trillo Workbench
1. Trillo Workbench is a runtime: Trillo Workbench is a cluster of microservices that runs on Kubernetes. It is deployed in your cloud with a few clicks. Once deployed, you can forget about the cloud and interact with Trillo Workbench for application development.
2. Trillo Workbench is a server-side platform: Trillo Workbench is a server-side low-code platform that combines several cloud services into one — Integration-as-a-Service, Data-as-a-Service, Storage-as-a-Service, and Identity-as-a-Service to name a few.
3. Trillo Workbench provides common services out-of-the-box: Trillo Workbench provides all common services such as authentication, authorization, role-based access control, database layer as API, file management on the buckets, workflow management, schedules, tasks, audit logs, and several others needed in a backend server. It cohesively integrates all these services into one platform.
4. Trillo Workbench provides a UI console: The UI console lets you enter database schemas, roles, schedules, serverless functions, workflows, schedules, and other metadata. You deal with the application-level issues rather than the cloud internals while using the console.
5. Trillo Workbench is an API server: The most important part is a simple API that abstracts the cloud and permits you to write other clients or serverless functions remotely in your IDE on your computer.
6. Trillo Workbench lets you write plugins: Trillo Workbench provides several plugins to integrate with external services or processing, and you can also write your plugins using its simple programming model.
7. Trillo Workbench “is not” a UI-building tool: You build a UI using other open source technologies and use Trillo Workbench as a server using APIs.
Plugin Programming Model
Once you define the data model, roles, and policies using the Workbench UI, you are ready to write application logic as serverless functions. They plug in as API, event-driven triggers, long-running workflows, and scheduled tasks.
Programming Language Support
Trillo API client tool kit is currently provided in Java language. You can use the restful APIs for other languages. In due course, we plan to provide API toolkits for Python, Node, and Golang.
Trillo Workbench abstracts cloud-dependent functionality as a few limited interfaces. It provides specific implementations of these interfaces. Therefore, it is easy to make it available on different cloud platforms.
Trillo Workbench is available on the Google Cloud using GKE. We plan to provide it on the Oracle, AWS and IBM clouds in the future.
Since Microsoft Azure has its own low-code PowerBuilder, it may not be necessary, or a priority to provide on Azure.