What is the best tools for NO SQL database with python3? - python-3.x

i am designing a small app with python3 and i need record some data in database.
I would like to use a non-relational database for ease.
I'm working on an ARM os (raspberry), i cannot use mongodb (their is no up to date release available)
what can I use instead?
Thanks

You can use Cassandra and Docker.
Cassandra is a column database.

Related

When should we use NodeJS and when should we use MongoDB?

As a new developer, I am always confused about using NodeJS and MongoDB. So I hope I will get an actual answer. Thanks...
MongoDB and NodeJS are two different technologies. MonogDB is a database system which gives you a chance to efficiently store documents in a database and to perform operations like data updates, or to search documents by some criterias.
NodeJS's responsibilty is especially to execute your application.
Nodejs is a Javascript engine that you can write any application you want with (by programming in the Javascript language). It runs your Javascript code. Most commonly, it is used to build servers that can respond to web requests, though it can be used for lots of other types of code too.
MongoDB is a database engine. Code within some application or server uses MongoDB to save, query or update data in a database. There are many web servers built with nodejs that will then use MongoDB for storing data.
MongoDB offers an API library that runs within a Nodejs application to give you programmatic access to MongoDB so you can create databases and then add, query, update or delete data from the MongoDB database. MongoDB also has API libraries for other programming environments such as Python, Java, etc...
These two technologies are for different parts of a typical web server system. You don't substitute one for the other. Instead, you can use them together.
When should we use Nodejs?
Any project needs a programming environment and a runtime library that offers you basic programming tools/support and can compile and/or interpret your code. Nodejs is such as tool for the Javascript programming language. There are other similar tools for other languages such as Python, Java, PHP, C#, C++, Go, etc...
So, if you want to write some kind of stand-alone program or server in Javascript, then you can use nodejs for it.
When should we use MongoDB?
If your application needs the ability to persistently store data in a way that you can efficiently query or update it later, then you would typically use some form of database. There are dozens of popular databases. MongoDB is one such database. MariaDB, MySql, CouchDB, DynamoDB (on AWS), Postgres are examples of other databases. Different databases have different strengths (things they are best at) and different ways of using them so it's a whole different question to choose the right/best database for what you're doing.
Here is a Blog link that will tell you when you should use NodeJS.
Here is another link to understand when you should use mongoDB.
Well, NodeJS and MongoDB are two different process. Here I tried to explain as simpler as possible:
NodeJS
Shortly we can say, NodeJS is a JavaScript runtime environment. It's actually helps JavaScript to run outside of server. It's used in server side development.
MongoDB
But, MongoDB is NoSQL database which is document oriented. It represents data as of JSON documents. It's used for store data.
Summary
The summary is MongoDB is a database where we can store data and NodeJS helps us to to connect our client site to database by it's server site.
Example:
Suppose you are building a website and you need a database to store the data or information so here you can use MongoDB but to be connected with MongoDB you need a connector, so here you can use NodeJS which will help your website to run outside of server.
Nodejs: Node.js is an interpreter or runtime/ running environment for JavaScript. built on Chrome's V8 JavaScript engine. responsibility is especially to execute your application.
MongoDB: is a No-SQL database for storing data. when you need high availability of data with automatic, fast, and instant data recovery.

Use SQL Server CE with node-webkit

I need to work on an old application written with WPF and MS SQL Server Compact Edition. As a requirement the app is executed from an USB stick (where also all the data is persisted) and the same should apply for the new system.
In the new application I would like to use NoSQL db to store the data (node-sqlite3 or npm-nosql). However the records currently stored on the SQL CE database must be migrated to the new db or the same SQL CE database used again (even if I prefer to avoid this option). In the latter case, I have seen there is node-mssql as database connector, but SQL Server CE is not among the supported databases.
The current SQL CE schema is extremely simple, only 4 tables and less than 300 records in total. The application is executed locally by a single user.
Is there a way to export the SQL CE database so that I can import it into the new database? Are there better databases to be used with node-webkit other than the ones aforementioned?
The driver you're looking for is:
https://www.npmjs.com/package/ce-mssql
However - I'm afraid you'll need to fork a nodejs process from your webkit application, and feature your queries through web API - this will put you at home with Angular.

Regarding Yii and cassandra work

I wonder yii works with cassandra.
If anybody know how it work.
Please post link or some references.
Thank you in advance.
I your using a major PHP ORM with Yii, the real question is 'Does PDO have a driver that will work with cassandra?'
http://code.google.com/a/apache-extras.org/p/cassandra-pdo/
If you're using Yii's native Active Record ORM, it only supports AR with (from their site):
Support for AR is limited by DBMS. Currently, only the following DBMS are supported:
MySQL 4.1 or later
PostgreSQL 7.3 or later
SQLite 2 and 3
Microsoft SQL Server 2000 or later
Oracle
If you want to use an application component other than db, or if you want to work with multiple databases using AR, you should override CActiveRecord::getDbConnection(). The CActiveRecord class is the base class for all AR classes.
Of course, ORMs are meant for use on relational databases so using something like cassandra, Mongodb, or Couchdb might not be best to sit under an ORM.
Otherwise, your question doesn't make much sense. It's like asking 'does database work with my code'.

Where to use Neo4j

I'm actually trying to learn new things...
I used SQL for a long time, using MySQL and recently discovered document-oriented databases.
I came across graph-databases & Neo4j and want to try it through NodeJS but I really don't get the point.
Should I use Neo4j coupled with another DB? Like storing my data into MySQL & relationships in Neo4j?
Or may I use Neo4j to store data (like posts)?
Neo4j is often used as the primary database, see https://github.com/thingdom/node-neo4j for a node.js driver. Also, depending on your use case, you can use it with MySQL in different scenarios for complex queries that take a long time in MySQL like recommendations and other path queries, see http://docs.neo4j.org/chunked/snapshot/data-modeling-examples.html for some interesting starting examples.
/peter

node.js sybase driver

I am developing an app using node.js express framework and would need to connect to sybase ASE database. I did enough search and couldn't find the sybase driver for node.js. doesn't node.js support sybase or should I use something like a generic driver?
An exhaustive list of database drivers is on the node.js wiki here:
https://github.com/joyent/node/wiki/Modules#wiki-database
But no Sybase so that leaves using an ODBC driver which, if on *nix, then you have the option of:
https://github.com/w1nk/node-odbc
Alternatively, Sybase ASE has it's own web services engine which exposes SQL and stored procedures through a SOAP API. Your best option may be to just roll your own SOAP client in node against that API, perhaps using node-soap.
As of 2015, a non-odbc implementation based on Jconnect is available. It requires Java.
You can install it with
npm install sybase
More info:
https://www.npmjs.com/package/sybase
I know it has been a while, but if you are still looking, try this:
https://www.npmjs.org/package/sqlanywhere
node.js comes with no DB support at all.
DB connectors are out of the scope of the node.js distribution. But the cummunity fills the gap here e.g. for mysql there is node-mysql.
Problem here is that you want to use a DB without a big (open source) community, so, after some googeling, there is no node.js connector.
If you want to create a connector for sybase ASE you might have a look at node-mysql to get startet. But this is nothing you do in one weekend.

Resources