I'm trying to make a facebook application that stores some user data in a database. What kind of databases can I use if I'm using Heroku? Can I use SQLite?
SQLite is the one database you can't use.
Heroku will give you a 5Mb Postgres database for free with your application (assuming it's a rails application). There are addon providers for mySQL, Redis etc or you're free to connect to you own database outside of Heroku but beware of the latency that you will experience.
Related
Currently I'm working on a project where we use React, PWA, PouchDB and CouchDB to build an offline first application with a large amount of data from the remote database, stored in the client web browser.
In other words a local database of around 2GB is stored in the client through IndexDB storage.
There is a significant problem on the replication of the remote database when starting the application and building the local database. PouchDB takes too long to do this process, there is a thread speaking about this topic.
pouchdb replicate from couchdb : very slow
Apparently there is no way to speed up PouchDB in the level that we need for the project. Therefore we have considered other options for a local database in the web browser with synchronization to a remote database. Some of the options we have considered are AWS Amplify Datastore, Firebase Cloud Firestore and Minimongo.
The company I work for is strongly linked with Azure services, but I have not found any like service in Azure that stores large amounts of data in the client web browser and synchronizes with the remote database.
Does anyone know of an Azure service that can help with this project?
If not, is there any other option or architecture even if not Azure, that would be recommended. We already have a functional web application with React, PWA, CouchDB and PouchDB, this is NoSQL, so NoSQL options would be preferred, but I'm open to consider SQL Database options even though a bigger modification would need to be done in the program.
Thank you in advance !!
I am using the OCN-client locally. I run it in memory, without a database. How does it work? Will it be a problem for me when developing my backoffice service?
The in-memory database is good for development (the OCN client will forget connected parties on restart), but when moving to testing and production phases you would want to switch to a persistent database.
I am working on my Java application in Eclipse that connects to the database and makes some queries with the data. This database has been created and managed in PHPMyAdmin. The database is stored locally and now I would like to make it accessible not only from my computer, but for anyone who will run my application on his computer. Can anyone tell me what is the procedure? How can I make the database "online"? Should I store the database on some remote server? If so, what is the procedure?
I know this question is not so much straight-forward, but I hope you will give me some idea how to deal with it.
Thanks in advance!
In this situation you should store the database on an external server who are better at managing databases with more security/backups etc.
If you're looking for scalability as well you could get an Amazon AWS Micro Instance in the cloud for free for a year which includes a large amount (20GB) of RDS (their relational database service based on MySQL) for free.
There is a great Stack Overflow question on Using PHPMyAdmin to administer Amazon RDS as well to get you started with something you are familiar with.
You can use MySQLDump to copy your current database from your local machine to RDS if you needed.
(A, completely non-extensive, list of) Mysql Hosting Providers
Webfaction - Good web user interface. Does more than just database hosting. Lots of documentation.
Amazons RDS - Cloud based. Reliable. Offers free tier
Rackspace - Cloud based. Excellent customer service.
Or, host your own on something like these
Linode - Has lots of documentation of getting Mysql installed
Digital Ocean - SSDs for great speed. Again great documentation on getting Mysql installed
As I know SQL Azure uses a relational db, on the contrary Amazon SimpleDB is a non-relational one.
Ipotetically can I publish a web application with a non-relational database simply with the "publish to Win Azure" button, as I did with mine? Will Azure convert my db without any problem?
And more, are there any cases where I cannot use the "publish to Win Azure" button?
You'd have to include the database engine along with your deployment. For instance, you can run with MongoDB as your NoSQL database. You can download the Mongodb+Azure project here.
There's also Windows Azure Table Storage, which is a non-relational, schemaless data store with 100TB of capacity per storage account. The Windows Azure Platform Training Kit has a few labs around Storage that will help you understand how to use it.
In either case, there's no magic conversion from one data format to another.
For a non-relational data store with Windows Azure, you should consider Table Storage. Windows Azure Table Storage is the NoSQL storage option with Windows Azure.
Windows Azure does not "convert" any database or anything like that.
I am trying to get my local sqlite db up and running on GAE. According to this post, there is no way for me to get my local db up there directly. That's why I would like to do something like this:
I get the sqlite db up and running on my dev server with this: http://code.google.com/p/gae-sqlite/
Locally, I translate the db scheme into django model and migrate the db into GAE db.
I use google's way to get my data up to GAE.
So here comes my question. Is there any project that is able to directly translate sqlite db scheme into django model directly?
If not, I guess I will have to write up a code gen.
Thanks
gae-sqlite (now superceded by built-in sqlite support) is designed to run the development appserver backend on sqlite for speed and reduced memory consumption. It doesn't let you import or use your own sqlite schema in App Engine.
You need to dump your data to CSV files, and use the App Engine bulkloader (which you linked to) to bulkload them into the dev_appserver and production environments. Alternately, it is possible to bulkload direct from the sqlite database, but that's a lot more involved, and probably not worth the effort.