Has anyone had any success running mongodb on the beaglebone black? do I have to install a different flavor of linux to get this to work or can I use angstrom.
MongoDB (as at 2.4) does not officially support ARM processors. You can watch/upvote SERVER-1811 in the issue tracker, however I wouldn't expect this to get much traction until there are 64-bit server-class ARM processors commonly available.
In general a 32-bit low power ARM processor with limited memory (512Mb RAM on the BeagleBone Black) is not a great fit for a memory-mapped database server like MongoDB. Due to the use of memory-mapped files, 32-bit versions of MongoDB are also limited to about 2GB of data and indexes.
There are some extremely old versions of MongoDB that have been hacked to work on ARM to some extent (eg: MongoDB 2.1.1-pre), which is a very early development release of MongoDB 2.2. I wouldn't recommend this unless you're extremely desperate; likely you will spend far more time trying to get things working than writing productive code.
Better approaches would be to either:
use a database which is designed for lightweight environments (eg. SQLite)
use your BeagleBone to run a MongoDB client application rather than a server
Related
I'm going to produce VoLTE packet stream on OMNET++. Which OS is recommended for installing OMNET++, Linux or Win?
My laptop system is win10. If Linux is better, is there any problem if I use linux on VBox?
Thanx for your kind recommendations.
Linux [1] is definitely the recommended OS for using OMNeT++.
In particular, you will have the best experience with Ubuntu 18.04.1 - if you're using the latest OMNeT++ release that is. Older versions might work better on earlier Ubuntu releases.
Running it in a virtual machine should not cause any issues.
The only case that might be problematic is using the 3D integration (OSG and osgEarth). Rendering performance might be worse (or it might not work at all), but this depends on your setup. There are a few GPU/driver/config/etc. combinations where even this works quite well.
EDIT:
The reason is that even though Windows is fully supported as well, it simply performs significantly worse - especially during building either OMNeT++, or any model libraries or projects. We suspect that it is caused mostly by how NTFS works, among a variety other things.
On top of that, certain "more exotic" features in some model libraries might only be available on Linux.
[1]: Well, technically it's GNU/Linux, or more appropriately, GNU+Linux. :D
I suggestion Linux (Example : Debian, Fedora) or Unix, Because Linux or Unix have most stable using develop OMNeT++ to working great.
Is it possible to install a mongo db version greater than 3.2 on raspberry pi with RASPBIAN JESSIE LITE installed on the pi?
I only succeed to have the version 2.1 using this tutorial.
http://www.widriksson.com/install-mongodb-raspberrypi/
I tried a lot of tutorial but impossible to find one which work for greater versions.
As it was already written in the comments, you are limited to the 32-bit version.
Which comes with severe drawbacks:
The data which can be stored is less than 2Gb (potentially a lot less), since WiredTiger is not available and MMAPv1 is limited to a maximum file size of 2Gb since it makes heavy use of memory-mapping. It simply has a very limited addressable space on 32-bit machines
The WiredTiger storage engine is not available. It allows compression and hence would be especially interesting for limited resources.
MongoDB needs RAM. The more, the better. Indexes need it, connections need it desperately, and hm, the memory mapping makes good use of it. And well, we are only on 32bits. MongoDB Inc decided against creating workarounds for a dying technology. So do not expect this to change
The biggest drawback, however, is that journaling and replication are basically No-Gos since the further limit the amount of data you can store. No journaling translates to limited durability of your data (unless you are willing to force the data to be synced to disk for each write by using an according write concern), while the lack of replication and the resulting lack of failover capabilities most likely is less of a concern on a Raspi.
MongoDB Inc strongly advises against using the 32-bit version for other than testing purposes. And they do so for a good reason. Personally, my generated test data by far exceeds the limitations of the 32-bit version.
So yes, it should be technically possible (and even with no package at hand: compiling MongoDB is no rocket science). Is it a good idea? Well, not so much, if you ask me.
I am the author of the blog http://www.clarenceho.net/2015/12/building-mongodb-30x-for-arm-armv7l.html mentioned by #user3343399
Just to add that Arch Linux ARM latest build of MongoDB 3.2.0 seems to be working fine. Except that the default storage engine was compiled as WiredTiger although there is no 32-bit support from WiredTiger. You will need to add parameter --storageEngine=mmapv1
I've got two PostgreSQL 9.2.4 servers running on 32-bit Suse.
Failover is configured using a shared storage device.
I'd like to upgrade to 64-bit Ubuntu machines using PostgreSQL's streaming replication while keeping the database service available. To do that would mean temporarily having failover between a 32-bit and 64-bit system.
I've read a lot of documentation for PostgreSQL & PostgreSQL replication.
It's clear that PostgreSQL doesn't handle streaming replication between 32 & 64 bit systems. It's not as clear if it can handle shared storage between 32 & 64 bit systems. I'm pessimistic, but wanted to check.
Yes, you can - with the caveat that you must use a 32-bit PostgreSQL build on your 64-bit system, it must be the same major release (e.g. both 9.2 or both 9.3) and it must be compiled with the same settings for integer_datetimes etc.
Modern Debian/Ubuntu, like all 64-bit Red Hat variants, supports a multi-arch install where 32-bit and 64-bit binaries can live side by side. So you should be able to simply apt-get install the 32-bit PostgreSQL on your 64-bit system.
That said, I strongly suggest relying on streaming replication instead. Shared-storage failover is very risky - if you have any problems with fencing access and STONITH, you will get extremely severe data corruption. It also protects against fewer classes of problems.
Actually, it's even possible that 32-bit Suse's version of PostgreSQL and 32-bit Ubuntu's aren't compatible. Not likely, but it depends on what options they chose during compilation.
So - no.
If you really want to have complete availability you'll need to look at one of the trigger-based replication systems (slony / londiste / bucardo). These can replicate between different installations of PostgreSQL regardless of on-disk format.
Of course, this means having two sets of data.
It does allow you for an uninterrupted upgrade though, so you can consider switching to the latest 9.3 at the same time.
I'm interested in building a small server using the Odroid U3 which has 1.7GHz Quad-Core chip. I did install MongoDB 2.1.1 on a Raspberry but found the performance far too low for any serious usage other than tinkering. I was wondering there is a MongoDB package/instruction/tutorial somewhere to install newer versions of MongoDB. Any suggestion/help would be appreciated
You may use mongodb-linux-armv7l-2.4.1.tgz that I've uploaded, taken from a JIRA comment. An experimental but working build. Not production ready.
There is a really up to date version of MongoDB for Arm chips on ArchLinux. Its currently 2.6.1+ and no need for compiling. Is also production ready - albeit with the limitations MongoDB 32bit has.
As of version 3.4 MongoDb officially supports ARM 64.
One thing to note though: Currently (v3.4.0) Only the Wired Tiger storage engine is currently supported.
The current version can be downloaded here: https://fastdl.mongodb.org/linux/mongodb-linux-arm64-ubuntu1604-3.4.0.tgz
You may watch this thread on Github of DietPi for update.
For now I have tested prebuild MongoDB 3.0.14 Binaries for Odroid XU4 Running DietPi_OdroidXU4-ARMv7-Jessie and it is working fine. Pl check bellow screenshot.
MongoDB 3.0.14 Running on Odroid XU4 on DietPi V6.10 (Debian Jessie):
I've done some research and it seems to imply that at least in 2011, the big endian/little endian problem prevented this since PPC cores were not compatible with the MongoDB server.
Has this changed? Or is it still impossible to get it running on an IBMi?
I'm confused since Zend seems to be supporting MongoDB now and is a major part of a web framework on an IBMi server.
It appears that using mongodb entirely on the IBMi is out of the question, is there a reliable NoSQL alternative with collections that would work? Perhaps one with a SAVF or RPM so it works out of the box?
The MongoDB core server is little endian.
What you can do is have the drivers on the IBMi, as most of them are big endian, and the Mongo DB core servers on a little endian machine (AMD64 or Intel x86_64)