FOSS Project Spotlight: Pydio Cells, an Enterprise-Focused File-Sharing Solution
Pydio Cells is a brand-new product focused on the needs of enterprises and large organizations, brought to you from the people who launched the concept of the open-source file sharing and synchronization solution in 2008. The concept behind Pydio Cells is challenging: to be to file sharing what Slack has been to chats—that is, a revolution in terms of the number of features, power and ease of use.
In order to reach this objective, Pydio's development team has switched from the old-school development stack (Apache and PHP) to Google's Go language to overcome the bottleneck represented by legacy technologies. Today, Pydio Cells offers a faster, more scalable microservice architecture that is in tune with dynamic modern enterprise environments.
In fact, Pydio's new "Cells" concept delivers file sharing as a modern collaborative app. Users are free to create flexible group spaces for sharing based on their own ways of working with dedicated in-app messaging for improved collaboration.
In addition, the enterprise data management functionality gives both companies and administrators reassurance, with controls and reporting that directly answer corporate requirements around the General Data Protection Regulation (GDPR) and other tightening data protection regulations.Pydio Loves DevOps
In tune with modern enterprise DevOps environments, Pydio Cells now runs as its own application server (offering a dependency-free binary, with no need for external libraries or runtime environments). The application is available as a Docker image, and it offers out-of-the-box connectors for containerized application orchestrators, such as Kubernetes.
Also, the application has been broken up into a series of logical microservices. Within this new architecture, each service is allocated its own storage and persistence, and can be scaled independently. This enables you to manage and scale Pydio more efficiently, allocating resources to each specific service.
The move to Golang has delivered a ten-fold improvement in performance. At the same time, by breaking the application into logical microservices, larger users can scale the application by targeting greater resources only to the services that require it, rather than inefficiently scaling the entire solution.Built on Standards
The new Pydio Cells architecture has been built with a renewed focus on the most popular modern open standards:
- All files are served through a standard S3 API to allow any existing client application built on Amazon Storage to query Pydio directly.
- Pydio's own, REST API has been documented through the Linux Foundation's Open API (previously Swagger) specification, giving developers the ability to generate clients for the API automatically in a wide variety of different languages.
- The new native authentication within Pydio has been built on OpenID Connect, providing safe, simple integration with existing enterprise Authentication Servers.
- Pydio Cells' internal microservice architecture uses DevOps standards, such as GRPC, 12-Factor App methodology and Protobuf, providing compatibility with popular developer tools.
Functionality around security policies also has been given a major upgrade, with a focus on simplicity, practicality and control:
- Administrators now can assign rules to groups and individuals based on IP addresses, location, time and other factors. Policies are managed from a clear interface built using Google's intuitive Material Design.
- Similarly, access to file metadata and API access (for external systems, apps and services) are controlled via the same overarching policies. And with "deny by default" access rights, administrators can be confident that policies are enforced.
Figure 1. Administrator DashboardDedicated GDPR Logs and Reporting
Because of the GDPR, the administrator interface in Pydio Enterprise has been extensively redeveloped to deliver clarity and control, and to simplify the task of managing data for compliance. Pydio Cells now features GDPR-compliant logs (separated from the system logs), giving administrators uncluttered access to all the data relevant for data protection regulation and auditing. These logs can be filtered and exported as spreadsheets or CSV files for external reporting.Additional Admin Improvements
- A powerful new LDAP integration interface allows administrators to filter and map existing LDAP databases to attributes in Pydio, providing clear control for accurate schema matching. This delivers a fast, workable solution at the LDAP data import phase, ensuring that inevitable inconsistencies and corner cases are dealt with at source.
- Versioning of documents is now controlled natively within Pydio with intuitive graphic representation to configure retention periods. This allows administrators to define clear policies for keeping files and versions over time, and minimizes unnecessary wastage of storage capacity.
- Pydio Cells also offers file encryption within the application, with no need to trust the underlying storage. Administrators can export and import encryption keys through a dedicated password-protected function.
- As part of the new microservice architecture, the admin interface includes a granular overview of all services running within Pydio. Data administrators now can see the load on each service, monitor application performance and alert devops to impending capacity problems.
Pydio Cells delivers file sharing and collaboration in a way that is more familiar, comfortable and intuitive for users of modern collaborative apps. It lets users decide how to share files and information based on knowledge of their own teams, workflows and working patterns. This end-user freedom also takes the responsibility for creating effective workspaces away from overburdened administrators.
Figure 2. User Dashboard
End users now can create their own flexible "Cells", combining files and folders from any location. Cells provide a space for collaborating on documents, which can be based on teams, projects or any other user-defined topic. The Cells concept will be familiar to modern workers used to collaborating on "channels" within popular group-chat applications.
Cells can be shared internally or externally to the organisation, with users able to add new individuals and groups to the Cell. In-app, instant messaging within each Cell then provides a focused channel for group communication around the theme.
Pydio Cells is available for download from https://pydio.com in two flavors: a free community-supported version with contract options and a commercial version with unlimited Level 3 contract support for enterprise deployments. Pricing is available on the website.