2 Replies Latest reply on Aug 14, 2013 7:39 AM by Toby Erkson

    One BILLION rows from Tableau Server and counting!

    Toby Erkson

      Friday, before I left for home, I ran a Custom SQL against our Tableau Server as I'm trying to figue out how to get permissions for paricular workbooks, Groups, Projects, etc.  I figured the run would finish in a hour at the very most.  When I came in this morning I was amazed to see this:

      IMAG0890.jpg

      And it was still growing!  Needless to say, I canceled the import.  For the curious, here's the important part of the code:

       

      FROM "public"."_workbooks" "_workbooks"
        INNER JOIN "public"."_views" "_views" ON ("_workbooks"."id" = "_views"."workbook_id")
        INNER JOIN "public"."next_gen_permissions" "next_gen_permissions" ON ("_workbooks"."id" = "next_gen_permissions"."authorizable_id")
        INNER JOIN "public"."capability_roles" "capability_roles" ON ("next_gen_permissions"."capability_id" = "capability_roles"."capability_id")
        INNER JOIN "public"."capabilities" "capabilities" ON ("capability_roles"."capability_id" = "capabilities"."id")
        INNER JOIN "public"."groups" "groups" ON ("next_gen_permissions"."grantee_id" = "groups"."id")
        INNER JOIN "public"."group_users" "group_users" ON ("groups"."id" = "group_users"."group_id")
        INNER JOIN "public"."_users" "_users" ON ("group_users"."user_id" = "_users"."id")
        INNER JOIN "public"."roles" "roles" ON ("capability_roles"."role_id" = "roles"."id")
        INNER JOIN "public"."next_gen_permissions" "next_gen_permissions1" ON (("groups"."id" = "next_gen_permissions1"."grantee_id") OR ("_users"."id" = "next_gen_permissions1"."grantee_id"))
      

       

      Just figured y'all would get a kick outta this

        • 1. Re: One BILLION rows from Tableau Server and counting!
          Dustin Smith

          Not sure whether to laugh or cry.

           

          Paging Russell Christopher - Need a Monday morning chuckle?

          • 2. Re: One BILLION rows from Tableau Server and counting!
            Toby Erkson

            Hmm, all of the SQL isn't displaying (for me, IE8).  Here it is unformatted:

            ...

            FROM "public"."_workbooks" "_workbooks"
              INNER JOIN "public"."_views" "_views" ON ("_workbooks"."id" = "_views"."workbook_id")
              INNER JOIN "public"."next_gen_permissions" "next_gen_permissions" ON ("_workbooks"."id" = "next_gen_permissions"."authorizable_id")
              INNER JOIN "public"."capability_roles" "capability_roles" ON ("next_gen_permissions"."capability_id" = "capability_roles"."capability_id")
              INNER JOIN "public"."capabilities" "capabilities" ON ("capability_roles"."capability_id" = "capabilities"."id")
              INNER JOIN "public"."groups" "groups" ON ("next_gen_permissions"."grantee_id" = "groups"."id")
              INNER JOIN "public"."group_users" "group_users" ON ("groups"."id" = "group_users"."group_id")
              INNER JOIN "public"."_users" "_users" ON ("group_users"."user_id" = "_users"."id")
              INNER JOIN "public"."roles" "roles" ON ("capability_roles"."role_id" = "roles"."id")
              INNER JOIN "public"."next_gen_permissions" "next_gen_permissions1" ON (("groups"."id" = "next_gen_permissions1"."grantee_id") OR ("_users"."id" = "next_gen_permissions1"."grantee_id"))

            I thought it was neat.  [Disclaimer:  Of course, what I'm peering into is unsupported.]  Just don't try this at home...or work...unless you just don't like the person then tell 'em to wait for it to finish before they continue to do any more work