Created with Sketch.
22 minutes | 17 days ago
15. Writing ObjectScript in VS Code
In this episode, hear about the InterSystems ObjectScript extension in Visual Studio Code that allows developers to easily connect to their InterSystems IRIS instances and write ObjectScript in a familiar and lightweight environment. Product Manager Raj Singh joins Zack Krowiak to discuss this topic in detail! For more information about Data Points, visit https://datapoints.intersystems.com.
8 minutes | 2 months ago
14. Previewing Virtual Summit Experience Labs
In this episode, you'll hear about the experience labs that are planned for the 2020 Virtual Summit! To get notified about all updates related to Virtual Summit, and to register when it is available, visit https://www.intersystems.com/virtual-summit-2020. The office hours for each lab will be held in two sessions, as outlined below: Building FHIR Applications with InterSystems API Manager – 11/2, 12pm and 10:30pm ET Hands-On with IntegratedML – 11/3, 12pm and 10:30pm ET ObjectScript Development in Visual Studio Code – 11/4, 12pm and 10:30pm ET HealthShare Provider Directory – 11/5, 12pm and 10:30pm ET Getting Started with InterSystems Reports – 11/5, 10:30pm and 11/6, 12pm ET For more information about Data Points, visit https://datapoints.intersystems.com.
20 minutes | 4 months ago
13. What's New in Online Learning?
In this episode, you'll hear a bit about what's going on within the Online Learning team. First, Michelle Spisak tells us about the monthly learning newsletter. You can subscribe to the newsletter here! https://learning.intersystems.com/course/view.php?name=NewsletterSignUp Then, you'll hear from Jaising Pasten about his journey, his experiences since joining the team, and some of the items he's worked on recently. One of them, which he mentions, is a Provider Directory video about navigation and search. HealthShare customers can view it here: https://learning.intersystems.com/course/view.php?name=PDFirstView For more information about Data Points, visit https://datapoints.intersystems.com EPISODE TRANSCRIPT: Derek Robinson 00:00:02 Welcome to Data Points, a podcast by InterSystems Learning Services. Make sure to subscribe to the podcast on your favorite podcast app. Links can be found at datapoints.intersystems.com. I'm Derek Robinson. And on today's episode, we're chatting with Michelle Spisak and Jaising Pasten, two of my colleagues on the Online Learning team, for a look inside Online Learning. Derek Robinson 00:00:43 Welcome to Episode 13 of Data Points by InterSystems Learning Services. Today's episode is the first in what may be a recurring type of episode every once in a while, called What's New in Online Learning? The idea behind an episode like this one is to take a look behind the scenes of the Online Learning team as we build content and work on projects aimed to better equip learners of our technology. In the first half of the episode, I'll talk to Michelle Spisak, an Instructional Designer on the team, about the monthly learning newsletter. Then I'll chat with fellow course developer Jaising Pasten, about what his experiences have been since joining the Online Learning team after spending several years in the InterSystems Chile office, working on TrackCare, learning, and implementation. So without further ado, here's Michelle. Derek Robinson 00:01:26 All right, and welcome to the podcast, Michelle Spisak, Instructional Designer here at InterSystems. Michelle, how's it going? Michelle Spisak: It's good, Derek, how are you doing? Derek Robinson: I'm doing great. We're very happy to have you on for a little bit different of an episode today. We're really focusing within Learning Services and talking about some of the things that we have going on. So obviously you have, you know, a lot of different responsibilities in your role here at InterSystems in the Learning Services team as an Instructional Designer, but we're going to focus today on your role with the Learning Services newsletter. So first question kind of just for the audience that may not be familiar with it and may not know what it is, tell us what the Learning Services newsletter is and why we began offering it in the first place. Michelle Spisak 00:02:02 Yeah, so the newsletter is just basically a way for our clients and partners to stay up to date with what Learning Services is coming out with. So on the Online team, we're always coming out with new videos and learning paths, and other things like that. Documentation has been working really hard to modernize their website and make it even easier for people to find what they really need, really quickly. And so we just want to make sure that people know about everything that they're doing there. And then finally, in the classroom with all the changes that we've had lately with, you know, quarantine and policy changes at a federal and also local level, we want to make sure that people know exactly what our policies are in terms of the classroom offerings that we have, and also classes that are coming up so that they know, you know, new ways that they can learn. And so once a month, what we try to do is put out this newsletter, just letting everybody know, you know, everything we have going on, because like I said, it's a lot. Derek Robinson 00:03:04 Yeah. And I think that serves an important purpose because I think for a lot of developers and end users of our software, they might group together all three of those groups you just said, right? Like Classroom Training, Documentation, Online Learning...a little bit of a look behind the curtain. You know, those are different groups. And so this is an important thing to consolidate information from those sources. So very cool. So the newsletter started about four years ago, and so I know over time that's developed, it's gained some subscribers. We had a few things with like GDPR and you had to change some lists, lots of evolution over the course of time, but what are some of the recent improvements that you've made this year to be able to make it more effective for the recipients of that newsletter? Michelle Spisak 00:03:42 Yeah. Like you said, we've been doing a lot lately in terms of kind of slimming it down, streamlining it. We used to include like pretty substantial descriptions of all the different resources so that people had an exact idea of what we were offering, but we found that that's not really necessary for people to know whether or not they want to check out a resource. So what we try to do is make it as easy as possible for people to find, you know, "Oh, this is a video that I'm definitely gonna want to know about. I really need to know more about, you know, FHIR APIs or whatever." And so we started really streamlining it, first of all, putting, you know, the things that we think will be most popular up front. And then also from time to time, we've kind of brought in another voice, like for example Jim Breen, the director of Learning Services worldwide, has provided an intro, just a little letter, so that he can kind of speak directly to our clients and partners and say like, "Hey, this is, you know, what we're doing. We know everybody's facing a lot of uncertainty right now, but you know, we're trying to keep people informed about Learning Services and always bring new information to everybody about our products and technologies. So that's kind of what we've done so far. In the future, what we'd really like to do is continue to modernize the newsletter, you know, kind of update the look and feel a little bit. So subscribers will definitely start to see a little bit more in terms of fun features, new ways that they can engage with the newsletter. Instead of just, you know, reading it, here's a way that you can interact with it a little bit more. So we're trying a couple different things and it's panned out so far. People seem to really be responding well. So yeah, hopefully that continues. Derek Robinson 00:05:32 Nice. Yeah, that's great. And I mean, I think for anybody who's familiar with the learning.intersystems.com website, there's a ton of content on there, right? Like there's lots of past Global Summit presentations and videos and courses and, you know, we have so much content on there that sometimes it might not be easy to actually identify quickly, like what's new, like what has changed maybe, what some new topic that I might be interested in. So I think newsletter is a great way to distill that for people to understand what they might be missing if they haven't been on the Learning site in a month or something like that, you know. Michelle Spisak: That's exactly it! Derek Robinson 00:06:07 So speaking of that, with this month's newsletter, what are some of the cool things that people might be interested in, some of the other, any ones that particularly jump out at you for content that you included in this one? Michelle Spisak 00:06:15 Yeah, so absolutely. I mentioned you know, that we're trying new features to help people kind of get engaged. One of the things that we tried this month is to, and, we'll continue it in the future, is to provide a spot for people to contribute what we're calling their "quick wins." So little ways that they found, little tips and tricks that they found, that are helpful for using InterSystems products and technologies that they want to share. There's always space for this in the Developer Community, you know, to share your little tips and tricks and stuff, but we would love to start including some of those in the newsletter so that readers can get just, you know, alongside all of the updates about, you know, what we're doing lately, here's also something from your peers who are saying, "This is how I've used InterSystems technology to help me in my job." Derek Robinson Nice! Michelle Spisak 00:07:08 Right. Yeah. So that should be a fun thing that we're starting now. We'd love to get feedback on that, anybody's stories out there. And then also there's lots of videos this month. New videos about new technology that we think is really gonna help people, like InterSystems Reports. There's a couple of videos on Provider Directory. There's actually one use-case video that's really cool that shows an automated receipt processor, which might not be directly relevant to everybody in their position, but it's cool to see how people are using InterSystems technology in their own jobs. And maybe there are ways that it can spur on, you know, new ideas. Derek Robinson 00:07:47 Right. Nice, nice. That's a lot of interesting stuff for people, both, you know, heavy users of our products and also people that maybe are newer and evaluating and just kind of looking at it and exploring it. So I think that's a lot of good content. All right. So last question. How can we subscribe to the newsletter, and also, what can we expect in the future from the newsletter going forward? Michelle Spisak 00:08:05 So, first of all, to subscribe to the newsletter, we'll put a link in the show notes so that people can just very easily just click to subscribe. There's also a little link on learning.intersystems.com. If you go there and just click Learning News on the home page, it's just a really quick and easy way to get there. So we try to make it as easy as possible for people to sign up. And then in terms of things that people can expect to see, I touched on this a little bit, we're going to be updating the look and feel again to just kinda modernize things, make it, you know, even more pleasing to look at every month. And then also we're always looking for feedback. So if there are things that people want to see more of or, you know, new features that they think would be cool, we're happy to provide that. In the past we've done kind of a who's who of Learning Services, let people see, you know, who are actually the people who are creating all of the material that they read. If you want to see something like that or something else that you think would be interesting, we're always looking for feedback, again. So feel free to shoot us a quick email about that. Derek Robinson 00:09:10 Yeah, for sure. All feedback and all suggestions are welcome. Michelle Spisak Yes, absolutely. Derek Robinson So Michelle, thanks so much for joining us, and we'll talk to you soon! Michelle Spisak 00:09:16 Yeah. Thanks Derek. Derek Robinson 00:09:22 Thanks to Michelle for taking the time there. Next we have Jaising. I recap Jaising's journey a bit in the opening question here, but he definitely has an interesting story, and I believe he's actually the first guest we've had on whose first language is not English. So lots of credit to him for being willing to join us. I think he did a great job. Here's my interview with Jaising. Derek Robinson 00:09:45 Alright, so welcome to the podcast Jaising Pasten, Online Course Developer here at InterSystems. Jaising, how's it going? Jaising Pasten Very good! What about you? Derek Robinson: Pretty good, thanks. And we're happy to have you on, your first time doing a podcast here, probably a little blend of nervousness and excitement, I'm guessing. Jaising Pasten Yeah. Both of them. Derek Robinson: For sure. So to give the listeners a little bit of background, Jaising, you joined the team about a year ago, I think, or maybe a little bit less, the Online Learning team here at InterSystems, is that right? Jaising Pasten: In November. Derek Robinson: In November, it'll be one year. So, and you spent the past five years or so in Chile at the InterSystems office in Chile, and you were working on a lot of implementation stuff, being able to create training for the people doing implementations of InterSystems products. And one thing that you started to get into was Learning Services material in a way, but you didn't really have the budget for it in Chile, being kind of a one-man show. So tell us a little bit about what that was like briefly, and then also what it's been like transitioning to the Cambridge office, where you're actually now part of a full Learning Services team with resources and processes at your disposal. Jaising Pasten: Yeah, well actually, I think it's a very huge change. I began with InterSystems, sorry, with Learning Services in Chile, with zero budget, but it's just because I tried to resolve a problem with the training in Chile. Nobody are prepared to do the training in Chile, so I talk with my manager at the moment and we discuss about it and he told me that, "yeah, go ahead," but I don't have money for it. So yeah, I receive an offer for, it takes a lot, maybe a year or more, and that's the way I arrived to Boston. And it was a very huge change because as I told you, I never worked with budget. So here, for example, the things that you have now, podcasts, the license, all are considered are like a basic thing. I didn't have it. Derek Robinson 00:11:56 Right, right. Nice. So, being able to leverage some of the software tools and, and kind of things that we've built into place, that can make the job a whole heck of a lot easier than doing everything yourself from design to production, to reviewing and releasing, right? Jaising Pasten 00:12:09 Yeah. Well, that's another big change for me because all the Learning Service Chile was I (laughs). Derek Robinson Right, right! Jaising Pasten 00:12:20 So now we have a very entire process, a powerful. Someone can review your job. I think it's very good. For example, when we have the ID review or text review. People that maybe don't know the product, that the way that we know, see the video or see the script and, and define if it's understandable. And actually for me, it's even better because you know, English is not my first language. I feel they're safe if someone seeing my job and, and define, because it's not the same, it's not the same when you talk or in your mind you think that the course and someone read that, sometimes different. Derek Robinson 00:13:10 Right. Yeah. That was going to be one of my questions with, you know, you've mentioned before, you've you mentioned even before we started recording to me, you mentioned that English isn't your first language, and that is one of the adjustments you have to make in this move to the U.S. office, the move to a team that is fully really only speaking in English. And so it sounds like you kind of mentioned the text and ID reviews. Those are a couple of things that are, you know, course development lingo for us, but sort of the reviewing of the language and the writing in a video script that you might write, or a course section or an exercise. And it sounds like those are a couple of things that have really helped you as well. Jaising Pasten 00:13:49 Yeah, well, I say that not only for me, I mean, I don't speak English. I mean, I speak English, but it's not my first language. But even for the rest of the team, it's a good idea to have this process when someone can see your job because, it's not just, we're a worldwide company. We need that our job, our work be very good and enough. And if we need to review more than one time, it's fine. I think the process, it's a new experience for me, but all this process was syncing in a way that all the, all the parts work together. I cannot work without the Production team or the people who reviewed our script or, and so on. So I think the most important thing about Learning Service is that we work like a team. Derek Robinson 00:14:57 And so, so it sounds like a lot of those things have been able to help, you know, take what you were doing before and as a one-man operation really, and be able to implement it and kind of continue to work in the way that you really enjoy working, which is designing learning content and really paving a path for a learner to understand a topic, but having a lot more processes and tools and resources and teammates at your disposal. So that's really cool. Jaising Pasten 00:15:23 And, and actually another thing that I think I can help, I have another view because one of the things that most of the people say about the Learning Services, we work just for U.S. And that, I think that has been my value here. I always say that we are a worldwide learning service, so we need to be like a worldwide learning service. So I have been helping people translate some courses, adding closed captions in Spanish. Even I have been like a connector with people in South America with the U.S. because they contact me directly because it's easier. You know, it's not just the way that you talk. People in Latin America know me, so I be a contact for the rest of the Learning team. Actually, I speak both Spanish and Portuguese, so people from Brazil have contacted me to help them. Derek Robinson 00:16:35 Right. Yeah. And you're really kind of one of the only people on the team that has those connections to those areas of the world. So I think it's pretty cool to be able to step into that role. Last question here, just kind of shifting a little bit to maybe some stuff that you've been working on recently, just to give a little bit of light into kind of, you know, we, we have a bunch of course developers in our team and I think I'll, some of them have been on this podcast before and others will be joining us in future episodes to talk about what they work on. As I mentioned, I talked with Michelle before about what she's worked on. So what's a recent project that you've been working on and are kind of really interested in and might be able to share a little sneak peek of, of why it's important and what's been exciting about it? Jaising Pasten 00:17:15 My first course here was the Starting and Stopping the HealthShare. I need to confess that I didn't have experience in HealthShare because in Chile, I used to work with TrackCare. But I have been receiving a lot of help from you, from my manager, and all the team, to learn new features. And well, now I'm working with HealthShare too. And well, I currently working in Provider Directory, making different videos. Actually, I released the Provider Directory Navigation and Search, where I show how to move through the Provider Directory. It's a very, overview video, but it's the first step if you don't know or you aren't familiar with the program. So we are going to have the entire first steps for Provider Directory in, I think in one month. Derek Robinson 00:18:25 Yeah. Great. That's awesome. So, good to see that after doing a lot of TrakCare, you can dive into new technologies and new products and be able to learn from colleagues. And I think it's one thing InterSystems does a great job of is having people within the company be very willing to lend a helping hand and be able to help people get up to speed on a topic when they really need to. So that's great to hear. Jaising Pasten Yeah. Actually, I like to learn new features, or new software. Actually, I am very interested, interesting in learn about machine learning and artificial intelligence. And I think it's a new thing that is going to be the future for InterSystems too. Derek Robinson 00:19:08 Definitely. I agree. So Jaising Pasten, thanks so much for joining us, and we'll talk to you soon. Jaising Pasten Thank you. Derek Robinson 00:19:16 So hopefully you guys enjoyed this episode, a little bit of a look behind the curtain at the Online Learning team and what's going on. Make sure to not only subscribe to the podcast, if you haven't already, but to subscribe to the newsletter Michelle talked about earlier. That'll do it for episode 13. Thanks for listening, and we'll see you next time on Data Points.
18 minutes | 5 months ago
12. Empowering Users Through Chat
In this episode, you'll hear insights from Jenny Ames, Gary Maggiolino, and Joey Moritz about the new chat bot that was implemented on a few different InterSystems sites. Using a chat bot, in conjunction with a human support team, can enable users to find answers to their questions quickly and easily. To see the chat functionality discussed in this podcast, you can check out https://gettingstarted.intersystems.com or browse https://www.intersystems.com, notably the "Try InterSystems IRIS" page linked at the top. For more information about Data Points, visit https://datapoints.intersystems.com.
18 minutes | 6 months ago
11. User Experience at InterSystems (Ksenia Samokhvalova)
In this episode, Ksenia Samokhvalova — UX designer at InterSystems — joins the podcast to talk about the user experience for InterSystems products and how her team strives to improve that experience through smart design. Take a quick survey and sign up to be a user experience tester: https://www.surveymonkey.com/r/NNYWWKT For more information about Data Points, visit https://datapoints.intersystems.com.
19 minutes | 6 months ago
10. All About SAM: System Alerting & Monitoring (Luca Ravazzolo)
In this episode, Luca Ravazzolo — product manager for cloud and container technology — joins the podcast for his second appearance. He's telling us all about SAM (System Alerting & Monitoring), a new component of InterSystems IRIS that users will want to hear about. To try out SAM, visit this GitHub repository: https://github.com/intersystems-community/sam For more information about Data Points, visit https://datapoints.intersystems.com.
21 minutes | 7 months ago
9. Healthcare Interoperability: Part 2 (Russ Leftwich)
This episode features the second part of our interview with senior clinical advisor for interoperability at InterSystems, Russ Leftwich. Check out Episode 8 for the first half! In this portion of the interview, Adam and Russ carry the healthcare interoperability discussion into more specifics about InterSystems technologies and FHIR applications. After the interview, we're also welcoming Jenny Ames back to the podcast to tell us about the upcoming FHIR Dev Days! Check out https://gettingstartedhealth.intersystems.com and https://www.devdays.com/us/event-info/ for more details. For more information about Data Points, visit https://datapoints.intersystems.com
17 minutes | 7 months ago
8. Healthcare Interoperability: Part 1 (Russ Leftwich)
This episode features the first part of our interview with senior clinical advisor for interoperability at InterSystems, Russ Leftwich. In our discussion, Russ tells us about the history of healthcare interoperability, modern breakthroughs in its technology, and some of the biggest challenges that modern systems need to overcome. To check out the new series of InterSystems IRIS Tech Talks mentioned in the introduction, head over to https://www.intersystems.com/intersystems-iris-tech-talks. For more information about Data Points, visit https://datapoints.intersystems.com.
14 minutes | 8 months ago
7. Introducing InterSystems Reports (Carmen Logue)
In this episode, we chat with product manager for analytics and AI, Carmen Logue. Carmen tells us all about the newly released InterSystems Reports, what functionality it provides, how it fits into the existing set of InterSystems products, and more. For more information about Data Points, visit https://datapoints.intersystems.com.
20 minutes | 8 months ago
6. InterSystems Certification (Jamie Kantor)
In this episode, we chat with certification manager Jamie Kantor about the certification program at InterSystems. Jamie explains why certification programs exist in the software industry, how InterSystems has evolved to build its certification exams, and why it matters to developers, partners, and customers of InterSystems. To learn more about getting certified, you can reach out to firstname.lastname@example.org. For more information about Data Points, visit https://datapoints.intersystems.com.
18 minutes | 9 months ago
5. Mirroring Databases for High Availability (Bob Binstock)
In this episode, we chat with technical writer Bob Binstock about mirroring databases in InterSystems products — specifically in InterSystems IRIS. Bob is a technical writer at InterSystems with lots of knowledge about topics like these, and he walks us through the concept of mirroring for high availability. You'll hear about primaries and backups, journal files, failovers, and more. To try out the First Look exercise on data resiliency and mirroring, visit https://docs.intersystems.com/irislatest/csp/docbook/DocBook.UI.Page.cls?KEY=AFL_dataresil. For more information about Data Points, visit https://datapoints.intersystems.com.
16 minutes | 9 months ago
4. Optimizing Your SQL Performance (Benjamin De Boe)
In this episode, we chat with Benjamin De Boe, product manager for data management and analytics, about optimizing the performance of your SQL queries in InterSystems IRIS. Benjamin will go over some of the most common issues that cause performance loss within your queries, the easiest ways to fix them, and some other items to look for in order to ensure your queries are healthy and efficient. For more information about Data Points, visit https://datapoints.intersystems.com. To try InterSystems IRIS today, head over to https://www.intersystems.com/try and launch your instance! You can find our SQL QuickStart at https://learning.intersystems.com/course/view.php?name=SQL%20QS, and if you'd like to discuss these SQL topics on the Developer Community, you can head over to https://community.intersystems.com. TRANSCRIPT: Derek Robinson 00:00:01 Welcome to Data Points, a podcast by InterSystems Learning Services. Make sure to subscribe to the podcast on your favorite podcast app, such as Spotify, Apple Podcasts, Google Play, or Stitcher. You can do this by searching for Data Points and hitting that Subscribe button. My name is Derek Robinson, and on today's episode, I'll chat with Benjamin De Boe, Product Manager for Data Management and Analytics at InterSystems, about SQL performance in InterSystems IRIS. Derek Robinson 00:00:40 Welcome to Episode 4 of Data Points by InterSystems Learning Services. Hopefully you enjoyed the launch of the podcast earlier this month, which featured three episodes. Going forward, we plan to release one to two new episodes each month. So make sure you're subscribed on your favorite podcast app, and that way you won't miss any new episodes. We also have a new homepage for the podcast with an easy-to-remember URL; it's datapoints.intersystems.com. That page has the latest episode, more recent episodes, and the links to go subscribe on the different podcast apps. So go check that out for sure. Today I'm talking with Benjamin De Boe about SQL performance tips in InterSystems IRIS. Benjamin has worked with us and Learning Services quite a bit over the last few years to create engaging content in his areas of expertise. One of my favorite things about working with Benjamin is his ability to clearly convey concepts and really make them easy to understand. I think that comes through in our discussion here with Benjamin De Boe. Derek Robinson 00:01:35 All right, and welcome to the podcast Benjamin De Boe, Product Manager for Data Management and Analytics here at InterSystems. Benjamin, how's it going? Benjamin De Boe I'm doing great. Thanks, Derek. How are you? Derek Robinson I'm doing great. Thanks. So today we're going to talk about SQL performance InterSystems IRIS. A lot of SQL developers out there might use different data models for their applications that use InterSystems IRIS, of course, we've mentioned in other episodes, we have multi-model database that you can kind of choose which approach based on your use case. But here we're going to talk about relational SQL, and where do we really begin? So I think what we're looking to you for here, some of the common practices and best, you know, tips for enhancing your performance and things like that. So what's kind of your overview level explanation of the SQL performance in IRIS, and where you'd start with it? Benjamin De Boe 00:02:23 Okay. So there's a whole lot of things to talk about of course, when we talk about SQL performance, and much of that is already, these , and various separate articles. And there's also a great book in our documentation that's focused on SQL optimization, but let's take more of a problem-solving look at what's happening here. So imagine you have users that are complaining that the system is slow, or users that complain about this particular piece of the system is slow. Of course, the second ones are more easy to help, but the first category also exists. Derek Robinson 00:03:00 Right. And so let's say that maybe I have a little bit more information to provide rather than everything is slow, including, you know, my computer starting, right? I think, if let's say I know that there's certain queries are slow, or I know that in general, this part of my application is slow, where can I go look to find the information I need to get that information? Benjamin De Boe 00:03:19 So one great entry point into this whole conversation is the lightweight queries statistics. So that's a bunch of metrics that are always on. So for every SQL statement that you issue, we collect a little bit of metrics that hardly cause any processing overhead, and that information is kept in the statement index. So that means that you can create, and you can see how often every query is called, and also how long it takes on average and what the standard deviation is in the execution time. So that already gives you a great help for those users that come to you and say, the whole application is slow. You can already use that information or the information from lightweight query stats to identify the ones that might be the likely cause. So there's two categories there, there's the queries that are just slow, that have a very long execution time, but some of those queries might be inherently slow. So if it's the big fat accounting query that needs to run once a year, that kind of gathers the whole detail from the whole year and touches the entire database, okay. That query may take half an hour to complete, but if it's only executed once a year, that's not too bad, but if it's something that gets executed thousands of times a day, and that can be brought from one and a half seconds to half a second, that's a much better investment of your tuning time. Derek Robinson 00:04:41 Right. So, yeah, it really depends on your situation and where it's smartest to put your attention toward as far as the different queries you're running and kind of the uses that you have for those. Benjamin De Boe 00:04:51 Exactly. That's where the lightweight course statistics can help. Derek Robinson 00:04:55 So, for me being someone who's not necessarily an expert in this, I see the term lightweight statistics, and I think there's probably a bunch more beyond that, right? I don't want to make it sound burdensome, but what else? Let's say I want to take a deeper dive than what I see in those lightweight statistics. What's kind of the next step that I would take as someone interested in that? Benjamin De Boe 00:05:13 OK. So we don't call them heavyweight statistics, but there are other additional statistics that we can collect, but they're more for very involved analysis of one particular query or set of queries, that typically is better to involve InterSystems support for. But then there's a whole lot of stuff that you can do all by yourself, a sort of little bit of investigation and experimentation on how to improve your query's performance. Derek Robinson 00:05:37 Right. So as far as some of those pieces of investigation, maybe I see one query that I want to, it's really bugging me, and the performance isn't great. What more can I look at to see as far as, not just the speed, but overall the health and the behavior of that query? Like what can I really dive into to kind of see, you know, fine tuning that performance and really optimizing it as best can? Benjamin De Boe 00:05:58 The first step is obviously check out what it's actually doing. So checking what the query plan is like. So what the query optimizer comes up with as the sort of execution strategy for giving you the answer for the question you asked through SQL. So that query plan is sort of a step-by-step thing that describes the actual code that gets executed for satisfying your query and might have steps, such as look at this particular index with the user-supplied value; use the IDs you retrieve from that index to look into the master map, which has the main table data; return those rows; join to another table. So that's what a query plan looks like. And you can get those, you can read those through the system Management Portal. You can read those using the explain command and on the SQL prompt, or through an ObjectScript API, if you wish. Derek Robinson 00:06:51 Right. So, let's say I take all those steps, and now it's basically given me the optimization that we should apply and that this query should receive, how much should I trust it? But like, is that always correct? Is it pretty much magic, or what things should you maybe watch out for, or are there any pitfalls that you might run into? Benjamin De Boe 00:07:10 It's very close to magic, but it's still software. So essentially what it does is, and there's decades worth of engineering that went into it, it's looking at the question you asked, the SQL query that you presented, and looking at the schema, so your tables and that contained the data to satisfy that query. And then it's going to come up with a couple of different plans. It's going to make an estimation of the cost of each of those plans, and then eventually elect the one that supposedly has the lowest cost. But obviously that cost formula is based on the information that you're giving it. So that information that you're giving it is not just the schema information, but also the statistics of what data actually is in your schema. So we call that the table statistics. So table statistics are, for example, how many rows are actually in my table? What's the average length of a row to be able to estimate the cost of retrieving a row from this, of course? How selective are individual fields of every table? So if I do a filter on this field or on this field, which one is going to filter the set of rows to retrieve from disk, more efficiently? So those are extremely valuable pieces of information that go into the query optimizer and help it do its magic. Derek Robinson 00:08:28 Right. So from a layman's point of view, it kind of feels like that's basically metadata about your table that helps the optimizer know…not the data, I don't care about what's in the table, but what are the characteristics of the table, to know how to try to optimize those queries? Is that right? Benjamin De Boe 00:08:46 Exactly, exactly. And that's also why, of course, those need to be up to date. Those need to be in line with the data that's actually in there. So, when you initialize a table, it starts off empty, and we'll take some default values to go by with, but then if it turns out that your query plans are not according to what you thought they would be, it might be that it's just basing the query plan on outdated information about those table statistics. So the single most important thing that many of our support calls start with and sometimes also end with, is just gathering those table statistics again, and making sure that the query optimizer has the best information to make the best decisions and do its magic. Derek Robinson 00:09:28 Right. So, given that last thing you just said, obviously sometimes an important thing that could be very easy and save time with support, that you don't really have to be spending…how do I gather these statistics easily and quickly? Benjamin De Boe 00:09:39 So again, through the Management Portal, there's a menu option through which you can gather those statistics. There's a method on the system SQL utility, that's an ObjectSript API, but the easiest way to do it is just to use the SQL commands that does, of course, need to read the actual data in there in order to figure out what is the most selective, what's the selectivity of the fields, how many rows are in there, and that takes some effort. So you can sample that so that it only looks at a subset of the data. You can schedule that, so that it runs off peak, but that's sort of easy to schedule. And, it could be something that you run once a week, or maybe once after a certain ramp-up period. Those table statistics are typically fairly stable, and you would not have to run it that regularly, maybe once a week or once a month, would be enough again. Derek Robinson 00:10:37 Interesting. So basically, as far as that part of it, just gather those statistics to update that information for the optimizer be able to use, and then I'm pretty much done at that point, as far what my obligation is to it. Benjamin De Boe 00:10:49 As far as obligations go, those are all very simple things that you can do that don't take any additional knowledge or specialty or consideration. Those are almost no-brainers. Once you have that information, with the right table statistics, queries are still going slow, even though it supposedly takes the best possible access path, that it might be worth considering looking at additional indices, but only then. So there's no point in adding indices after you've seen the particular workload, or before you've considered a particular workload and before you've made sure that it's looking at up-to-date table statistics. And then there's the whole art of identifying the right index. And maybe art is a little bit of an overstatement, but there's several different types of indices that each have their advantages, and cases where they're best fit for. But in general, if you have a field with a low cardinality, so few different values, use a bitmap index. If it's a field with more distinct values, for example, date fields, use a regular index, and that's a really good start, and that can get you going quite quickly. Derek Robinson 00:12:01 Nice. Yeah, I think that's, obviously a lot more you can do to stay on top of it and make sure that you're continuing to get good performance. So as far as additional improvements to the platform, right, going forward, if I'm a developer who does this all the time, and I'm really looking at my queries a lot, what can I be excited about in the coming months, years, versions of InterSystems IRIS, that's kind of in the plans for what could make this even better and even easier for developers going forward? Benjamin De Boe 00:12:26 So very shortly, we'll be releasing our SAM product: System Alerting and Monitoring, which is sort of a standalone thing that kind of watches carefully over your InterSystems deployment. And that will also contain a nice interface on top of those lightweight core statistics that allows you to quickly drill into individual queries, look at those query plans where we're going to add a little more metadata to those query plans so that they get more readable and actionable. So for example, include in the query plan itself, how recent the table statistics were that it based its decision on. So that will help you identify if that is something that needs action. Also include which indices it used and which ones it didn't use. So that may all be valuable input to those optimization decisions. And then, finally, we're also going to work on some more automation for automatically gathering those table statistics and keeping those up to date without causing some unforeseen overhead on your system. And eventually also provide some automated recommendations on which indices might be good additions based on table statistics, and statistics. Derek Robinson 00:13:37 Nice. So a lot of good features coming up, it sounds like. And, you know, if people are in the interim before those make it even easier, and they're kind of just going through all your queries and assessing your performance, short of calling support, which we're always fine with everybody calling support, because our support team is great here, but what steps could you take on your own to engage with the community, or what you can find online and things like that? Benjamin De Boe 00:14:00 The Online Learning website is definitely a great resource to find information, but then also the Developer Community has a lot of interesting articles already on this subject. And of course you're always free to ask your questions right there. And if all else fails, just call in the cavalry. Our support team is ready for your call! Derek Robinson 00:14:18 Very true. They are ready. But I have seen, on the Developer Community, a lot of good conversations on various topics, and sometimes even the InterSystems people helping with the problem learn something on their own, based on their discussion with users of our technology. Benjamin De Boe 00:14:31 Exactly. It's really a very diverse community. Is also has, our developers are looking at it. Our support folks are looking at it, our customers, our partners. So you really have people representing all different perspectives at problems…and solutions. Derek Robinson 00:14:48 Yeah, absolutely. And that's the important part. So, Benjamin De Boe, thank you so much for joining us, and we'll see you next time. Benjamin De Boe You're welcome. Thanks, Derek. Derek Robinson 00:14:59 So a big thank you to Benjamin for breaking down the tips and techniques for optimizing your SQL performance in queries within InterSystems IRIS. I thought that was really helpful. Like he mentioned, there's a lot of interesting discussion about SQL topics on the Developer Community. And we also have an SQL QuickStart exercise on our Learning site. If you're just getting started with SQL in InterSystems IRIS, or you want to try something hands-on, that link will be in the description of this podcast episode. So that's a wrap for Episode 4, and remember to rate and subscribe on the Data Points podcast listing on whatever app you use. On Episode 5, we'll be covering Mirroring in InterSystems IRIS. See you then!
13 minutes | 10 months ago
3. IntegratedML in InterSystems IRIS (Thomas Dyar)
In this episode, we chat with Thomas Dyar, product manager for machine learning and AI, about IntegratedML in InterSystems IRIS – the feature coming this spring that will enable SQL developers building applications to leverage machine learning directly within the SQL environment of InterSystems IRIS. In our discussion, Thomas tells us how he first got interested in machine learning, some of the most important uses of machine learning in the world today, and how InterSystems IRIS is taking the next step to unlock these capabilities for all developers. To reach out to Thomas Dyar about IntegratedML, you can send him an email at email@example.com. For more information about Data Points, visit https://datapoints.intersystems.com. To try InterSystems IRIS today, head over to https://www.intersystems.com/try and launch your instance!
15 minutes | 10 months ago
2. What is Kubernetes? (Luca Ravazzolo)
In this episode, we chat with Luca Ravazzolo, product manager for cloud and containers, about Kubernetes - the most popular container orchestration platform today. Kubernetes (K8s) provides a rich set of features for deploying, managing, and maintaining your containers deployed across clusters of machines. Luca also talks a bit about the InterSystems Kubernetes Operator and the future role of Kubernetes within InterSystems products. For more information about Data Points, visit https://datapoints.intersystems.com. To try InterSystems IRIS today, head over to https://www.intersystems.com/try and launch your instance! TRANSCRIPT: Derek Robinson 00:01 Welcome to Data Points, a podcast by InterSystems Learning Services. Make sure to subscribe to the podcast on your favorite podcast app such as Spotify, Apple Podcasts, Google Play, or Stitcher. You can do this by searching for Data Points and hitting that Subscribe button. My name is Derek Robinson, and on today's episode, I'll chat with Luca Ravazzolo, Product Manager for cloud and containers at InterSystems, about Kubernetes. Derek Robinson 00:39 Welcome to Episode Two of Data Points by InterSystems Learning Services. My name is Derek Robinson. As you may have heard in Episode One, we're excited about the launch of this podcast, and we've already released three episodes for you to check out. In this episode, I'll be talking Kubernetes with Luca Ravazzolo. Luca is a Product Manager here at InterSystems, focused on the area of cloud and containers. He brings a ton of experience to the table. He celebrated 30 years at InterSystems this past fall. What you're going to hear about Derek Robinson 00:01 Welcome to Data Points, a podcast by InterSystems Learning Services. Make sure to subscribe to the podcast on your favorite podcast app such as Spotify, Apple Podcasts, Google Play, or Stitcher. You can do this by searching for Data Points and hitting that Subscribe button. My name is Derek Robinson, and on today's episode, I'll chat with Luca Ravazzolo, Product Manager for cloud and containers at InterSystems, about Kubernetes. Derek Robinson 00:39 Welcome to Episode Two of Data Points by InterSystems Learning Services. My name is Derek Robinson. As you may have heard in Episode One, we're excited about the launch of this podcast, and we've already released three episodes for you to check out. In this episode, I'll be talking Kubernetes with Luca Ravazzolo. Luca is a Product Manager here at InterSystems, focused on the area of cloud and containers. He brings a ton of experience to the table. He celebrated 30 years at InterSystems this past fall. What you're going to hear about Kubernetes really builds off of the concept of using Docker containers. I'm sure we'll have episodes covering Docker concepts in the future, but for now, definitely browse our learning catalog for starter information about containers, if you're interested in them. Kubernetes is one of these newer technologies that really allows you to take your container approach to the next level. Rather than diving into those details, I'll leave the real explanation to the expert. So here's my interview with Luca. Derek Robinson 01:38 Alrighty. So welcome to the podcast Luca Ravazzolo, Product Manager for cloud and containers here at InterSystems. Luca, how are you doing? Luca Ravazzolo I'm doing very well, Derek. How are you doing? Derek Robinson. Good. So we're happy to have you on the podcast here today and we're going to be talking about a pretty cool, a fairly new cloud topic today, which is Kubernetes. So, I know that you've done some stuff on this at our Global Summit, at InterSystems here, and there's a lot of cool stuff to talk about. So why don't we start with, for the new person, for someone who might not understand what this technology is, what is Kubernetes, in brief? Luca Ravazzolo 02:06 Well, Kubernetes is a platform, first of all. What does that mean? It means that it is a full suite of software if you like, that holds, that can hold up your application. What does that mean in a little bit more details? Well, it allows you to define how your application is going to run and consider that, even cloud service providers, like, AWS, Amazon, Google, and Microsoft Azure, they all have an implementation or support Kubernetes. But why is that interesting? Well, because of two factors, I think. One is that Kubernetes was born to make sure that your application runs all the time. That's its job. It keeps monitoring that all the workloads that you put up there are actually running all the time. And if anything dies, it picks it up again. So it looks at your definition says, That's what you want me to run. You want me to run your 32 instances of this app, and if 31 are running now, it's going to pick that 32nd and make sure that it does run. And the second part of why Kubernetes is interesting is because it allows you to define all the pieces of an application. If, so, let me just say, if you have like the front-end pages of an application, that's interesting, but that's only a part of it. You need some business logic behind it, right? And if you are a developer, the business logic, that's only part of it. You need somewhere to store information, for example, of the purchases that somebody is doing, right? So you need a database on the back end. And then, if it's Black Friday, what do you do? Well, you need to make sure that you sustain the new and biggest and largest workload that you have. And so you need to dynamically create more web servers, et cetera. What Kubernetes can do is all that; not only that, it allows you to actually define all of those pieces, all those components, and even load balancers and web servers and DNS engines inside the platform itself. And so it really allows you to define the application, how the application has to run, and that's very powerful; we do not have anything like that in the market right now. Derek Robinson 04:22 Yeah, that's really cool. So I think — and we won't cover this in this episode — but one of the precursors to this technology is really understanding containers and Docker containers and kind of having that deployment, right? And so, me personally, I've worked with Docker containers a lot, but really only in my local environment. So it sounds like one of the biggest appeals of Kubernetes can be this really enterprise-level deployment of containers. And really when you're looking to do more, like you said, if you have, you know, 30 instances of something or a bunch of load balancers, and really mapping out the whole configuration of your application environment that uses containers, is really the biggest advantage of Kubernetes, it sounds like. Luca Ravazzolo 04:59 Absolutely. And you really hit the nail there, right? So we've all worked with containers. They're great for developers to just, you know, get the code, configure up all the dependencies of your work, of your libraries that you need, run it on your laptop, and that's great. But what happens when you actually start defining an application, you know, as you said, which need a lot more pieces around it? Well, there's a nice little tool that Docker built, which is called a Docker compose. So you can work with multiple containers, but you're still confined and able to run those containers within one single machine, right? Your laptop typically, or maybe a high-end server, if you want to test some performance issues. But what happens when you go to the cloud, when you go to a data center where you have, you know, many nodes, many VMs, many and, and you need to scatter your workload across many of them so you can take advantage of all the and all the memory that are available. Well then you need to start installing, you know, things like network overlay layers and then, how do you know if those containers are running properly or not, et cetera. And that's what Kubernetes does for you. So you prepare those nodes, it creates this overlay network for you. It handles all, literally everything that is done in terms of networking and DNS naming and all those complicated parts. And that's why it's very powerful. One other strong characteristic, let me add, just came to my mind, is that as you define your application within the Kubernetes platform, that platform and that definition is totally portable. So if you're working in AWS today and you go this YAML definition, I know you're looking at me strange, you know? YAML, we all love to hate that. But you know, it works, right? For now. So that same definition, you can bring it on site, on prem, maybe with some bare metal because you want, you know, more performance. And that same definition will run there too with the Kubernetes platform orchestrating everything. And that's very, very powerful. So an organization gets portability, they're not locked into any cloud and they get a platform that manages their workload. That's very powerful. Derek Robinson 07:13 Right. Scaling up some of those benefits of containers like portability and efficiency that you can really do for a whole orchestrated environment there. So kind of taking everything you just sort of said now and moving into maybe a little, an example or two, what are some of the, as you've talked with either customers of InterSystems systems or just other people that you've seen at conferences or just in your networks, what are some of the coolest, or maybe one or two cool use cases that you've seen where Kubernetes has really helped to take someone's environment or application environment to the next level and really leverage all these things that you're talking about? Luca Ravazzolo 07:46 Yeah, I've got a couple of examples that really spoke to me. One is, a couple of developers started to work with it, and they said, this is great, you know, but I'm a full-stack developer, and typically I want to test it on a medium size type of an environment out there, you know six, 12 nodes. So the easiest thing is just to go on the cloud. So, they provision the infrastructure and they say, well, everything is in containers now, so how do I do that? Well, the easiest thing was for them to just run Kubernetes in the specific cloud. So GKE for example, for Google, or EKS in AWS. And then all of a sudden, they have the possibility to just really run the application, all the components, even components that they did not develop themselves. They were just pulling containers, you know, let's say, back end, the new version of the database with the new schema that the organization has just developed. And he has just developed, for example, some new business logic, and he was just putting everything together on several high-end machines. He was really testing it through properly instead of just running either everything on his laptop or trying to configure everything himself manually, just one single manual YAML definition with everything configured. And it was up and running in a few minutes. So that was the single developer, they really wanted to monitor and follow through the workload, the data coming through where it was going, et cetera. And the other one was other customers that are very close to go to production in Kubernetes, and they were just shocked that sometimes, they left the Kubernetes servers up and running, and then in the morning they come up and, you know, the system had fallen over, but they didn't know if they didn't go and have a look at the logs – it had s. You know, one of the two instances had died, but the application was up and running. And they were just shocked themselves, you know, no pager, that you know whatever you wanted up and running is up and running all the time. And that's part of its job. You know, this controller that keeps checking that everything else is consistent as your definition, which is pretty cool. Derek Robinson 09:57 Yeah. Cool. And I want to transition to a couple last points about how it relates to InterSystems IRIS. But one thing before we move on, I just want to emphasize too that something you said at the end there, which is kind of that self-healing nature of Kubernetes is…I think you can't emphasize that enough as far as one of the advantages where in that use case, you come in and you didn't even realize something went wrong because it really has this ability to fix itself with some of those failovers and, and bring up a new node in place of it. So I think it's a good thing to emphasize there. Luca Ravazzolo 10:25 Yeah, absolutely. The self-healing part is very powerful. And the other one of course is that you can auto scale workload automatically so you can set thresholds and say, "Hey, Kubernetes, if these two particular nodes go above, you know, 90% CPU for example, you really need to do something for me. So spin up another couple of these nodes that…and it can do that for you. So you can set these rules as a part of your application so that when Black Friday comes, you just prepare, but you don't have to panic. Derek Robinson 10:55 Exactly. Cool. So that's really exciting. Moving to kind of the last portion, which is, shifting into our InterSystems IRIS users that are listening, right? So whether that's InterSystems IRIS, or even other InterSystems products that are older than IRIS and people might move to it. What should people know about the ability and what IRIS is doing to work with Kubernetes? Luca Ravazzolo 11:16 As you said earlier on, you know, it really is an orchestrator for containers. So by the mere fact that we have IRIS in a container, where we can run within a Kubernetes cluster or orchestrate a platform. But there's more to that because things can be complicated to define. Just because I've got this little YAML template, but I might want to put some rules. For example, I want to put some rules, some affinity rule that I want to run my IRIS instance because it's very important to me as a back end database on that particular node that has 32 cores. So you can put all this type of rules, but then when you get into the specific semantics of InterSystems IRIS like, I want, for example, a mirror pair. Well, Kubernetes doesn't know anything about our mirror pair or our ECP communication. And so what we've done is, we built an InterSystems Kubernetes operator that allows you to define all these particular semantics that we have with our product. You just define in the InterSystems Kubernetes operator these particular that you want to run, and it just goes and configures everything for you. And that's very powerful. Derek Robinson 12:23 That's great. So lots of stuff coming. Last question here. Just kind of taking a step back in general, as you look forward, you know, with the possibilities with Kubernetes, what excites you the most about maybe what's untapped potential, or really how you see this going forward into the future? Luca Ravazzolo 12:39 Well, I think we're just at the beginning of it, right? If you look at the GitHub repo, since 2015 when…or was it 2014? Well, anyway, a few years back when Google released it, the Kubernetes ecosystem, you know, even get GitHub, you know, a site where more than 300,000 people working on that, it's really exciting. And they're divided even into special interest groups. So if you're interested, people should go there and participate and give opinion for storage, security, all kinds of stuff. I mean we're really talking really high level here, but it really is a full platform. And so I think what we're going to see in the future is a lot more Kubernetes managers, just like some of the work that, AWS and Google and Azure have done and, and a lot more automation, a lot more monitoring and a full ecosystem that allows you to really run even in a more automated way than it is now. So I think we're just the beginning and the portability that offers is just fantastic. So none of us are locked into any specific solution. Derek Robinson 13:50 Yeah. Very exciting stuff. So Luca Ravazzolo, thank you so much for joining us. Luca Ravazzolo 13:54 Thank you, Derek. It has been a pleasure. Yeah, see you soon! Derek Robinson 14:01 Thanks again to Luca for sitting down with us and giving us some really interesting stuff there on Kubernetes. One little side note that might be helpful for those of you looking up content on Kubernetes. This is something that tripped me up a little bit when I was first researching it, is it's often stylized or abbreviated as K8S in written form. As far as I could tell, that's pretty simply swapping in an 8 for the eight letters in the middle of the word Kubernetes between the K and the S. Works for me, but if anyone knows more reasoning behind that, leave some comments for us in the Developer Community to enlighten us on that abbreviation. So hopefully you enjoyed episode two in our conversation with Luca. Remember, make sure to find us on your favorite podcast app and subscribe so that you never miss an episode when it's released. Thanks for listening, and we'll see you next time on Data Points.
17 minutes | 10 months ago
1. What is InterSystems IRIS? (Jenny Ames)
Welcome to Data Points! In this episode, we chat with Jenny Ames, team lead of online learning content, about InterSystems IRIS – the flexible, scalable, and interoperable data platform that powers many of the world's most important applications. From its multi-model nature to its integration engine to its healthcare features, there's a lot to unpack in one conversation! For more information about Data Points, visit https://datapoints.intersystems.com. To try InterSystems IRIS today, head over to https://www.intersystems.com/try and launch your instance! You can also check out more materials at https://gettingstarted.intersystems.com.
1 minutes | a year ago
Data Points is Coming Soon!
InterSystems Learning Services is launching a brand new learning podcast in February! Data Points will be a learning-oriented podcast that features conversations with experts about InterSystems products and the tech industry today. Find us on your favorite podcast app, hit that subscribe button, and get ready for our first episode!
Terms of Service
© Stitcher 2020