- Supabase completó la adquisición final de la patente de OrioleDB
- Otorga una licencia no exclusiva de la patente estadounidense 10,325,030 (Durable multiversion B+-tree) a todos los usuarios de OrioleDB
- OrioleDB es una extensión de alto rendimiento que reemplaza el motor de almacenamiento existente de Postgres y mejora significativamente el rendimiento y la escalabilidad en entornos cloud
- El proyecto seguirá desarrollándose como open source y apunta a su estandarización e integración al núcleo mediante colaboración con la comunidad de Postgres
- La licencia de la patente tiene como objetivo la protección de propiedad intelectual (IP) y funciona como un "escudo" frente a amenazas contra el open source
Publicación de la patente de OrioleDB y contexto de la adquisición
- Supabase finalizó recientemente el proceso completo de adquisición legal de OrioleDB
- Ahora posee todos los derechos, incluida la patente estadounidense 10,325,030 (Durable multiversion B+-tree)
- Desde ahora, Supabase ofrece oficialmente esta patente de forma no exclusiva a los usuarios de OrioleDB y de todos sus forks, incluidos los servicios comerciales
- Esta política de licencias se aplica conforme a la licencia de OrioleDB
Resumen de OrioleDB y rendimiento
- OrioleDB es una extensión de almacenamiento que aprovecha el sistema de almacenamiento conectable de Postgres
- Funciona como un reemplazo drop-in del motor de almacenamiento existente de Postgres
- Maximiza el rendimiento y la escalabilidad de Postgres con optimización para hardware moderno e infraestructura cloud
- Según benchmarks oficiales, muestra un rendimiento aproximadamente 5.5 veces superior al motor Heap (TPC-C, con base en 500 warehouses)
Dirección del proyecto y política open source
- Supabase, junto con el equipo de OrioleDB, se enfoca en desarrollar un motor de almacenamiento de alto rendimiento con una estrategia Postgres-first
- OrioleDB es un proyecto open source, y cualquiera puede contribuir con código, documentación, pruebas, issues y más
- El objetivo es completar un motor de almacenamiento drop-in basado en la Table Access Method API de Postgres
- En colaboración con la comunidad de Postgres, se está impulsando la estandarización e integración a la rama principal de OrioleDB como módulo de extensión
Política de licencias y compatibilidad de IP
- La licencia de OrioleDB está redactada con base en la licencia de PostgreSQL
- Supabase ofrece una licencia no exclusiva para que todos los usuarios de OrioleDB puedan usar libremente la patente (US 10,325,030)
- Esta patente funciona como un "escudo" para defenderse de litigios hostiles de propiedad intelectual que amenacen al open source
Estrategia de evolución alineada con Postgres
- OrioleDB no busca competir con el propio Postgres; su objetivo es mejorar las capacidades y el rendimiento de Postgres
- A largo plazo, la dirección ideal es que OrioleDB se integre al repositorio oficial de Postgres
- Para ello, se mantiene una colaboración continua con la comunidad de Postgres en parches relacionados con la extensibilidad del motor de almacenamiento
- Se sigue impulsando de forma constante la mejora de rendimiento y estabilidad, la validación en entornos de producción, la documentación y el fortalecimiento del onboarding
- Se fomenta compartir benchmarks, notas de migración y feedback de uso real, así como la discusión activa en la comunidad técnica, probarlo directamente y contribuir con issues o PRs
1 comentarios
Opiniones de Hacker News
Tras revisar rápidamente la patente y el código, me dio la impresión de que casi toda la investigación proviene de trabajos previos realizados por muchos científicos
Aunque se comparta con buenas intenciones lo que se robó a otros, sigue siendo robo
Que la oficina de patentes de EE. UU. haya aprobado la patente no significa que realmente se haya inventado algo nuevo
Más bien, solo significa que se convenció a un funcionario administrativo para obtener una base con la cual afirmar que la investigación ajena es propia
Si quieren estar del lado correcto, deberían desechar esta patente y disculparse con la comunidad de investigación de la que intentaron apropiarse
Me gustaría saber cómo llegaste a esa conclusión
La mayor parte de lo que aparece en el cuerpo de una patente necesariamente será algo ya conocido
Lo importante es si las reivindicaciones de la patente incluyen contenido nuevo
La descripción de la patente debe ser lo suficientemente detallada como para que un experto ordinario en el área pueda reproducirla, y no basta con que simplemente se puedan encontrar pasos parecidos en trabajos previos
El nivel de detalle que ponen los abogados varía según el caso, y a veces hasta hay que explicar de forma extensa cosas como CPU o programas
Para evitar controversias, conviene incluir también técnicas bien conocidas; de lo contrario, después se puede terminar en una pelea legal por cosas insignificantes
Me parece una evaluación demasiado dura hacia Supabase
La investigación es importante, pero el hecho de que existan doctrinas de la USPTO como
Reduction to Practicereconoce precisamente que todo se construye sobre investigación previaNo se debe ignorar que armar los componentes y crear un sistema que realmente funcione ya puede ser en sí mismo una novedad
https://en.wikipedia.org/wiki/Reduction_to_practice
Sobre la idea de “eliminen la patente”, lo que Supabase está haciendo ahora en la práctica se parece bastante a eso
Como cualquiera queda protegido por esa patente, se vuelve un poco más fácil defenderse de patent trolls o demandas de propiedad intelectual
No termino de entender esta opinión
En la práctica, Supabase está intentando liberar la patente como open source y además está trabajando para hacer upstream a Postgres
Compraron otra empresa, obtuvieron la patente y ahora incluso están gastando en abogados para devolverla a la comunidad
Cuando una empresa actúa mal, claro que corresponde criticarla, pero este comentario parece una indignación un poco forzada
Si cada vez que una empresa intenta interactuar con la comunidad recibe este tipo de ataque, al final dejarán de participar
Aunque haya aspectos criticables, como cambios de licencia, también creo que hay que celebrar las acciones positivas
Un cambio así beneficia a toda la comunidad
Lo que vi en el blog
“Esta patente sirve como escudo para proteger al open source frente a amenazas de IP hostiles”
Pero la licencia actual incluye
“Si un usuario con licencia presenta una demanda contra Supabase, esa licencia termina desde ese momento”
Ese texto implica que incluso un asunto legal menor, como una disputa fiscal, podría hacerte perder la licencia
Desde la perspectiva de una entidad estatal eso podría ser una carga, así que quizá sería mejor redactarlo de forma más acotada al tema de patentes o usar una licencia certificada por la OSI
https://github.com/orioledb/orioledb/blob/main/LICENSE
(CEO de Supabase)
Voy a revisar esto otra vez con el equipo legal para dejarlo más claro
Nuestra intención es clara, y si hay ejemplos u opiniones útiles, consideraremos mejoras incluso al nivel de hacerlo irrevocable
También estamos abiertos a donar la patente en sí, si la comunidad está preparada para asumir el costo de administrarla
La licencia Apache 2.0 es mejor para temas de patentes
Termina la licencia en caso de litigios de patentes hostiles, así que temas como impuestos no hacen que se cancele la licencia
https://opensource.org/license/apache-2-0
Es un escudo para Supabase, no un escudo para nosotros
Me pregunto si la licencia actual realmente permite forks amistosos o redistribución
Al principio dice que se permite usar, copiar, modificar y distribuir libremente,
pero después aparece una frase sobre “otorgar una licencia respecto de la patente”, y no queda claro si eso también aplica al código modificado y redistribuido
Por ejemplo, GPLv2 aclara expresamente que “cada vez que redistribuyes, recibes una licencia del titular original”
Si van a meter una cláusula tóxica en código open source, el impacto debería ser claro para todos los usuarios
No me parece que haya un problema
Como dijeron, se está usando como escudo, y si vas a demandarlos, no creo que tengas derecho a una licencia gratuita
Es raro ver que una patente de base de datos se libere como open source
Me pregunto si esto hará que otras empresas reconozcan que un ecosistema abierto se adopta más rápido que una IP cerrada
Salvo algunos casos especiales, normalmente es muy difícil si no es open source
Supabase está licenciando de forma no exclusiva la patente estadounidense de OrioleDB a todos los usuarios, incluidos forks comerciales
Además, dicen que hace una hora cambiaron OrioleDB a licencia Apache 2.0
https://github.com/orioledb/orioledb/commit/44bab2aa9879feb74bb1b6f056f7dba2d3ae5a90
De verdad no me gusta que se patenten estructuras de datos
OrioleDB ya se estaba desarrollando antes de la adquisición, y estamos intentando mantenerlo bajo una licencia de open source lo más libre posible
Las patentes de software son una cultura muy estadounidense
En casos así, hasta me parece mejor un enfoque como el de China, que directamente ignora las leyes de patentes
En general, China trata la propiedad intelectual y el robo de forma distinta a los países desarrollados
Cuando se trata de manufactura, ignoran la IP, pero cuando pasan a ser una industria basada en IP, entonces sí la usan
Últimamente en EE. UU. también hay una cultura cada vez más fuerte de enfatizar la IP, como decir que el copyright es crucial o que hay que frenar a los LLM
Ese enfoque mata la innovación y también seca el financiamiento para investigación
No sabía que cosas como las estructuras de datos también podían patentarse
Los dueños de IP suelen moverse con la lógica de “patenta todo lo que se pueda y usa lo demás para negociar bajo amenaza”
No se trata de la estructura de datos en sí, sino de que un algoritmo nuevo o una mejora pueda considerarse un “proceso innovador”
Si un tribunal reconoce que hay una mejora de utilidad o un avance técnico real, una patente de proceso puede mantenerse
Incluso una patente menor puede requerir muchísimo tiempo y dinero para pelearla
No soy abogado ni juez, pero llevo mucho tiempo viendo este campo y esa es la tendencia que he observado
En EE. UU. sí, pero fuera de EE. UU. es difícil
Depende de la jurisdicción legal
Europa todavía no permite este tipo de patentes, pero el lobby sigue insistiendo
Como van a seguir intentando aprobarlas, creo que hace falta algún tipo de sanción legal contra esta persistencia por recortar libertades civiles
Tengo muchas expectativas con OrioleDB
Parece ser el siguiente paso para escalar Postgres y volverlo apto para todo tipo de bases de datos, y también estoy revisando los benchmarks por mi cuenta; los resultados son muy impresionantes
https://airtable.com/app7jp5t0dEHyDpa8/shr00etqywoDW2N6N
Gracias por revisar los benchmarks
Pronto deberíamos tener listo el RC, con la meta puesta en diciembre
Si además de código quieres contribuir con benchmarks o stress tests, sería de gran ayuda
Por el README y los comentarios, parece que OrioleDB tiene una ventaja importante en cargas de trabajo con mucha escritura gracias a técnicas como anti-bloat
Me pregunto si también rinde bien cuando los campos de texto o JSONB son grandes y pasan por TOAST
También me da curiosidad si hay algún 1% de tipos de workload no recomendados o desventajas concretas
https://github.com/orioledb/orioledb?tab=readme-ov-file#orioledb--a-cloud-native-storage-engine-for-postgresql
https://news.ycombinator.com/item?id=30462695
OrioleDB definitivamente se ve interesante, pero si cambia la estructura de almacenamiento, la compatibilidad con otras extensiones podría volverse un problema
pg_search (ParadeDB), Timescale y otras podrían verse afectadas,
y un caso similar fue YugabyteDB, que al integrar RocksDB tuvo dificultades para interoperar con extensiones de PostgreSQL
Supabase viene aportando muchísimo valor al ecosistema de Postgres de forma constante
Esto no es una licencia open source
"Si el titular de la licencia presenta una demanda legal contra Supabase, la licencia termina de inmediato"
Esa es una cláusula tóxica
Como mínimo, la licencia está redactada con tanta ingenuidad que incluso podría bloquear su uso a clientes de Supabase; en el peor de los casos, podría ser un intento de conseguir inmunidad legal para Supabase bajo la apariencia de un proyecto comunitario
Si demandas por contrato, IP, empleo u otro tema, pierdes la licencia
Si demandas por pérdida de datos, enseguida podrían contrademandarte por violación de licencia
Es curioso meter una cláusula así mientras se presenta como licencia Postgres
OrioleDB claramente es un proyecto prometedor, pero bajo esta licencia no es open source y el grupo de gente que puede usarlo queda limitado
sam, probablemente me conoces lo suficiente como para saber cuánto valora el open source nuestro equipo
Debí haberlo supervisado con más atención y me faltó hacerlo
Ahora ya se cambió a Apache 2.0, los derechos de patente quedaron claramente otorgados y, al hacer upstream del código, también se podrá relicenciar bajo PostgreSQL
También vamos a corregir el blog
https://github.com/orioledb/orioledb/pull/558
Hace tiempo Facebook puso una cláusula parecida en la licencia de React y no la quitó hasta mucho después
Se parece a la cláusula de patentes de Apache2, pero en realidad no está limitada solo al uso de ese software específico
Me pregunto si no sería simplemente una licencia permisiva estilo Apache 2.0