En la opinión general está implantada la idea que Apple es una empresa cerrada y bastante hermética. Y lo es en algunos aspectos, obviamente. Pero en otros es un ejemplo de empresa que apuesta por el código abierto. No solo el lenguaje Swift es de código abierto, así como su compilador y todos los componentes, también el núcleo Darwin sobre el que funcionan macOS o iOS está liberado o el motor de Safari, WebKit, que Google usó durante muchos años para su propio navegador Google Chrome.
Unido a esto tenemos muchos pequeños componentes de todos los sistemas, cuyo código es abierto y podemos acceder al mismo, verlo, crear nuestra propia versión o incluso colaborar en el proyecto de evolución del mismo.
En esta dinámica de liberar el código de componentes claves del sistema, el pasado mes de abril de 2018 Apple anunció la liberación del código de su base de datos FoundationDB, comprada en el año 2015 y parte esencial de algunos componentes que usa en sus sistemas. Y ahora, Apple ha anunciado la liberación del código de la capa Record de FoundationDB que es la implementación específica de base de datos que da servicio al propio servicio de CloudKit, según ha informado la compañía.
Según las palabras de Apple:
Hoy liberamos la capa FoundationDB Record, que provee de una semántica de base de datos relacional sobre FoundationDB. Esta capa proporciona gestión de esquemas, facilidades en la indexación y un conjunto enriquecido de capacidades de consulta. La capa Record es usada en producción por Apple para dar soporte a cientos de millones de usuarios en distintas aplicaciones o servicios.
Aplicaciones como Recordatorios o Notas, hacen uso de esta capa de base de datos que hoy ha sido liberada, por lo que eso ayudará a mejorar los incipientes servicios en la nube que hoy día se utilizan y además podrían permitir la incorporación de esta base de datos y tecnología en otras soluciones de lado servidor.
Una de las grandes bondades de este sistema es que permite un trabajo a gran escala, con una capacidad de escalado de necesidades en sí misma muy alta. Literalmente podemos tener millones de instancias de base de datos gestionadas desde un solo cluster de FoundationDB y permitir una gestión muy eficiente en sistemas muy grandes que requieren dar soporte a grandes infraestructuras.
Apple sabe que la nube es esencial hoy día, y columna vertebral de otras grandes tecnológicas como Microsoft, Amazon o Google (la propia Apple usa servidores de estas compañías para sus servicios). Por ese motivo está apostando por ofrecer las mejores tecnologías que dispone, como código abierto, para conseguir implementar estas en servicios y apps, además de darles una evolución que permita implicar a desarrolladores no solo de la propia compañía, también externos y de otras compañías que ayuden a evolucionar esta tecnología.
Si tenéis interés en saber más del tema, Apple ha publicado un paper con toda la información acerca de esta tecnología y cómo funciona, que es muy interesante técnicamente. Podéis leerlo pulsando en este enlace.