Amazon AWS DynamoDB Desktop Client - Does one exist? [closed] - amazon-web-services

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 7 years ago.
Improve this question
Been looking around on the web for one of these, but I'm only finding node.js/ruby hosted implementations.
I'm keen to have a DynamoDB app, something like that of the navicat ilk that comes with an msi installer to get running quickly.
Maybe there's a valid reason as to why one of these doesn't exist yet?

If you are using DynamoDB local for development you can use the built-in DynamoDB shell: http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Tools.DynamoDBLocal.Shell.html
http://localhost:8000/shell
UPDATE: Amazon does also provide an official client: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/workbench.html

I'm not aware of a dedicated desktop application for using Amazon DynamoDB from Windows yet.
However, the AWS Toolkits for Eclipse and Visual Studio both allow you to create tables, insert and edit data, initiate table scans, and more, straight from your local development environment (see the introductory post AWS Toolkits for Eclipse and Visual Studio Now Support DynamoDB).
So depending on your use case this might be all you need (or even better, if this is targeting a development scenario).
Update
The AWS team has just announced the option to Explore Your DynamoDB Tables Using the AWS Management Console as well:
You can now view and modify the contents of your DynamoDB tables from
within the AWS Management Console. With the addition of this new
feature, you can learn by doing -- trying out a number of DynamoDB
features without even writing any code. You can create a table, add
some items, and see them in the table, all through a very clean and
simple user interface.
This is obviously a very convenient addition to the rich client options referenced in my initial answer above, please check out the post itself for a short illustrated tour to help you get started.

RazorSQL Database GUI Tool for Amazon DynamoDB
http://razorsql.com/articles/razorsql_amazon_dynamodb.html

Amazon provides a local client for DynamoDb. It's a java jar and it runs on Linux and Windows.
It starts a server that binds to port 8000 at localhost (or you can specify another port when you start the server).
Download and unpack the desktop client, change the endpoint inside your app to localhost:8000, and then you can use the desktop client for DynamoDb.
Here you can download and read about installing the dynamodb desktop client.

Related

MariaDB Key Management options [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about a specific programming problem, a software algorithm, or software tools primarily used by programmers. If you believe the question would be on-topic on another Stack Exchange site, you can leave a comment to explain where the question may be able to be answered.
Closed 2 years ago.
Improve this question
Having some trouble finding a workable solution for MariaDB key management.
In the words of one of our devops guys - "File key management is somewhat akin to taping your car's key to the windscreen". So, we are looking for a secure way to implement data-at-rest encryption, but we are having trouble with both of the other options listed in the documentation.
AWS KMS
The MariaDB documentation states the following:
The AWS Key Management plugin depends on the AWS SDK for C++, which uses the Apache License, Version 2.0. This license is not compatible with MariaDB Server's GPL 2.0 license, so we are not able to distribute packages that contain the AWS Key Management plugin. Therefore, the only way to currently obtain the plugin is to install it from source.
Our servers are managed, and the response we received from the devops team was:
Building things from source is quite an anti-pattern within the
context of a Puppet-managed environment, so we need to figure out if
this is doable in a sane and sustainable way
Eperi Key Management
The MariaDB documentation states the following:
It reads encryption keys from eperi Gateway for Databases.
I contacted Eperi to get information about their Gateway for Databases solution, and this was the response I received from their sales team:
We will not be able to serve you. Please look for another way.
So Im at a bit of a dead end here :(
Has anybody in a similar situation been able to find a workable solution?

Server Architecture/Automatic Deployment - How to set up a SAAS web application? [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 7 years ago.
Improve this question
I wrote a web application, and I would like to sell it as software-as-a-service. I'm using Amazon Web Services to host the production environment, currently.
I'm hosting the applications internally on clients servers/intranet, or having them sign up for Amazon to purchase their own EC2/RDS containers.
This setup process takes forever in that there are several manual steps involved in working like this. I have to set up the entire stack. I setup an EC2 & RDS instance, setup Route53, pull the source from git, run migrations, setup chron, and finally let nginx know that the site is up.
The Issue
Ideally, I'd like for users to be able to go to the website, sign up, and have access to their own implementation of this application. I'd like to automate this process. They should then be able to access the application via a url structured like so:
customername.primary-domain.com
You can see this happening in many applications utilizing 'the cloud'. For example, Office365/Sharepoint will spin up a customers own version of that application.
I'd like this to be shared hosting, in that there are several clients on an EC2 instance.
Questions
How can I accomplish this in a reasonable, affordable way?
What software options are there to solve this?
What are some different options other than the 3 I have listed here?
For the VM option, what is good to use? Docker, Vagrant? What are other options?
What are these companies using to do this? How is Salesforce, Microsoft, or any of you automating this?
Thoughts on how to accomplish this
I know very little about this topic. I did some brain storming about what I already know (basically nothing involving any scale) and I came up with the following ways I could think of to accomplish this:
Application Level Switching
A user would sign up, and all the records they create will have a foreign key to their profile. This seems like the easiest approach, but I don't believe it would scale very well, not to mention a terrifying security risk. I'd like to keep client's data as isolated as possible.
Web Server Approach
When a user signs up, an external process will create a folder on the web server and pull the application source code, and run database migrations. This script would create the corresponding records with nginx. This seems like the easiest to manage and support and scale, however I dislike that there is a shared database sever.
Virtualization
Use Docker or Vagrant (Which is best? Are there other options?) to run multiple production-ready installations on the EC2 instance. This could allow me to ship with MySQL installed on the container, removing the need for a global MySQL install, or RDS entirely. This feels like the most attractive option, but seems like the trickiest to set up, in that it seems very technical, and potentially a nightmare to support.
edit:
You could decouple the database from the application and run the DB in a different container than the application. This is probably the best way to do this but seems even more of an advanced setup. Is there something which already does this?
Summary
Cloud wizards, please help me understand your magic.

Which one is better to user between Parse, Firebase and AWS Cognito? [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 8 years ago.
Improve this question
I am willing to use synchronisation service for my application. But I want to choose the best one. I want to know which one is better among all these. My application will run on Android , IOS , Windows and Web.
I am going with Firebase because I tested it. It is giving me fast results and it is also allowing me to work offline. Is it better or I will go with Parse or AWS Cognito?
I Also have an option of Google Cloud. Does Google Cloud provides service like Firebase? And are realtime updates possible with Parse as like Firebase?
Codeek has a good point that this question is opinion based, so take my answer with a grain of salt.
I have experience with both Parse and Firebase, but not with Cognito.
In my experience, Parse is better when working with large relationship-based databases. (I.E. databases where multiple classes of objects are pointing to each other and interact.) In this system, it is easy to store a lot of data very succinctly, but working with this data is done via snapshots. This means that you can take a snapshot of the data, edit it, and then refresh the server with the updated snapshot. This is perfect for things like my delivery application where only one user is updating the orders on our server at any one time.
Firebase implements a model-observer scheme, and so it is much better for applications that are highly interactive. For instance, I have used Firebase for creating a real-time game of hot potato. The advantage here is that changes to the data on the server are automatically pushed out to all devices that have registered as listeners (functionality not available on Parse from my experience). This keeps all users on the same page all the time. The downside is that the database is structured in a hierarchal manner and doesn't have defined "objects". Rather, it is structured via key/value pairs where parent keys cannot have an associated value. To illustrate this, a sample structure for storing a game on my database went something like this:
-Games
--1
---Users
----1 = "example#gmail.com"
----2 = "example2#gmail.com"
---PotatoHolder = 1
---TimeRemaining = 30
---Loser = -1
Cognito I am not familiar with, so I'll allow someone else to explain how that database system is designed.
In summary, codeek is correct that this is an opinion-based question, but for two of your options a good rule of thumb from my experience is that Parse is fantastic for large relationship databases in conjunction with single-user applications (i.e. single-player or turn based games). Firebase is more suited to hierarchal data systems in conjunction with real-time multiplayer applications.
I hope this helps! If you could post a little more about what kind of application you are trying to build then perhaps I, or someone else, could provide a little more guidance.
Expanded Answer: Although this question has been marked as off topic, to answer Nidhi's follow-up question if there is a way to use Parse as a model-observer scheme: Not easily. Using a timer is the simplest option. The other option is to use push notifications. This would require getting permission from you user. You can set the Cloud Code on Parse to automatically send push notifications all relevant users and then intercept them within your client so that they are "silent". In other words, when they arrive, you can have your client respond by updating your game without showing a ribbon or notification like normal push notifications. I have not done this myself, as I prefer using Firebase for that kind of application, but I believe that it is possible.
Source: PFQueryTableView Auto Refresh When New Data Updated or Refresh Every Minute Using Parse
Keith's answer is similar to Nidhi's reference to refreshing PFObjects via a Timer, Handsomeguy's comment refers to the possibility of "silent" push notifications.

Using Microsoft Office software as part of my web service backend? [closed]

Closed. This question is off-topic. It is not currently accepting answers.
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 10 years ago.
Improve this question
What licensing issues arise if I install and use Microsoft Office software (in this case Visio) as part of my web service backend?
My company's flagship piece of software can convert Microsoft Visio files for use in their environment, but of course requires a local install of Visio to decode the files. The system I'm to create is to offer a sort of web service where people can upload their Visio files, and then we can show off the benefits of buying our full price software.
In order to do this I'd need an install of our software on the server, as well as Visio. What I'm a little concerned about is technically any visitor to the site is technically using Visio. I can't really find any other examples when searching online (it doesn't help when things like "server", "cloud" are essentially buzzwords) so any advice would be greatly appreciated!
I don't know the legal details but MS say if you do this every user would require a Visio Licence. You can certainly do it technically but MS also warn that office automation was intended to be done in an interactive session - I take this to mean they don't guarantee that its not going to pop up a dialog or something at some point. They provide server side options for most office products but not Visio.
I don't know what your application is but I can think of three options that may be relevant:
Create a downloadable application that opens Visio and converts the file to your internal format and then uploads it to your server
Have files uploaded to the server which then creates a task for someone in your company to download the file and do something with it. You could significantly automate this process
Get the users to upload VDX files and process the data as XML
Note if your application is using Visio in such a way that you don't have your own internal data structure can you use option 1 and just have some of the functionality done on the server through authenticate web services? this way they get to see what it can do but it only works while connected to your server.

Is it worth signing up for AWS Premium Support? [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 11 days ago.
Improve this question
We are planning to move the hosting to Amazon.
Has any one experienced their AWS Premium Support?
I am currently doing all admin stuff for the company and I was wondering if I signed up for this service it might ease my job a little.
Can they setup the whole hosting environment and install all the things like php mysql memcached load-balancing etc.?
How much of support can they give me?
Having used AWS for over a year now, I would say no. It is very expensive and whilst they are good for having a look if your server has gone down at hardware level or their general network status they are not so into actual server administration.
I would also say if you are not comfortable setting up the hosting architecture yourself than AWS may well not be for you. But if you want to get stuck in then do it properly as you can do a lot with it.
If you did want to setup something with all the features you require it is actually easier than you may think. I've listed out the software you want to run and how best to go about it (from experience)
php - Look at Amazon Community AMIs
(Amazon Machine Image -
http://aws.amazon.com/amis) - There
are loads setup with a LAMP stack pre
configured making it easy to get
going
mysql - If you want a dedicated MySQL
Server I seriously recommend Amazon's
RDS service (
http://aws.amazon.com/rds/ ) - it is
a great solution and really easy to
setup, it also automatically handles
things like backups, availability
etc.
memcached - Again plenty of community
AMIs with memcached pre-installed, if
you wanted this as a dedicated server
there are standalone AMIs aswell as
AMIs on a LAMP configuration
load-balancing - Amazon's Elastic
Load Balancing Service (ELB -
http://aws.amazon.com/elasticloadbalancing/)
makes load balancing really easy,
just select the ec2 instances you
want to put behind the load balancer
and it does the rest
The documentation is great and with the support on their user help board I have never had to use the paid support.
If you'd like to give AWS a trial before getting stuck in they have a free tier for developers
So in a nutshell, give it a go first before committing to any support packages. I think you'll be plesantly surprised at the ease of it.
One thing you should definitely look into is going to the AWS Tech Summits that they host. They're free and have great talks/tutorials from begginers to advanced users.