Je recherche une alternative S3 qui repose sur une API reposante, de sorte que je puisse simplement insérer des liens tels que http : //datastore1.example.com/id et ils sont directement téléchargeables. J'ai regardé Riak et Bitcache. Ils semblent tous deux très gentils: http://bitcache.org/api/rest mais ils ont un problème. Je veux être le seul à pouvoir télécharger des données. Sinon, quelqu'un pourrait utiliser notre magasin de données en envoyant une demande de vente. p>
Y a-t-il un moyen de configurer Riak afin que tout le monde puisse "obtenir" mais que tout le monde ne puisse pas mettre ou supprimer des fichiers sauf moi? Y a-t-il d'autres services que vous pouvez recommander? P>
Ajoutez également une prime :) p>
Exigences: p>
Très agréable d'avoir: p>
Editer: Pour clarifier Je ne veux pas de connexion à S3, j'ai de grands serveurs qui mentent avec du disque dur et une très bonne connexion réseau (3GBPS), je n'ai pas besoin de S3 .. p>
7 Réponses :
Basé sur les informations que vous avez données, je suggérerais d'eucalyptus ( http://open.eucalyptus.com/ ). Ils ont un système de stockage compatible S3. P>
Le magasin d'objets répartis et fiable Rados, qui fait partie du système de fichiers CEPH, fournit un passerelle S3 . P>
Nous avons utilisé le système de stockage d'eucalyptus, Walrus, mais nous avons eu des problèmes de manière fiable. P>
De la page d'accueil Céph: "Ceph est soumis à un développement important et ne convient pas encore à des utilisations autres que l'analyse comparative et la révision.". Dites-vous que c'est plus stable que l'eucalyptus?
Les rads, la passerelle et la RBD de CEPH sont prêts à la production. Les CEPHFS font toujours défaut, il semble qu'il semble que certaines configurations soient utilisées dans de grands sites de production. ( CEPH.com/docs/master/faq/#is-ceph -Production de la qualité )
Les auteurs riak Recommander pour mettre un HTTP proxy devant Riak afin de fournir un contrôle d'accès. Vous pouvez choisir n'importe quel serveur proxy que vous aimez (tel que Nginx ou Apache) et toute stratégie de contrôle d'accès que vous aimez (telles que l'autorisation basée sur les adresses IP, l'authentification de base HTTP ou les cookies, en supposant que votre serveur proxy puisse le gérer). Par exemple, dans NGinx, vous pouvez spécifier limit_except (également limitexcept à Apache). P>
Alternativement, vous pouvez également ajouter un contrôle d'accès à Riak directement. Il est basé sur webmachine, une approche serait donc de mettre en œuvre is_authorized . P>
Si vous recherchez un système de fichiers distribué, pourquoi n'essayez-vous pas Hadoop HDFS? P>
http://hadoop.apache.org/common/docs/ R0.17.0 / HDFS_DESIGN.HTML P>
Il y a une API Java disponible: p>
http: // hadoop.apache.org/common/docs/r0.20.2/api/org/apache/haadoop/fs/filesystem.html P>
Actuellement, la sécurité est un problème - au moins si vous avez accès à un terminal: p>
http://developer.yahoo.com/hadoop/tatutor/module2. HTML # Perms P>
Mais vous pouvez déployer des HDFS, mettre un serveur d'applications (à l'aide de l'API Java) devant celui-ci (Glassfish) et utilisez Jersey pour construire l'API reposante: P>
Si vous êtes intéressé à construire une telle chose, merci de me le faire savoir, car je peux construire quelque chose de similaire très bientôt. P>
Vous pouvez utiliser la distribution de Cloudera Hadoop pour rendre la vie un peu plus facile: p>
http://www.cloudera.com/hadoop/ p>
salut, J. P>
Je suppose que vous devriez poser votre question sur Serverfault.com, car il s'agit plus de système. Quoi qu'il en soit, je peux vous suggérer de mogilefs quelle échelle très bien: http://danga.com/mogilefs/ . < / p>
WebDav est aussi reposant que possible et il existe de nombreuses implémentations à l'échelle à diverses utilisations. Dans tous les cas, s'il est reposer et que c'est HTTP, alors quel que soit le schéma d'authentification que le serveur prend en charge doit vous permettre de contrôler qui peut télécharger. P>
Vous pouvez le développer vous-même comme une application Web ou une partie de votre application existante. Il va consommer des demandes HTTP, récupérera leur composant URI, le convertira sur le nom d'objet S3 et utiliser GetObject () pour obtenir son contenu (en utilisant l'un des S3 S3 disponibles, par exemple AWS Java SDK ). P>
Vous pouvez essayer une solution hébergée - s3auth.com (je suis un développeur). C'est un projet open source, et vous pouvez voir comment ce mécanisme est mis en œuvre en interne à