IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Emploi Discussion :

Gestion de carrière - Changement de techno - déconvenues (vis ma vie de Marco46)


Sujet :

Emploi

  1. #41
    Modérateur
    Avatar de Rayek
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2005
    Messages
    5 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 235
    Points : 8 504
    Points
    8 504
    Par défaut
    Citation Envoyé par phili_b Voir le message
    Quand les perfs ne baissent pas, pourquoi pas, mais quand les perfs chutent là y'a pas photo, il faut rester avec une requête SQL complexe et puissante plutôt que n requêtes qui vont mettre des plombes et dont en plus on ne va plus comprendre les tenants et aboutissants tellement l'implémentation est dispersée.

    Par contre je ne parlerais pas d'incompétence. Je préfère quelqu'un de compétent dans son domaine (java par exemple), qui avoue son incompétence dans un autre domaine (SQL par exemple) et s'en remet à toi, ou simplifie son SQL s'il a personne sous le coude, personne n'est à 100% polyvalent, que quelqu'un qui impose une implémentation pauvre du SQL avec des arguments fallacieux, comme semble le faire l'ex-chef de Marco46.
    Tu sais on peut tomber sur des cas assez spéciaux dans les boites d'informatiques. Je me souviens quand j'ai fais mon stage pour l'AFPA, je suis tombé dans une boite ou le patron ne voulait pas de SQL dans ses codes car le SQL c’était une technologie morte (c’était en 1999-2000)
    Modérateur Delphi

    Le guide du bon forumeur :
    __________
    Rayek World : Youtube Facebook

  2. #42
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par Rayek Voir le message
    Tu sais on peut tomber sur des cas assez spéciaux dans les boites d'informatiques. Je me souviens quand j'ai fais mon stage pour l'AFPA, je suis tombé dans une boite ou le patron ne voulait pas de SQL dans ses codes car le SQL c’était une technologie morte (c’était en 1999-2000)
    C'est sûr, le NoSql va sauvé le monde !

  3. #43
    Expert éminent
    Homme Profil pro
    Big Data / Freelance EURL
    Inscrit en
    Mars 2003
    Messages
    2 124
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Big Data / Freelance EURL

    Informations forums :
    Inscription : Mars 2003
    Messages : 2 124
    Points : 7 291
    Points
    7 291
    Par défaut
    Citation Envoyé par el_slapper Voir le message
    mais encore faut-il avoir une requête optimisée, et pas avec 15 jointures.

    après, moi, je parle du monde COBOL qui est fort différent du web, mais entre un SELECT FROM A,B et SELECT FROM A, puis SELECT FROM B, et un rapprochement à la mimine, il n'y a pas photo : le second est plus rapide(pour peu que les index ne soient pas débiles).
    Oui en COBOL, quand il y a des bases de données hiérarchiques donc, mais surtout pas en base de données relationnelles.

    J'ai travaillé il y a pas longtemps (il y a moins d'un an) sur une base AS400 DB2/UDB et là il n'y avait pas photo, les requêtes avec jointures étaient plus rapides que ta solution pour peu qu'il y ait les bons index. En plus c'était pour des batchs.

    Après il y a un moment où il faut quand même faire plusieurs étapes pour qu'il y ait plus de clarté dans le code et moins de volume, on est d'accord.

    En tout cas il faut s'adapter au SGBD sous jacent, et utiliser du SQL hiérarchique, quand la base est faite pour cela, comme dans ton cas, ou du SQL relationnel quand la base est faite pour cela

    Citation Envoyé par Rayek Voir le message
    Tu sais on peut tomber sur des cas assez spéciaux dans les boites d'informatiques. Je me souviens quand j'ai fais mon stage pour l'AFPA, je suis tombé dans une boite ou le patron ne voulait pas de SQL dans ses codes car le SQL c’était une technologie morte (c’était en 1999-2000)


    ha ha le naze. Qu'on le remplace par quelque chose d'autre, pourquoi pas, bien que je trouve que c'est bien d'avoir un langage ensembliste et un moteur dédié base de données qui va avec, mais vouloir l'enlever en laissant du code en curseurs pour un moteur de base de données qui n'est pas fait pour cela, c'est absurde tant qu'il n'y a pas d'alternatives ou de nouveautés à ce sujet. C'est tellement mort que ça survit depuis bien plus longtemps que d'autres langages.

    En fait c'est son argumentation qui est naze plutôt que le choix en lui-même s'il ne connait pas le SQL ce qui serait plus compréhensible.

  4. #44
    Membre émérite
    Homme Profil pro
    Développeur Java/Scala
    Inscrit en
    Octobre 2007
    Messages
    1 086
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Scala

    Informations forums :
    Inscription : Octobre 2007
    Messages : 1 086
    Points : 2 271
    Points
    2 271
    Par défaut
    Citation Envoyé par fredoche Voir le message
    J'ai pas l'expertise qu'ont certains ici, mais il est une chose évidente, c'est que les SGBD sont optimisés pour gérer des données et des ensembles de données.
    En cas d'accès concurrentiel, pour le web qui est mon domaine, il n'y a pas photo, toutes les facilités apportées par un SGBD c'est énormément de temps de gagné sur le traitement d'une demande, et c'est un point essentiel pour la "scalabilité"
    Le gros du boulot d'une appli web aujourd'hui, c'est de piocher dans un SGBD. Si le SGBD peut te présenter le résultat tout fait, le temps gagné est énorme.

    Je ne sais pas quelle était la finalité du projet, mais tu es toi sur les bonnes pratiques, pas ton chef.
    En plus les JVM sont pas des foudres de guerre, boucler sur des grands ensembles, ça doit être drôle.




    Hummm pas vraiment d'accord avec ça moi.

    Dans la plupart des sites web il y a souvent un seul SGDB, quand les frontaux sont souvent plus nombreux et sans état.
    Comment peux-tu dire que confier plus de boulot au single point of failure de ton application est bon pour la scalabilité? Pour moi c'est tout l'inverse...

    Si déléguer un peu de boulot sur les frontaux qui scalent mieux peut permettre a ta base ne baisser en charge je ne vois vraiment pas le problème et ça t'éloigne du point de rupture des perfs de ta base. Bien sur il ne faut pas que les frontaux fassent pour autant plus de requêtes sinon c'est l'effet inverse et les temps de réponse deviennent pourris...

    Enfin bref moi ca me viendrait jamais à l'idée de demander a mon SGBD de formatter une date en string selon un format donné et un timezone donné juste pour dire que je vais pas le faire dans mon code Java...



    Citation Envoyé par fredoche Voir le message
    En plus les JVM sont pas des foudres de guerre, boucler sur des grands ensembles, ça doit être drôle.
    Hahaha laisse moi rire
    Tu as découvert Java dans les années 2000 à l'époque ou c'était le cas je présume?
    Ca a un peu changé depuis quand même...

    Dans les applications de trading haute fréquence on utilise plus que du C++, il y a aussi des datagrids implémentés en Java qui ont d'excellentes performances pour peu que la JVM soit tunnée correctement. Regarde un peu du coté de VMWare GemFire ou Oracle Coherence.
    Les moteurs de recherche fulltext basés sur Lucene comme Solr ou ElasticSearch sont aussi implémentés en Java
    Il y a plein de projets qui sont réputés pour traiter un grand nombre de données, et pas forcement que pour du web, je pense a Hadoop par exemple.


    Sur Wikipedia:
    However, high performance computing applications written in Java have recently won benchmark competitions. In 2008[70] and 2009,[71][72] an Apache Hadoop (an open-source high performance computing project written in Java) based cluster was able to sort a terabyte and petabyte of integers the fastest. The hardware setup of the competing systems was not fixed, however.[73][74]




    Citation Envoyé par fredoche Voir le message
    Je me forme sur mongodb en ce moment, bases dénormalisées, pas d'intégrité référentielle et pas de jointures, elles se font depuis l'appli si on en a besoin. Rien que ça tue l'intérêt de ces outils je trouve.
    Je suis tout à fait d'accord, comme tu veux l'utilise ça n'a pas d'interet. Mais ce genre de bases ne s'utilisent pas comme ça, pas sur un vrai projet industrialisé pour lequel la consistance à une importance en tout cas... c'est la catastrophe assurée et une base rapidement corrompue dont on peut difficilement rattraper les données...

    Ce genre d'outil s'utilise pour dénormaliser des données consistantes ou y stocker des données deja dénormalisées (au même titre que des moteurs de recherche comme ElasticSearch ou Solr d'ailleurs qui sont pas si éloignés de MongoDB que ça).
    Ils peuvent venir en complement d'un SGBD normal pour le soulager en terme de charge (au même titre qu'on utilise des réplicats SQL au final) sur des vues ou l'eventual consistency est acceptable.


    Et pour ceux qui ont besoin de faire 15 jointures pour sortir des vues très fréquentées je leur dis qu'ils feraient mieux de dénormaliser dans une base NoSQL comme MongoDB, voir une autre table SQL.

    Sinon le SGDB n'est pas indispensable avec ces bases dénormalisées pour garantir la consistance, il existe des alternatives comme l'Event Sourcing ou le Command Sourcing.





    Pour moi, faire plus de 3 jointures pour une ihm sur un site web a forte charge, c'est qu'il y a un problème derrière au niveau du stockage des données...
    React-Hebdo - Newsletter pour se tenir à jour sur l'écosystème React

  5. #45
    Expert éminent sénior
    Avatar de Mat.M
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    8 352
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 8 352
    Points : 20 359
    Points
    20 359
    Par défaut
    Salut Marco46 j'ai tout lu avec grand intérêt ; tout ça est très déplorable et inquiétant en même temps

  6. #46
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    150
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 150
    Points : 412
    Points
    412
    Par défaut
    "The hardware setup of the competing systems was not fixed, however"

    Rien à ajouter.

Discussions similaires

  1. [Flex4] Avenir de Flex? Changement de techno?
    Par ProviewJava1 dans le forum Flex
    Réponses: 2
    Dernier message: 30/10/2012, 17h45
  2. Un ERP open source pour la gestion des carrières
    Par tina1983 dans le forum Forum général ERP
    Réponses: 1
    Dernier message: 02/06/2009, 13h22
  3. Projet Application groupware/gestion de projets: quelle(s) techno(s) ?
    Par n1n0x dans le forum Développement Web en Java
    Réponses: 5
    Dernier message: 18/01/2008, 11h46
  4. [Carrière]Changement de boîte
    Par Nicodemus dans le forum Emploi
    Réponses: 17
    Dernier message: 03/01/2008, 11h50
  5. gestion d'erreur/changement message
    Par fscli dans le forum Access
    Réponses: 2
    Dernier message: 22/05/2006, 11h48

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo