Talks
Speakers
Events
Topics
Sign in
Home
Talks
Speakers
Events
Topics
Leaderboard
Use
Analytics
Sign in
Suggest modification to this talk
Title
Description
Schemaless database are a joy to use because they make it easy to iterate on your app, especially early on. The relational model isn't always the best fit for evolving and messy data in the real world. And let's be honest—it's painful to persist rich domain models across millions of little tables. However as your data model stabilizes, the lack of well-defined schemas becomes painful. On the other hand, relational databases are proven, robust, and powerful. How are we supposed to pick one or the other? Simple: pick both. Recent advances in Postgres allow for a new hybrid approach. The hstore datatype brings key/value pairs to Postgres, and PLV8 embeds the super-fast V8 JavaScript engine into Postgres. These in turn make Postgres the best document database in the world. This talk will explore when and how to take advantage of them, and how we use these techniques at Heroku. Help us caption & translate this video! http://amara.org/v/FGg7/
Date
Summarized using AI?
If this talk's summary was generated by AI, please check this box. A "Summarized using AI" badge will be displayed in the summary tab to indicate that the summary was generated using AI.
Show "Summarized using AI" badge on summary page
Summary
Markdown supported
In the video titled **"Schemaless SQL - The Best of Both Worlds,"** Will Leinweber discusses the advantages of combining the flexibility of schemaless databases with the structure of relational databases, particularly using Postgres. Leinweber shares his experience transitioning from simple CRUD applications with Active Record to utilizing CouchDB, where he appreciated handling document storage seamlessly. However, upon moving to Heroku and learning Postgres, he became excited about its robust features, which include built-in concurrency control, full-text search, and geolocation functions. ### Key Points: - **Schema with SQL:** Leinweber introduces the concept of **"schema with SQL,"** which allows for retaining relational database advantages while integrating document features. - **Hstore Usage:** He introduces **Hstore,** a key-value store type within Postgres, allowing for more flexible data handling without compromising the benefits of SQL. Key functionalities include: - The ability to index Hstore data. - Querying capabilities for Hstore attributes, enabling users to extract and manipulate data efficiently. - Examples of using Hstore for dynamic queries and updates, providing a robust mechanism to interact with semi-structured data. - **PLV8 Integration:** The talk highlights **PLV8,** which embeds Google's V8 JavaScript engine into Postgres, allowing developers to write JavaScript directly in database functions. This enhances performance and flexibility, with specific points on: - Easier creation of complex functions. - Example implementation using a Fibonacci function to demonstrate performance benefits. - **Community and Future Potential:** Leinweber emphasizes the vibrant community around these technologies, encouraging innovation and contributing to the enhancements of Postgres. ### Conclusion: Will concludes by urging developers to consider the advantages of integrating features like Hstore and PLV8 into their database management strategies. He reiterates the importance of balancing well-defined schemas with the flexibility provided by document-like storage methods, indicating that this approach can optimize both development and data handling. In summary, the video highlights a transformative perspective on handling data in relational databases, advocating for a blended approach that leverages both the strengths of traditional SQL and the agility of schemaless data models.
Suggest modifications
Cancel