MemSQL | MongoDB | |
---|---|---|
Category | Database | Database, Data Storage |
Preference | 75% votesvotes | 25% votesvotes |
Website | www.memsql.com | www.mongodb.org |
License | Proprietary | AGPLv3 |
Design | ||
Database model | Relational, Distributed data structure | Document-oriented, Schema-less, NoSQL |
Data storage | Volatile memory, File System | Volatile memory, File System |
Embeddable | Yes | Yes |
Features | ||
Query language | SQL | API calls, JavaScript, REST |
Data types | All MySQL, JSON, BLOB | JSON |
Conditional entry updates | Yes | Yes |
Map and reduce | Yes | Yes |
Unicode | Yes | Yes |
TTL for entries | No | Yes |
Compression | Yes | Yes |
Integrity | ||
Integrity model | ACID, MVCC | BASE |
Atomicity | Yes | Conditional |
Consistency | Yes | Yes |
Isolation | Yes | Yes |
Durability (data storage) | Yes | Yes |
Transactions | Yes | No |
Referential integrity | Yes | No |
Revision control | Yes | No |
Locking model | Lock Free Model, MVCC | Optimistic Locking, Lock on write |
Indexing | ||
Secondary Indexes | Yes | Yes |
Composite keys | Yes | Yes |
Full text search | No | Yes |
Geospatial Indexes | Yes | Yes |
Graph support | No | No |
Graph type | Oriented graph | ? |
Distribution | ||
Horizontal scalable | Yes | Yes |
Replication | Yes | Yes |
Replication mode | Master-Slave Replication | Master-Slave-Replica Replication |
Sharding | Yes | Yes |
Shared nothing architecture | Yes | Yes |
Restrictions | ||
Value size max. | 1 000 EB | 16 MB |
System requirements | ||
Operating system | Linux, Amazon EC2 | Linux, Windows, Mac OS X |
Native driver | C, C++, php, Java, Python, Objective-C, Ruby, Go | Java, php, Ruby, C#, Python, JavaScript, Haskell, Perl, C++, Erlang, Scala, C, Go |
Memory recommended | 8 GB | ? |
Memory minimum | 8 GB | ? |
Architecture | ||
Programming language | C++ | C++ |
More | ||
Description | In-Memory Database used for real-time analytics. | Document Oriented Database |
Multi-user system | Yes | Yes |
Accelerometer sensor | No | ? |
Price rating | ●●●○○ | ●●●●● |
Software distribution | Package management system | Tarball, Ubuntu Software Center, Package management system, Windows Installer |
Object-Relational Mapping (ORM) | Yes | Yes |
Release Date | 18ᵗʰ June 2012 | March 2009 |
Documentation level | ●●●●○ | ●●●●● |
Distributed Counter | Yes | ? |
Free to use | Yes | Yes |
Active | Yes | Yes |
Database Connection Pooling | Yes | Yes |
Real time analytics | Yes | Yes |
2 Letter Country Code | US | ? |
Cloud platform support | Amazon EC2 | Heroku, CloudBee, Bluemix, Amazon EC2, SoftLayer |
Online backup | Yes | Yes |
Function Based Index | Yes | No |
Log | Yes | Yes |
Download | www.memsql.com/#download | mongodb.org/downloads |
Backup functionality | Good | Good |
Query Cache | Yes | Yes |
Ease of use | ●●●●○ | ●●●●● |
Free for commercial use | No | Yes |
Sorts | Yes | Yes |
Perfomance | ●●●●○ | ●●●●○ |
Materialized Views | No | No |
Spring Data Support | Yes | Yes |
JSON | Yes | Yes |
Stored Procedure | No | Yes |
Concurrency | Yes | ? |
Multi-statement Transactions | Yes | Yes |
Columner | Yes | ? |
Brand | ? | MongoDB Inc |
Extension/Plug-in | ? | Yes |
Database | ? | MongoDB |
Standard compliance | ? | No |
RESTful | ? | Conditional |
Lines of code | ? | 617 k |
Community Driven | ? | Good |
Web interface | ? | Yes |
Data encryption | ? | Conditional |
Admin Generator | ? | Yes |
Partial Index | ? | No |
Key length max | ? | 128 |
Implementation flexibility | (0% global votes) | (48% global votes) |
In-Place Update | ? | Yes |
Capped Collections | ? | Yes |
Tuneable write concerns | ? | Yes |
Read preferences | ? | Yes |
Open Source | ? | Yes |
Op/s | ? | 5 000 |
Triggers | ? | No |
Pause Test | ? | Yes |
Cross Domain Testing | ? | No |
Pipeline Aggregation | ? | Yes |
Geospatial | ? | Yes |
Server Side Java Script | ? | Yes |
Flexible Table(Schema) | ? | Yes |
Geo-distributed | ? | Yes |
Max rows in query result | ? | 1 000 |
Re-Reduce | ? | Yes |
Clustering over WAN | ? | Yes |
Fully Distributed | ? | Yes |
Auto-Sharding | ? | Yes |
memcached protocol | ? | No |
Monitoring UI | ? | Yes |
Recursive queries | ? | No |
Network datatype | ? | No |
Windowed aggregate | ? | No |
CLI` | ? | Yes |
magicat
2015年6月2日 星期二
MemSQL vs. MongoDB
2014年10月1日 星期三
2014年9月23日 星期二
Linux 圖片轉檔指令
convert beach.gif beach.pnm
NAME
convert - convert an image or sequence of images
SYNOPSIS
convert [ options ... ] input_file output_file
DESCRIPTION
Convert converts an input file using one image format to an output file with a differing image format. In addition, various types of image processing can be performed on the converted image during the conversion process. Convert recognizes the image formats listed in ImageMagick.
NAME
convert - convert an image or sequence of images
SYNOPSIS
convert [ options ... ] input_file output_file
DESCRIPTION
Convert converts an input file using one image format to an output file with a differing image format. In addition, various types of image processing can be performed on the converted image during the conversion process. Convert recognizes the image formats listed in ImageMagick.
2014年9月18日 星期四
Install Flask on CentOS 7.0
1. Install pip on CentOS 7.0
## First install the EPEL repo as per your Operating system version and architecture.
rpm -ivh http://mirror01.idc.hinet.net/EPEL/7/x86_64/e/epel-release-7-1.noarch.rpm
yum install -y python-pip
2. Install Flask
pip install Flask
## Test
vi hello.py
## Verify
python hello.py
* Running on http://0.0.0.0:80/
## First install the EPEL repo as per your Operating system version and architecture.
rpm -ivh http://mirror01.idc.hinet.net/EPEL/7/x86_64/e/epel-release-7-1.noarch.rpm
yum install -y python-pip
2. Install Flask
pip install Flask
## Test
vi hello.py
from flask import Flaskapp = Flask(__name__)
@app.route("/")def hello(): return "Hello World!"
if __name__ == "__main__": app.run()
## Verify
python hello.py
* Running on http://0.0.0.0:80/
2014年7月17日 星期四
Python: ConfigParser
[core]
cmd = /usr/bin/vim
[mod]
safe_edit = yes
time_interval = 20
python 程式如下:
#!/usr/bin/python
from ConfigParser import SafeConfigParser
parser = SafeConfigParser()
parser.read('test.conf')
#傳回字串 /usr/bin/vim
parser.get('core', 'cmd')
#傳回 boolean 值 True
parser.getboolean('mod', 'safe_edit')
#傳回整數值 20
parser.getint('mod', 'time_interval')
references:
http://williewu.blogspot.tw/2007/10/python-configparser.html
https://wiki.python.org/moin/ConfigParserExamples
https://docs.python.org/2.6/library/configparser.html
訂閱:
文章 (Atom)