Hacker News new | ask | show | jobs
by polskibus 2694 days ago
What open source components does Cloud Firestore use?

Can you point towards papers that describe the algorithms and data structures that Firestore uses? What infrastructure does it rely on to perform reliably?

2 comments

The backend is almost entirely custom, though many common low-level open-source components are used pervasively. For example, for components written in C++ we use Abseil, Google Test, etc.

The SDKs are all open source and make use of other open source components:

  * Android: https://github.com/firebase/firebase-android-sdk/tree/master/firebase-firestore
  * iOS: https://github.com/firebase/firebase-ios-sdk/tree/master/Firestore
  * Web: https://github.com/firebase/firebase-js-sdk/tree/master/packages/firestore
For example, the iOS SDK uses LevelDB for local key-value storage and gRPC for communication with the backend.
I'm interested in learning about Firestore architecture and how it solves difficult problems to understand and trust it. I'm not interested in client libraries.
Sorry I misunderstood. I was simply sharing additional open source components that are part of the Firestore ecosystem. Best of luck in your search.
.
This isn't true, but Cloud Spanner is awesome too!
It's probably better said that Cloud Firestore and Cloud Spanner share common infrastructure.

For example, Cloud Firestore uses TrueTime to provide similarly strong consistency guarantees to Cloud Spanner (see https://cloud.google.com/spanner/docs/true-time-external-con...)

I'm not aware of any whitepapers describing the listen feature that provides real-time updates.