Google offers the Firebase suite of application development tools, available free or at cost for higher degree of usages, priced flexibly accorded to features needed. The suite includes A/B testing and Crashlytics, Cloud Messaging (FCM) and in-app messaging, cloud storage and NoSQL storage (Cloud Firestore and Firestore Realtime Database), and other features supporting developers with flexible mobile application development.
Firebase should be your first choice if your platform is mobile first. Firebase's mobile platform support for client-side applications is second to none, and I cannot think of a comparable cross-platform toolkit. Firebase also integrates well with your server-side solution, meaning that you can plug Firebase into your existing app architecture with minimal effort.
Firebase lags behind on the desktop, however. Although macOS support is rapidly catching up, full Windows support is a glaring omission for most Firebase features. This means that if your platform targets Windows, you will need to implement the client functionality manually using Firebase's web APIs and wrappers, or look for another solution.
Oracle NoSQL Database is well-suited for you if your data formats are not consistent, if you have limited hardware resources, if you higher data throughput (whether the database is on the cloud or running locally), and if you don't need a declarative query language to maintain a standardized schema of your data. If you need reduced data redundancy and require ACID compliance, you are better off finding an SQL database solution.
Analytics wise, retention is extremely important to our app, therefore we take advantage of the cohort analysis to see the impact of our middle funnel (retargeting, push, email) efforts affect the percent of users that come back into the app. Firebase allows us to easily segment these this data and look at a running average based on certain dates.
When it comes to any mobile app, a deep linking strategy is essential to any apps success. With Firebase's Dynamic Links, we are able to share dynamic links (recognize user device) that are able to redirect to in-app content. These deep links allow users to share other deep-linked content with friends, that also have link preview assets.
Firebase allows users to effectively track events, funnels, and MAUs. With this simple event tracking feature, users can put organize these events into funnels of their main user flows (e.g., checkout flows, onboarding flows, etc.), and subsequently be able to understand where the drop-off is in the funnel and then prioritize areas of the funnel to fix. Also, MAU is important to be able to tell if you are bringing in new users and what's the active volume for each platform (Android, iOS).
Data-model flexibility. Unlike RDBMS solutions, Oracle NoSQL does not restrict you to a predefined set of data types.
Ability to Handle an Increased Amount of Traffic. As Oracle NoSQL can process queries much quicker than Oracle Database, Oracle NoSQL is able to respond to a lot more queries in the same amount of time.
Data-model simplicity. In SQL-oriented databases, there is a learning curve in learning the relationship between databases, tables, rows, and keys. On the other hand, Oracle NoSQL's key-value based storage is much easier to get the hang of.
Attribution and specifically multi-touch attribution could be more robust such as Branch or Appsflyer but understand this isn't Firebases bread and butter.
More parameters. Firebase allows you to track tons of events (believe it's up to 50 or so) but the parameters of the events it only allows you to track 5 which is so messily and unbelievable. So you're able to get good high-level data but if you want to get granular with the events and actions are taken on your app to get real data insight you either have to go with a paid data analytics platform or bring on someone that's an expert in SQL to go through Big Query.
City-specific data instead of just country-specific data would have been a huge plus as well.
Fewer analytical functions to choose from. When compared to Oracle Database, there is significant difference in the amount of built-in analytical functions.
Eventual data consistency. It is not guaranteed that a write or delete query will be immediately visible for subsequent queries.
Data redundancy. As there are no mechanisms that insure data integrity, users are more likely to have redundant data across their documents.
I don't use the Firebase UI much, but rather connect it to GA4. GA4 has a great event model but the GA4 UI and analysis capabilities are limited. It's harder to measure product usage type of engagement but if you have the time and resources to leverage the GA4 to BiqQuery export you'll have all the raw event data you'll need for deep analysis, segmentation, and audience activation.
Our analytics folks handled the majority of the communication when it came to customer service, but as far as I was aware, the support we got was pretty good. When we had an issue, we were able to reach out and get support in a timely fashion. Firebase was easy to reach and reasonably available to assist when needed.
Before using Firebase, we exclusively used self hosted database services. Using Firebase has allowed us to reduce reliance on single points of failure and systems that are difficult to scale. Additionally, Firebase is much easier to set up and use than any sort of self hosted database. This simplicity has allowed us to try features that we might not have based on the amount of work they required in the past.
Makes building real-time interfaces easy to do at scale with no backend involvement.
Very low pricing for small companies and green-fields projects.
Lack of support for more complicated queries needs to be managed by users and often forces strange architecture choices for data to enable it to be easily accessed.
We pay less for computing resources, as Oracle NoSQL databases respond quicker than our previous SQL databases.
Our database administrators and software developers do not need to worry about "data massaging" and can focus on perfecting application logic.
Oracle NoSQL has built-in integration to other Oracle products, so we didn't not need to spend money on building custom integrators or higher additional developers.