A database in 2026 doesn't hold the same position it did even just a few short years ago. RedMonk Research Director Rachel Stephens published a structural analysis this week that reframes the database market in ways relevant to every architecture decision your team is making. The strategic read: Cheaper and more reliable object storage, open standards like Apache Iceberg, commoditizing database engines and AI-driven interfaces that bypass the database entirely are collectively moving the database from being the fulcrum of the data landscape to a component within it. Value is moving toward shared storage, control planes and higher-level semantic layers. https://lnkd.in/dKxXNypF
Database Evolution: Cheaper Storage & AI-Driven Interfaces
More Relevant Posts
-
Are you wrestling with complex, evolving data schemas in your applications, feeling torn between the rigidity of relational databases and the flexibility of NoSQL? Modern application development often involves consuming data from diverse APIs and sources, requiring adaptable storage. Traditional relational models can become cumbersome with frequent schema changes or when dealing with highly variable data structures. On the other hand, adopting a separate NoSQL database solely for semi-structured data adds operational complexity, increases infrastructure costs, and introduces potential data consistency challenges across your stack. This is where PostgreSQL's native JSONB data type shines. It offers the best of both worlds: the schema flexibility of a document database combined with the powerful ACID compliance, robust indexing capabilities, and transactional integrity of a mature relational system. Imagine storing semi-structured data – like user preferences, sensor readings, or API responses – directly within your PostgreSQL database. You can query nested data with high performance using GIN indexes, perform sophisticated filtering, and even join this flexible data with your structured tables seamlessly. This approach streamlines your data architecture, reduces data integration overhead, and ensures data integrity across your entire application without sacrificing performance or scalability. How has PostgreSQL's JSONB feature helped you simplify complex data challenges in your projects? Share your experiences and insights below! #PostgreSQL #Database #DataArchitecture #TechStack #JSONB #RelationalDatabase #NoSQL #DataManagement #Engineering #SoftwareDevelopment References: PostgreSQL Documentation: JSON Functions and Operators - https://lnkd.in/gr7_ayHB A Practical Guide to PostgreSQL JSONB - https://lnkd.in/gbECZ4fD
To view or add a comment, sign in
-
Every time two teams need to share data, someone builds a pipeline. Extract, transform, load. Or design an API, version it, maintain it. Either way: weeks of infrastructure work before a single query happens. We took a different approach with Datahike. If a database is an immutable value in storage - an S3 bucket, a filesystem, a JDBC store - then anyone who can read that storage can query it. No server to run. No API to negotiate. The key: Datahike flushes its indices to storage on every transaction. The indices are immutable B-trees with structural sharing - unchanged nodes are never rewritten. Any process that can read the store sees the complete, current database. This means a third team can join two databases from two different teams in a single Datalog query. No data copied, no server coordinating the join. Just two storage locations and a query. The same model works across time (join last quarter's snapshot against today's data) and across backends (join an S3 database against a local file store). Full technical explanation with runnable code examples: https://lnkd.in/gJKCTj6i #clojure #dataengineering #opensource
To view or add a comment, sign in
-
Day 6 of System Design Components of System Design 🔑 Key-Value Stores 📦:- A Key-Value Store is a NoSQL database that stores data as a key → value pair. The key is unique and the value can be anything — a string, number, object, or list. It is designed for speed, not complexity. No tables. No joins. No schemas. Just store it and fetch it instantly.
To view or add a comment, sign in
-
-
After weeks of evaluating our options, we are migrating our Postgres database architecture to an edge database. We chose Bunny.net DB. It was mostly a business decision. Latency is user experience, and user experience is retention. Our users are globally distributed, and we want to give them the best possible experience, while remaining profitable. On the technical side, the stack is built around libSQL with the Turso dialect, accessed over HTTP rather than a persistent TCP connection. That last part matters more than it sounds. HTTP access means the database fits naturally into stateless, serverless, and edge runtimes without connection pooling headaches or warm-up penalties. libSQL gives us a SQLite-compatible interface with the replication semantics we need to scale. What drew me to Bunny.net DB specifically was the balance between edge distribution, operational simplicity, and cost model. We get geographic replication, low-latency reads without rebuilding our entire data model from scratch, and a very reasonable cost model. We just migrated our staging environment and will move production this week, but the early results validate the direction. Reduced latency, lower egress costs. If you are thinking through a similar move or have gone through this kind of architectural shift, I would genuinely like to compare notes.
To view or add a comment, sign in
-
Quick backend learning this week: Database Indexing What is an Index? An index helps the database find data faster without scanning the entire collection. Think of it like the index page of a book. Without index → full scan (slow) With index → direct lookup (fast) --- Single Index vs Compound Index Single Index • indexes one field Example: "email: { index: true }" Compound Index • indexes multiple fields together Example: "schema.index({ userId: 1, status: 1 })" Useful when queries filter using multiple fields. --- Good indexing isn't just optimization. It’s part of database architecture. #BackendDevelopment #MongoDB #SystemDesign #Database
To view or add a comment, sign in
-
-
🚀🚨🔥Following up on PostgreSQL replication, yesterday we talked about physical replication. Today, let’s look at the other side of the story: Logical Replication. While physical replication copies data at the block level, logical replication works at the data level. It replicates changes such as INSERT, UPDATE, and DELETE operations. That difference makes it extremely powerful. Instead of cloning an entire database, logical replication allows you to replicate specific tables, schemas, or even subsets of data. At a high level, it works like this: The Publisher (primary database) defines what data to share using publications. The Subscriber (target database) subscribes to that data and applies the changes. Changes are streamed using WAL, but instead of raw blocks, they are decoded into logical changes and applied on the target. From a configuration standpoint, a few key pieces are involved: • wal_level = logical to enable logical decoding • Publications to define which tables to replicate • Subscriptions to receive and apply changes • replication slots to ensure data consistency So why is logical replication so effective? Because it introduces flexibility that physical replication doesn’t offer. It supports: • selective replication (only what you need) • cross-version upgrades with minimal downtime • data migrations between environments • integration with data pipelines and microservices • multi-region or hybrid data distribution In many modern architectures, logical replication is used for data movement and transformation, while physical replication handles high availability and failover. That combination gives PostgreSQL a very strong replication story. Because today, it’s not just about keeping systems running but it’s about moving and shaping data in ways that support evolving applications. #PostgreSQL #LogicalReplication #DataEngineering #DBA #DatabaseArchitecture #OpenSource
To view or add a comment, sign in
-
-
Database research has produced huge advances in query optimization, parallelism, and storage over the last 30 years. Almost none of it has made it into the systems most engineers actually use. CedarDB is what happens when that research finally makes the leap into a production database — built from scratch, without the constraints of legacy architecture. Read the full technical breakdown:
To view or add a comment, sign in
-
𝙃𝙤𝙬 𝙋𝙤𝙨𝙩𝙜𝙧𝙚𝙎𝙌𝙇 𝙄𝙢𝙥𝙡𝙚𝙢𝙚𝙣𝙩𝙨 𝙈𝙑𝘾𝘾 In large-scale systems, latency is not only about APIs. It is also about how fast the database can return the latest visible data. PostgreSQL follows an append-based MVCC model. An UPDATE does not modify a row in place; it creates a new physical tuple version with a new TID. Older versions remain until background cleanup such as VACUUM removes them. With frequent updates, multiple versions of the same logical row can accumulate. Indexes may point to different tuple versions, and during reads PostgreSQL must perform visibility checks to identify the valid record for the current snapshot. If these versions are located on different heap pages, the read path can involve additional heap lookups, buffer activity, and random I/O. At scale, this can affect read predictability and tail latency for update-heavy workloads. This design provides strong concurrency and write throughput, but some large platforms have evaluated alternative storage approaches as their workload patterns evolved. It is one of the factors discussed when parts of high-scale systems move to other database technologies. There is no single best database architecture. The right choice depends on update frequency, read-write ratio, index overhead, storage layout, and operational tuning. #SystemDesign #DatabaseInternals #PostgreSQL #MVCC #Scalability #PerformanceEngineering
To view or add a comment, sign in
-
🎉 Just picked up the Relational to Document Model badge from MongoDB & GeeksforGeeks!MongoDB completely shifts how you think about data — no more rigid tables, just flexible documents shaped around how your application actually uses them. The big unlock for me was understanding when to embed data versus reference it, and realizing that NoSQL isn't just "SQL without the S" — it's a fundamentally different way of modeling the world.Designing schemas around how you query, not just what you store, is a game changer.Excited to keep digging into NoSQL and scalable data architecture. If you're exploring the jump from relational DBs, I'd highly recommend starting here.#MongoDB #NoSQL #DatabaseLearning #Developer
To view or add a comment, sign in
-
Sharding vs Partitioning — What’s the Difference? In large-scale systems, a single database cannot handle unlimited data or traffic. That’s where Partitioning and Sharding come into play. They sound similar, but they solve scaling problems in slightly different ways. 🔹 Partitioning Partitioning means splitting a large table into smaller pieces inside the same database. Each partition stores a subset of the data based on a rule like: Range partitioning (e.g., by date) Hash partitioning List partitioning Example: A payments table can be partitioned by transaction_date, where each partition holds data for a specific month. ✔ Improves query performance ✔ Easier data management ✔ Still runs on the same database instance 🔹 Sharding Sharding means splitting data across multiple database servers. Each shard is an independent database that stores a portion of the data. Example: Users can be distributed across shards using userId hash. Shard 1 → Users 1–1M Shard 2 → Users 1M–2M Shard 3 → Users 2M–3M ✔ Horizontal scaling ✔ Handles massive datasets and traffic ✔ Used in internet-scale systems 🔹 Real Usage Large distributed systems often combine both strategies. For example, streaming platforms like Apache Kafka partition data across brokers, which conceptually works similar to sharding for scalability. Good data distribution is not just optimization — it’s a key architectural decision for scalability. #SystemDesign #DistributedSystems #DatabaseDesign #Sharding #Partitioning #BackendEngineering
To view or add a comment, sign in
-