Introducing Databricks Apps
Summary
-Databricks Apps, a new way to build and deploy internal data and AI applications, is now available in Public Preview on AWS and Azure.
-Ideal use cases include data visualization, AI applications, self-service analytics, and data quality monitoring.
-It supports Dash, Shiny, Grado, Streamlit, and Flask app development frameworks.
-Automatic provisioning of serverless compute provides easy app deployment.
-Built-in governance with Unity Catalog, and secure user authentication through OIDC/OAuth 2.0 and SSO.
Today, we are thrilled to announce the Public Preview of Databricks Apps, the fastest way for Data and AI teams to build and deploy internal applications directly on the Databricks Data Intelligence Platform.
Databricks Apps enables developers to build apps natively in Databricks with popular frameworks, such as Dash, Shiny, Gradio, Streamlit, and Flask. One of the key advantages of Databricks Apps is the ability to create data applications tailored for non-technical users using code instead of SQL. This opens up new possibilities for making complex data insights accessible to a wider audience within organizations. For instance, a marketing team can leverage Databricks Apps to create customized dashboards that visualize campaign performance metrics, allowing team members without technical backgrounds to interpret and act on the data easily. Moreover, Databricks Apps can incorporate AI components, enabling developers to call specific AI models when they need more flexibility. This integration of AI capabilities allows for the creation of sophisticated applications that can perform tasks such as sentiment analysis on customer feedback or predictive modeling for sales forecasts, further enhancing the value of data insights for non-technical users.
Once built, the apps are deployed and fully managed directly in Databricks, saving teams the effort to configure and manage infrastructure. These apps are fully governed, respecting the data access controls already configured in Unity Catalog, and controlling the distribution to users using the same unified governance model. With Databricks Apps, organizations can harness the full potential of their data and AI investments by creating custom applications that run seamlessly within their Databricks environment.
The challenge in building data applications
In today's data-driven world, organizations are seeking ways to extract more value from their data assets. However, building and deploying internal data applications has traditionally been a complex and time-consuming process. Developers need to spend time on infrastructure management instead of focusing on app development. Data governance and compliance require manual implementation of access controls. Additionally, app sharing and permissions are managed separately from other data assets, creating a disjointed governance experience.
Databricks Apps: Quickly build secure data applications
Databricks Apps addresses these challenges head-on, providing a powerful yet simple experience for building internal data applications. By adopting Databricks Apps, organizations can unlock numerous advantages:
Simple to Build
Databricks Apps helps you build apps that run directly within your Databricks environment. Developers can also build with tools, such as Visual Studio Code and PyCharm, ensuring seamless access to your data and AI models. With Databricks Apps, data scientists and engineers can rapidly build and iterate on apps using familiar Python frameworks such as Dash, Gradio, and Streamlit. You can also choose from pre-built Python templates that allow you to quickly build flexible apps.
"Databricks Apps helped me turn my RAG proof of concept into a polished and branded application. We built a RAG system to answer user questions by utilizing our company's extensive knowledge base." - Heather Gomer, SAE International
Production Ready and Automated Deployment
Databricks Apps does not require developers to build additional infrastructure. Apps run on automatically provisioned serverless compute, allowing deployment with ease. Databricks Apps also embraces industry-leading development practices, offering seamless integration with your preferred workflow. Whether you choose to work directly within the Databricks workspace or leverage your favorite IDE, you'll benefit from support for Git version control and CI/CD pipelines, ensuring your internal apps are production-ready.
Once created, Databricks Apps offers simplicity in discovery and access. When an app is deployed, it generates a unique URL that developers can easily share with intended users, providing direct access to the application. Additionally, users within an organization can discover apps created by their colleagues by navigating to the "compute" tab and then selecting the "apps" tab, enabling internal app explorations.
“The seamless integration of Databricks Apps into our DevOps processes enables us to quickly demonstrate and test new features with users while also providing a secure, production-ready front end for the internal application -all without needing additional infrastructure." - Lukas Heidegger, E.ON Digital Technology
Built-in Governance
With Databricks Apps, data only leaves your Databricks environment if you choose to share it. Each app is fortified with robust security measures, including granular access control to ensure precise data permissions, automatically managed service principals for secure application-to-application communication, and automatic user authentication leveraging OIDC/OAuth 2.0 and SSO for seamless and secure user access.
Furthermore, integrating Unity Catalog's lineage capabilities provides comprehensive visibility into your applications' data origins, transformations, and usage, enhancing data traceability and compliance. This integrated approach ensures that your data applications adhere to organizational policies and regulatory requirements while also facilitating data discovery and promoting data use across teams.
“By using Databricks Apps, we saved many rounds with the security and infrastructure team and were able to instantly share our app with stakeholders in production." - Cesar Augusto Charalla Olazo, Addi
Common App Patterns
Databricks Apps can be used to build a variety of internal applications, including:
- Custom Data Visualization: Create dynamic, data-driven visualizations that allow business users to explore and analyze data in real-time.
- AI Apps: Develop applications that leverage machine learning models for tasks like predictive maintenance, customer segmentation, or fraud detection.
- Self-Service Analytics: Enable business users to perform complex analyses through user-friendly interfaces, reducing the burden on data teams
- Data Quality Monitors: Build custom tools to track and improve data quality.
“We realized the user-facing data interface of our Health, Safety & Environment Intelligence Platform fully with Databricks Apps. We now host a Streamlit dashboard, featuring a semantic search tool, alongside various other dashboards." - Lukas Heidegger, E.ON Digital Technology
“Posit (2024 Databricks Developer Tools Partner of the Year) has long believed in the power of creating applications using code-first tools to help organizations derive insights from their data. This belief inspired the creation of Shiny for R, Shiny for Python, and Posit Connect, as well as our collaboration with Databricks Apps to support a variety of applications. We look forward to our continued partnership with Databricks to make code-first tools as ubiquitous and accessible as possible.”
Tareef Kawaf, CEO, Posit
“Plotly (2024 Databricks Customer Impact Partner of the Year) applauds the introduction of Databricks Apps 👏 and its enablement of analytics professionals to serve business users. Databricks Apps offers an easy way for Databricks customers to begin journeys toward using Databricks with Plotly’s Dash open-source library for the range of sophisticated production-grade data app use cases that Plotly is known for via its Dash Enterprise offering.”
Dave Gibbon, Sr. Director - Strategic Partnerships at Plotly
Getting Started with Databricks Apps
Databricks Apps is now available for all workspaces in the supported regions.
To write your first app, go to + New and click Apps. Follow the instructions on the screen. Make changes using your favorite source code editor, and deploy!
See the documentation (regional availability: AWS, Azure) for more information on all the features. We can’t wait to see what you will build with Databricks Apps, where you can start building powerful, data-driven applications today and unlock new possibilities for your organization.